1. Introduction Flashcards

1
Q

What is a database?

A
  • A collection of inter-related data
  • A logically coherent collection of data with some inherent meaning
  • A representation of some aspect of the real world
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is a database management system?

A
  • A database

* A set of programs to access, manipulate and present the data

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

What is the goal of a database management system?

A
  • A means to store and retrieve data

* In a convenient and efficient way

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

What are database applications?

A

A computer program whose primary purpose is entering and retrieving information from a database

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

Before database management systems, how were database applications accessed and manipulated?

A
  • Built on top of file systems
  • Data was stored in files
  • Custom programs were written to access/update data in files
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What are the disadvantages of using a file system for database applications? (7)

A
  • Data redundancy and inconsistency, duplication of information in different files
  • Difficulty in accessing data, new programs would need to be written to carry out new tasks
  • Data isolation, multiple files and formats
  • Integrity problems, hard to add new constraints or change existing ones
  • Atomicity of updates, failures may leave database in an inconsistent state
  • Concurrent access by multiple users, where uncontrolled concurrent access can lead to inconsistencies
  • Security problems, hard to provide user access to some but not all data
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What are the advantages of using a database management system for database applications? (4)

A
  • Efficient, for large amounts of data
  • Convenient, being able to abstract data
  • Flexible, being able to customise access and constraints
  • Safe, prevent unauthorised access
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What are the levels of database abstraction? (3)

A
  • Physical level, describes how a record is stored
  • Logical level, describes data and relationships between data stored in the database
  • View level, provides selected aspects of data conveniently and can hide details
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is a schema?

A
  • The overall design of the database (data type)
  • Physical schema, database design at the physical level
  • Logical schema, database design at the logical level
  • Changes are infrequent
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is an instance?

A
  • Content of the database at a particular point in time (data value)
  • Changes may be frequent
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What is meant by ‘physical data independence’?

A

Ability to change the physical schema (how the data is stored) without affecting the logical schema

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

Why might you need ‘physical data independence’? (2)

A
  • Internal schema may change to improve performance

* Application programs depend on logical schema

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

What is meant by ‘logical data independence’?

A

Ability to change the logical schema (what data is stored and how they relate) without having to modify the application programs which make use of them

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

Why might you need ‘logical data independence’?

A

• So you can add/delete entities or relationships

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

What is DDL?

A
  • Data Definition Language
  • Language for defining database schema
  • Compiled schemas are stored in Data Dictionary which contains meta-data
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is DML?

A
  • Data Manipulation Language
  • Language for accessing and manipulating data
  • Can be procedural or declarative
17
Q

What is a database administrator?

A

Coordinates all the activities of a DBMS

18
Q

What are the types of database users? (3)

A
  • Naïve users, use pre-written application programs
  • Sophisticated users, form their requests in a query language
  • Application programmers, write application programs for databases
19
Q

What is a data model?

A

A collection of conceptual tools for describing underlying structure of a database (data, relationships, semantics, constraints)

20
Q

What are the types of logical data models? (4)

A
  • Entity-relationship data model
  • Relational model
  • Object based data model
  • Semi-structured data model
21
Q

Why would you use a data model? (5)

A
  • Concise summary of planning decisions
  • Easy to understand
  • Hides irrelevant detail
  • Faster and easier to produce than program code
  • Code may be produced automatically from a model with certain tools
22
Q

What is the database design methodology? (7)

A
  • Produce specification of requirements
  • Choose data modelling style
  • Design data model
  • Choose your database
  • Derive schema from data model
  • Populate database
  • Queries, updates, maintenance