Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
Database Systems  Basic Concepts Dr. Ali H. El-Bastawissy Faculty of computers and Informatics Cairo University
Unit01 Outlines Types of Databases and Database Applications Basic Definitions Typical DBMS Functionality Examples of a Database Main Characteristics of the Database Approach Database Users Advantages of Using the Database Approach When Not to Use Databases
Definitions Data:  known facts that can be recorded  Database :  a collection of data represents some aspect of the real world logically coherent collection (not a random collection) designed, built & populated for a specific purpose Database Management System :  the software that manages the data
Database Systems Data Integrity, Data definition, DBMS Payroll Grades Schedules Data Definition
Characteristics of the Database Approach insulation of programs & data support of multiple user views use of a catalog to support database descriptions DB A collection of described and interrelated data stored and managed by general purpose DBMS
DBMS Functions Data Dictionary Data Storage Management Data Transformation and Presentation Security Multi-user Access Control Backup and Recovery Data Integrity Database Access Language  Database Communication Interface
Database System Environment Application Programs/Queries Software: Query Processing  & Programs Software: Data Access DBMS Software Database System Users/Programmers Database Definition Database
 
Database Players DBA access authorization, coordination & monitoring database usage, problem determination, performance tuning etc Designers identify the requirements & chose the appropriate structures to represent & store the data Users (Casual, parametric, Sophisticated, stand-alone) System analysts & application programmers DBMS system designers & implementers Tool developers Operators & maintenance personnel
DBMS Interfaces Menu-based Interfaces for browsing Forms-based Interfaces GUIs Natural Language Interfaces Specialized Interfaces Interfaces for the DBA Query Language
Classification of DBMSs Data Model Classification  relational, network, hierarchical, object-oriented Number of users single user or multi-user Number of Sites centralized vs distributed Cost of the DBMS
Areas of Database Study DBMS software  Database Design  Query Languages Application Programming Database Administration Data Warehousing & Data Mining
Costs of using a DBMS: High initial investment and possible need for additional hardware. Overhead for providing generality, security, concurrency control, recovery, and  integrity functions. When a DBMS may be unnecessary: If the database and applications are simple, well defined, and not expected to change. If there are stringent real-time requirements that may not be met because of DBMS overhead. If access to data by multiple users is not required. When not to use a DBMS
When no DBMS may suffice: If the database system is not able to handle the complexity of data because of modeling limitations If the database users need special operations not supported by the DBMS. When not to use a DBMS
Data Model A collection of concepts that can be used to define the DB structure (data items& types, relationships, operations|behavior, and constraints). Some Data Models: Entity Relationship model Relational Model hierarchical & network models object-data models
Physical Models Categories of Data Models Conceptual Models Entities, attributes  & relationships Implementation Models Record Structures Record formats,  record orderings, access paths
Conceptual (high-level, semantic) data models: Provide concepts that are close to the way many users perceive data.  (Also called  entity-based  or  object-based  data models.) Physical (low-level, internal) data models: Provide concepts that describe details of how data is stored in the computer. These are usually specified in an ad-hoc manner through DBMS design and administration manuals Implementation (representational) data models: Provide concepts that fall between the above two, used by many commercial DBMS implementations (e.g. relational data models used in many commercial systems). Categories of Data Models
Three-Schema Architecture External View #1 External View #2 External View #n Conceptual Schema Internal Schema mapping mapping Stored database ...
Defines DBMS schemas at  three  levels: Internal schema at the internal level to describe physical storage structures and access paths (e.g indexes).  Typically uses a physical data model. Conceptual schema at the conceptual level to describe the structure and constraints for the whole database for a community of users.  Uses a conceptual or an implementation data model. External schemas at the external level to describe the various user views.  Usually uses the same data model as the conceptual schema. Three-Schema Architecture
Three-Schema Architecture Mappings among schema levels are needed to transform requests and data.  Programs refer to an external schema, and are mapped by the DBMS to the internal schema for execution. Data extracted from the internal DBMS level is reformatted to match the user’s external view (e.g. formatting the results of an SQL query for display in a Web page)
Data Independence Logical data independence - ability to change the conceptual schema without having to change the external schemas or application programs Physical data independence - ability to change the internal schema without having to change the conceptual (or external) schemas.
DBMS Languages DDL:  D ata  D efinition  L anguage used to define/change the structure of the database (SDDL, CDDL, VDDL) DML:  D ata  M anipulation  L anguage used to query the database, insert data, change data or delete data (Nonprocedural|procedural (embedded) DML) (set-at-a-time  |record-at-a-time  DML)
DBMS Architectures Centralized DBMS: Combines everything into single system including- DBMS software, hardware, application programs, and user interface processing software. User can still connect through a remote terminal – however, all processing is done at centralized site.
DBMS Architectures Basic 2-tier Client-Server Architectures   Specialized Servers with Specialized functions Print server File server DBMS server Web server Email server Clients can access the specialized servers as needed
Logical two-tier client server architecture
Clients Provide appropriate interfaces through a client software module to access and utilize the various server resources.  Clients may be diskless machines or PCs or Workstations with disks with only the client software installed. Connected to the servers via some form of a network. (LAN: local area network, wireless network, etc.)
DBMS Server Provides database query and transaction services to the clients Relational DBMS servers are often called SQL servers, query servers, or transaction servers Applications running on clients utilize an Application Program Interface ( API ) to access server databases via standard interface such as: ODBC: Open Database Connectivity standard JDBC: for Java programming access Client and server must install appropriate client module and server module software for ODBC or JDBC
DBMS Architectures Three Tier Client-Server Architecture Common for Web applications Intermediate Layer called Application Server or Web Server:  Stores the web connectivity software and the business logic part of the application used to access the corresponding data from the database server Acts like a conduit for sending partially processed data between the database server and the client. Three-tier Architecture Can Enhance Security:  Database server only accessible via middle tier Clients cannot directly access database server
 
