Architecture for a Database System ITD1312 Database Principles Database Concepts and Architecture for a Database System
Database Application System & Database Management Definitions Disadvantages of File Processing Database Management System Advantages of the Database Approach Three-Level Database Architecture Program-Data Independence Data and Metadata Data Dictionary Evolution of Database Systems
Definitions Data: Data in Context Meaningful facts, text, graphics, images, sound, video segments. Data in Context
Definitions Database: Information: Metadata: An organized collection of logically related data. Information: Data processed to be useful in decision making. Metadata: Data that describes data.
Disadvantages of File Processing Systems Program-Data Dependence All programs maintain metadata for each file they use Data Redundancy (Duplication of data) Different systems/programs have separate copies of the same data Limited Data Sharing No centralized control of data Lengthy Development Times Programmers must design their own file formats Excessive Program Maintenance 80% of of information systems budget
Database Management System A DBMS is a data storage and retrieval system which permits data to be stored non-redundantly while making it appear to the user as if the data is well-integrated.
Database Management System
Advantages of the Database Approach a) Program-Data Independence: The separation of data descriptions (metadata) from the application programs that use the data is called data independence. This property of database systems allows an organization's data to change and evolve (within limits) without changing the application programs that process the data.
Advantages of the Database Approach Problems with Data Dependency Each application programmer must maintain their own data. Each application program needs to include code for the metadata of each file. Each application program must have its own processing routines for reading, inserting, updating and deleting data. Lack of coordination and central control Non-standard file formats
Advantages of the Database Approach b) Minimal Data Redundancy : The design goal with the database approach is that previously separate (and redundant) data files are integrated into a single, logical structure. Each primary fact is recorded (ideally) in only one place in the database. For example, the fact that the product with Product_ID 3 is an oak computer desk with a unit price of $375.00 is recorded in one place in the Product table
Advantages of the Database Approach c) Improved Data Consistency : By eliminating (or controlling) data redundancy, we greatly reduce the opportunities for inconsistency. For example, if a customer address is stored only once, we cannot have disagreement on the stored values.
Advantages of the Database Approach d) Improved Data Sharing : A database is designed as a shared corporate resource. Authorized users are granted permission to use the database, and each user (or group users) is provided one or more user views to facilitate this use.
Advantages of the Database Approach e) Increased Productivity of Application Development : A major of the database approach is that it greatly reduces the cost and time for developing new business applications. f) Enforcement of Standards When the database approach is implemented with full management support, the database administration function should be granted single-point authority and responsibility for establishing and enforcing data standards
Advantages of the Database Approach g) Improved Data Quality : The database approach provides a number of tools and processes to improve data quality h) Improved Data Accessibility and Responsiveness With a relational database, end users without programming experience can often retrieve and display data, even when it crosses traditional departmental boundaries
Advantages of the Database Approach i) Reduced Program Maintenance : Stored data must be changed frequently for a variety of reasons: new data item types are added, data formats are changed, and so on. In a database environment, data are more independent of the application programs that use them. Within limits, we can change either the data or the application programs that use the data without necessitating a change in the other factor. As a result, program maintenance can be significantly reduced in a modern database environment
Database Architecture generalized framework proposed by ANSI/SPARC Committee 3 levels External Conceptual Internal
3 Levels in Architecture of a DBMS External level consists of the user (group) views of the database each user will have its own view of the database
External level of DBMS Concern with the way the data is viewed by individual user- application programmer or on-line terminal user for application programmer- language such as VB, VC, powerbuilder, COBOL
3 Levels in Architecture of a DBMS Conceptual level involves analysis of users’ information needs and definition of data items needed to meet them the result of the conceptual design is the conceptual schema, a single, logical description of all data elements and their relationships
Conceptual level of DBMS Level of indirection between internal and external level a representation of the entire information content of the database consists of multiple occurrences of multiple types of conceptual record
3 Levels in Architecture of DBMS Internal Level provides the physical view of the database- the disk drives, physical address, indexes, pointers and so on. This level is the responsibility of physical database designers.
Internal level of DBMS Concern with the way the data is physically stored low-level representation of the entire database internal record is same as stored record
3 Levels in Architecture of a DBMS
Program-Data Independence Separation of data description from application program Data description are stored in central location called repository Allows organization’s data to change without changing the application program
Data and Meta-data Data Metadata meaningful facts, text, graphics, images, sound etc. Metadata describe the properties / characteristics of other data. include data definitions and data structures. Example on Class Roster, the metadata show data item name, data type, length, minimum and maximum allowable values description of each item
----------------------------------- ----------------------- Data Item Value ----------------------------------- ----------------------- Name Type Length Min Max Description Course Alphanumeric 30 Course ID and name Section Integer 1 9 Section number Semester 10 Semester and year Student name ID Student ID (SSN) Major 4 Student major GPA Decimal 3 0.0 4.0 Student grade point average
Data Dictionary A repository of information about a database which documents data elements of a database. An integral part of relational DBMSs is the data dictionary, which stores metadata, or information about the database, including attribute names and definitions for each table in the database.
Components of the Database Environment CASE Tools – computer-aided software engineering Repository – centralized storehouse of metadata Database Management System (DBMS) – software for managing the database Database – storehouse of the data Application Programs – software using the data User Interface – text and graphical displays to users Data Administrators – personnel responsible for maintaining the database System Developers – personnel responsible for designing databases and software End Users – people who use the applications and databases
Figure 1-10 Components of the database environment
Evolution of DB Systems Flat files - 1960s - 1980s Hierarchical – 1970s - 1990s Network – 1970s - 1990s Relational – 1980s - present Object-oriented – 1990s - present Object-relational – 1990s - present Data warehousing – 1980s - present Web-enabled – 1990s - present