Data Management I DBMS Relational Systems
Overview u Introduction u DBMS –components –types u Relational Model –characteristics –implementation u Physical Structure
File-based Systems u Collection of applications that performs services for end user- programs define and manage data u Limitations –Data dependence-structure defined in program –Incompatible file formats –Programs written to satisfy function
Database Definition u A database system is essentially a computerized record keeping system whose overall purpose is to maintain information and make it available on demand
Advantages of Database u REDUCED REDUNDANCY - Controlling duplication u INTEGRATION AND SHARING OF DATA - One set of data to maintain u MAINTAINING CONSISTENCY - Data propagation u DATA ACCESS - Multiple access paths; High level language u STANDARDIZATION - Enforcing local and global standards u SECURITY - User access; Protection of Data u DATA INDEPENDENCE - Data descriptors separate from application program u Increased integrity and concurrency control
Components of a Database System u Data –Note: Date uses data and information interchangably u Hardware –Processor, main memory, secondary storage and I/O devices –Individual PC to a network of computers u Software –DBMS –Application programs –Others software tools u Users –Application Programmers –End - Users –DBA’s u Procedures ??
Database Management System DBMS u Software u Software Components –Data Definition DDL t source form object form –Data manipulation DML t planned request t unplanned request –Data administration DAL t Data security and recovery –Integrity and concurrency –Performance –Data dictionary
Data Dictionary Catalog Repository u Database of information about a database –description of all database objects –references to all users of the database –references to all programs and transactions that access the database u Provides the description of the data to enable program-data independence
Database Models u Hierarchical - IMS –tree structure with predefined access paths –child has one parent u Network - CODASYL - IDMS –multiple paths to same record u Multi-dimensional u Object-oriented –data and methods –highly-variable structure –tightly coupled with programming language u Hybrid - Object/Relational Databases
Relational Model u Evolving System - System designed by Codd, partially implemented, developing u Theoretical Vs Available - No system met Codd’s original 12 rules. Degrees of relational defined u Date’s work - Supportive of relational model but not always in agreement with Codd
Functions of a DBMS Data Storage, Retrieval and Update. – Must furnish users with the ability to store, retrieve, and update data in the database. A User-Accessible Catalog. – Must furnish a catalog in which descriptions of data items are stored and which is accessible to users. Transaction Support – Must furnish a mechanism to ensure that either all the updates corresponding to a given transaction are made or that none of them are made.
Functions of a DBMS Concurrency Control Services – Must furnish a mechanism to ensure that database is updated correctly when multiple users are updating the database concurrently. Recovery Services – Must furnish a mechanism for recovering the database in the event that the database is damaged in any way. Authorization Services – Must furnish a mechanism to ensure that only authorized users can access the database.
Functions of a DBMS Support for Data Communication – Must be capable of integrating with communication software. Integrity Services – Must furnish a means to ensure that both the data in the database and changes to the data follow certain rules. Services to Promote Data Independence – Must include facilities to support the independence of programs from the actual structure of the database. Utility Services – Should provide a set of utility services.
ANSI/SPARC Architecture... EXTERNAL LEVEL (individual user view) CONCEPTUAL LEVEL (community user view) INTERNAL LEVEL (storage view)
External Level u Users’ view of the database u Language –Application programmer –End-user u External View –Logical record –Data authorized to view u External Schema
Conceptual Level u Community view of database u Representation of entire information content u Conceptual schema –definition of total database content ++ –data independent
Internal Level u Low-level representation of entire database –occurrences u Describes how the data is stored in the database u Not physical level u Level used by utilities to increase performance.
11 Differences between Three Levels of ANSI-SPARC Architecture
14 Data Independence and the ANSI-SPARC Three-level Architecture
Data Model u Integrated collection of concepts for describing data, relationships between data, and constraints on the data in an organization. u Data Model comprises: –A structural part –A manipulative part –Possibly a set of integrity rules
Data Models u Object-based Data Models –Entity-Relationship –Semantic –Functional –Object-Oriented u Record-based Data Models –Relational Data Model –Network Data Model –Hierarchical Data Model u Physical Data Models
Client/Server u Client/server model naturally fits the architecture u Front end u Back end u Middleware
Client/Server
Front End u GUI u Applications u Fat vs thin client u Should any data be stored in front end?
Back End Server u Data u Shared DBMS u Database information u Fat server vs thin server u Should server contain applications?
Middleware u Enables front end to speak to back end. u Middleware can be as simple as API’s and as complex as Tuxedo software u Determinants –variety of databases –networks –size
42 Summary of Client-server Functions