Database Architecture Flashcards

1
Q

What is a database?

A

A database is an organised collection of related data.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is a Database Management System (DBMS)?

A

A DBMS is a piece of software that allows the user to create, define, maintain and control access to the database. It also acts as an interface for the user to query the database.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is a database application?

A

A database application is a program that interacts with the database at least at some point in its execution.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is a database system?

A

A database system is a collection of programs that interact with the same database.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Where might databases be used?

A

Everywhere - they are used in university systems to store candidate information, supermarkets to handle transactions, online applications, the list goes on.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What might we call a system where each program defines and manages its own data?

A

A file-based system

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What might we call a shared collection of logically related data and its description?

A

A database system

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

When might we prefer using a database approach?

A

When the data that needs to be stored is large, logically connected and frequently changed.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What issues may using a file-based system for a large, mutating database cause?

A

Data duplication, where data is duplicated across different files.

Data dependence, where we need to manually make changes everywhere whenever data is updated.

Incompatibility of file formats, where different users may prefer different file formats, which may be difficult to work with and may require an entirely new app.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is meant by the “proliferation of apps”?

A

Due to reasons such as data dependence or incompatibility of file formats, more methods or applications will need to be created to query the files, creating a proliferation of the files needed for functionality.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What is meant by “incompatibility of file formats” in regards to a file-based approach?

A

This is an issue where different users may prefer different file formats, leading to new apps needing to be created or adopted just to parse the data properly.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is meant by “data dependence” in regards to a file-based approach?

A

This means that whenever data is changed in one file, we need to change all related data in another file, which may also suffer from format incompatibility.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is meant by “data duplication” in regards to a file-based approach?

A

This means that related data across separate files will end up being duplicated and therefore wasting space.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

How does the database approach solve the issues of a file-based approach?

A

A single, shared database satisfying the requirements of all end users is created. Access to this is made via a DBMS, and we use a single scripting language called SQL to query the database for data.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is the three-layer architecture of a Database Management System?

A

The three-layer architecture is a well-established software application architecture that organises applications into three layers - an external (UI) view, a conceptual (high-level data) view, and the internal (physical storage of data) view.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is the “external” layer of the three-layer architecture?

A

The external layer is the layer which most end users perceive and interact with. It involves user-defined views, queries and access permissions, abstracting the data complexity.

17
Q

What is the “conceptual” layer of the three-layer architecture?

A

The conceptual layer is a high-level, abstract representation of the entire database, regardless of how users interact with it. It defines the logical structure and relationships of the data.

18
Q

What is the “internal” layer of the three-layer architecture?

A

The internal layer is the representation of how data is stored physically in the DBMS. It deals with low-level aspects such as file organisation, indexing methods and storage mechanisms.

19
Q

What is known as a “schema” in the database?

A

The schema is the description of the structure of the database.

e.g. Employee(name, address, employee_id, department_id)

20
Q

What are the two objectives of the three-layer architecture?

A

Data abstraction, to hide storage details and present the users with a conceptual view of the database.

Data independence, where the upper levels are unchanged by edits to the lower level.

21
Q
A