Use LEFT and RIGHT arrow keys to navigate between flashcards;
Use UP and DOWN arrow keys to flip the card;
H to show hint;
A reads text to speech;
15 Cards in this Set
- Front
- Back
Limitations of File-Based Approach
|
Separation and isolation of data
Duplication of data Program - Data dependence Incompatible file formats Fixed Queries/Proliferation of application programs Others omissions |
|
Database Approach Arose because:
|
Definition of data was embedded in application programs, rather than being stored separately and independently.
No control over access and manipulation of data beyond that imposed by application programs. |
|
Result of Previous
|
the Database and Database Management System (DBMS).
|
|
Basic Definitions
|
Database:
A logically coherent collection of data with some inherent meaning in a domain of discourse used for a specific purpose. It has an intended set of users Domain of Discourse (or Universe of Discourse or Mini-world): Some part of the real world about which data is stored in a database. For example, student grades and transcripts at a university. Database Management System (DBMS): A software package/ system to facilitate the creation and maintenance an control access to the database Database System: The DBMS software together with the database itself. Sometimes, the applications are also included. |
|
Types of DBMSs that follow this model
|
Early Database DBMSs:
The Hierarchical and Network Models were introduced in mid 1960s and dominated during the seventies. A bulk of the worldwide database processing still occurs using these models, particularly, the hierarchical model. Relational Model based Systems: Relational model was originally introduced in 1970, was heavily researched and experimented within IBM Research and several universities. Relational DBMS Products emerged in the early 1980s. Object DBMSs Data is defined in objects organised to relate to objects within an object-oriented program |
|
A Generic Database System Model
|
|
|
Typical DBMS Functionality
|
Data Definition (DDL) a particular database in terms of its structures and data types
Constraint Definition and enforcement Access Control – defining user’s rights with regard to database objects and enforcement Data Manipulation (DML) the database: Retrieval: Read, generating reports Modification: creations, deletions and updates to its content SQL statement processing is also a key function of a DBMS Restructuring and reorganisation - e.g. changing the definition of a table by adding a new column. Partitioning table is another example. |
|
Typical DBMS Functionality
|
Other features:
Transaction Support – defining a transaction and ensuring that its properties are maintained Concurrency Support permitting many user processes to access a database at the same time an ensuring they do not interfere with each other Backup and Recovery to ensure integrity of database after a failure |
|
DBMS manages SQL Statement Processing
|
Parse (Call)
Essentially the same as any programming language statement Accepts a statement as a string of characters and checks that it is valid SQL Involves examining each term in statement to ensure it is a SQL keyword or the name of a table or column or a literal Also involves planning i.e. producing an execution plan that specifies how the statement should be executed. Execute The parsed SQL statement can now be executed against the database. Fetch The rows to be returned are fetched |
|
Oracle Parse Call –In more Detail
|
SQL Statement is translated to verify it a valid statement
Many errors can be caught during this stage of statement processing. The data is validated . Data Dictionary Lookups to ensure tables columns exist Locks are allocated. Parse Locks must be acquired to make sure that object definitions don’t change during execution or the parsing i.e. Locks on the definitions in the Data Dictionary tables Privileges are verified to ensure user has access to the database tables and any other database objects Optimal Execution Plan is determined based on optimisation plans, hints and database analysis Statement is then loaded into the shared SQL area ( Shared Pool) in memory WE WILL TALK MORE ABOUT THIS LATER IN THE COURSE |
|
Three Schema Architecture
|
Draw it man
|
|
Three Schema Architecture (contd)
|
Provides
Logical Data independence When a change to a logical schema has no impact on a user process Not always guaranteed Physical Data Independence Change in the storage schema does not impact the logical schema |
|
Main Characteristics of the Database Approach
|
Self-describing nature of a database system:
A DBMS catalog ( aka Data Dictionary) stores the description of a particular database (e.g. data structures, types, and constraints) This allows the DBMS software to work with different database applications. It also aids the Database Administrator (DBA) in the maintenance of the Database. Insulation between programs and data: Called program-data independence. ( or logical data independence) Allows changing data structures and storage organization without having to change the DBMS access programs in most cases! |
|
Main Characteristics of the Database Approach (continued)
|
Data Abstraction:
A data model is used to hide storage details and present the users with a conceptual view of the database. Programs refer to the data model constructs rather than data storage details We think of Tables in a database (tables are logical not physical but are stored in database files made up of o/s blocks) Support of multiple views of the data: Each user may see a different view of the database, which describes only the data of interest to that user. |
|
Main Characteristics of the Database Approach (continued)
|
Sharing of data and multi-user transaction processing:
Allowing a set of concurrent users to retrieve from and to update the database. OLTP (Online Transaction Processing) is a major part of database applications. This allows thousands of concurrent transactions to execute per second. |