Summary Types of Databases and Database Applications Basic Definitions Typical DBMS Functionality Examples of a Database Main Characteristics of the Database Approach Database Users Advantages of Using the Database Approach When Not to Use Databases
Summary Data Models and Their Categories History of Data Models Schemas, Instances, and States Three-Schema Architecture Data Independence DBMS Languages and Interfaces Classification of DBMSs  Database System Utilities and Tools Centralized and Client-Server Architectures
Questions Dr. Ali H. El-Bastawissy Faculty of computers and Informatics Cairo University DB Unit 01 Intro  Finish Line

More Related Content

Database Design Slide 1

  • 1. Database Systems Basic Concepts Dr. Ali H. El-Bastawissy Faculty of computers and Informatics Cairo University
  • 2. Unit01 Outlines Types of Databases and Database Applications Basic Definitions Typical DBMS Functionality Examples of a Database Main Characteristics of the Database Approach Database Users Advantages of Using the Database Approach When Not to Use Databases
  • 3. Definitions Data: known facts that can be recorded Database : a collection of data represents some aspect of the real world logically coherent collection (not a random collection) designed, built & populated for a specific purpose Database Management System : the software that manages the data
  • 4. Database Systems Data Integrity, Data definition, DBMS Payroll Grades Schedules Data Definition
  • 5. Characteristics of the Database Approach insulation of programs & data support of multiple user views use of a catalog to support database descriptions DB A collection of described and interrelated data stored and managed by general purpose DBMS
  • 6. DBMS Functions Data Dictionary Data Storage Management Data Transformation and Presentation Security Multi-user Access Control Backup and Recovery Data Integrity Database Access Language Database Communication Interface
  • 7. Database System Environment Application Programs/Queries Software: Query Processing & Programs Software: Data Access DBMS Software Database System Users/Programmers Database Definition Database
  • 8.  
  • 9. Database Players DBA access authorization, coordination & monitoring database usage, problem determination, performance tuning etc Designers identify the requirements & chose the appropriate structures to represent & store the data Users (Casual, parametric, Sophisticated, stand-alone) System analysts & application programmers DBMS system designers & implementers Tool developers Operators & maintenance personnel
  • 10. DBMS Interfaces Menu-based Interfaces for browsing Forms-based Interfaces GUIs Natural Language Interfaces Specialized Interfaces Interfaces for the DBA Query Language
  • 11. Classification of DBMSs Data Model Classification relational, network, hierarchical, object-oriented Number of users single user or multi-user Number of Sites centralized vs distributed Cost of the DBMS
  • 12. Areas of Database Study DBMS software Database Design Query Languages Application Programming Database Administration Data Warehousing & Data Mining
  • 13. Costs of using a DBMS: High initial investment and possible need for additional hardware. Overhead for providing generality, security, concurrency control, recovery, and integrity functions. When a DBMS may be unnecessary: If the database and applications are simple, well defined, and not expected to change. If there are stringent real-time requirements that may not be met because of DBMS overhead. If access to data by multiple users is not required. When not to use a DBMS
  • 14. When no DBMS may suffice: If the database system is not able to handle the complexity of data because of modeling limitations If the database users need special operations not supported by the DBMS. When not to use a DBMS
  • 15. Data Model A collection of concepts that can be used to define the DB structure (data items& types, relationships, operations|behavior, and constraints). Some Data Models: Entity Relationship model Relational Model hierarchical & network models object-data models
  • 16. Physical Models Categories of Data Models Conceptual Models Entities, attributes & relationships Implementation Models Record Structures Record formats, record orderings, access paths
  • 17. Conceptual (high-level, semantic) data models: Provide concepts that are close to the way many users perceive data. (Also called entity-based or object-based data models.) Physical (low-level, internal) data models: Provide concepts that describe details of how data is stored in the computer. These are usually specified in an ad-hoc manner through DBMS design and administration manuals Implementation (representational) data models: Provide concepts that fall between the above two, used by many commercial DBMS implementations (e.g. relational data models used in many commercial systems). Categories of Data Models
  • 18. Three-Schema Architecture External View #1 External View #2 External View #n Conceptual Schema Internal Schema mapping mapping Stored database ...
  • 19. Defines DBMS schemas at three levels: Internal schema at the internal level to describe physical storage structures and access paths (e.g indexes). Typically uses a physical data model. Conceptual schema at the conceptual level to describe the structure and constraints for the whole database for a community of users. Uses a conceptual or an implementation data model. External schemas at the external level to describe the various user views. Usually uses the same data model as the conceptual schema. Three-Schema Architecture
  • 20. Three-Schema Architecture Mappings among schema levels are needed to transform requests and data. Programs refer to an external schema, and are mapped by the DBMS to the internal schema for execution. Data extracted from the internal DBMS level is reformatted to match the user’s external view (e.g. formatting the results of an SQL query for display in a Web page)
  • 21. Data Independence Logical data independence - ability to change the conceptual schema without having to change the external schemas or application programs Physical data independence - ability to change the internal schema without having to change the conceptual (or external) schemas.
  • 22. DBMS Languages DDL: D ata D efinition L anguage used to define/change the structure of the database (SDDL, CDDL, VDDL) DML: D ata M anipulation L anguage used to query the database, insert data, change data or delete data (Nonprocedural|procedural (embedded) DML) (set-at-a-time |record-at-a-time DML)
  • 23. DBMS Architectures Centralized DBMS: Combines everything into single system including- DBMS software, hardware, application programs, and user interface processing software. User can still connect through a remote terminal – however, all processing is done at centralized site.
  • 24. DBMS Architectures Basic 2-tier Client-Server Architectures Specialized Servers with Specialized functions Print server File server DBMS server Web server Email server Clients can access the specialized servers as needed
  • 25. Logical two-tier client server architecture
  • 26. Clients Provide appropriate interfaces through a client software module to access and utilize the various server resources. Clients may be diskless machines or PCs or Workstations with disks with only the client software installed. Connected to the servers via some form of a network. (LAN: local area network, wireless network, etc.)
  • 27. DBMS Server Provides database query and transaction services to the clients Relational DBMS servers are often called SQL servers, query servers, or transaction servers Applications running on clients utilize an Application Program Interface ( API ) to access server databases via standard interface such as: ODBC: Open Database Connectivity standard JDBC: for Java programming access Client and server must install appropriate client module and server module software for ODBC or JDBC
  • 28. DBMS Architectures Three Tier Client-Server Architecture Common for Web applications Intermediate Layer called Application Server or Web Server: Stores the web connectivity software and the business logic part of the application used to access the corresponding data from the database server Acts like a conduit for sending partially processed data between the database server and the client. Three-tier Architecture Can Enhance Security: Database server only accessible via middle tier Clients cannot directly access database server
  • 29.  
  • 30. Summary Types of Databases and Database Applications Basic Definitions Typical DBMS Functionality Examples of a Database Main Characteristics of the Database Approach Database Users Advantages of Using the Database Approach When Not to Use Databases
  • 31. Summary Data Models and Their Categories History of Data Models Schemas, Instances, and States Three-Schema Architecture Data Independence DBMS Languages and Interfaces Classification of DBMSs Database System Utilities and Tools Centralized and Client-Server Architectures
  • 32. Questions Dr. Ali H. El-Bastawissy Faculty of computers and Informatics Cairo University DB Unit 01 Intro Finish Line