* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Chapter 1
Microsoft Access wikipedia , lookup
Entity–attribute–value model wikipedia , lookup
Oracle Database wikipedia , lookup
Open Database Connectivity wikipedia , lookup
Extensible Storage Engine wikipedia , lookup
Microsoft Jet Database Engine wikipedia , lookup
Concurrency control wikipedia , lookup
Relational model wikipedia , lookup
ContactPoint wikipedia , lookup
1 Chapter 1. Databases and Database Users 1.1 Introduction - Data Base (DB): A database is a collection of related data (ex) Address book (: names, telephone numbers, addresses) Diskette (: set of files homework files, tax documents, etc.) Files at doctor’s office (: patient files, pharmaceutical files, billing files, etc.) - Data Base Management System (DBMS) : A DBMS is a collection of programs that enables users to create and maintain a database (a generalized s/w for implementing and maintaining a computerized database) (ex) Access, Oracle, SQL Server, etc. (1) Defining: Specifying the data types, structures and constraints for the data to be stored in the DB (2) Constructing: Storing the data itself on some storage medium that is controlled by the DBMS (3) Manipulating: Includes functions such as querying the DB to retrieve specific data, updating the DB to reflect changes, and generating reports from the data - Database System = DB and s/w (DBMS) together Database System DBMS Physically Stored DB Machine (Note) See Figure 1.1 (p7) 1.3 Characteristics of the Database Approach - Characteristics of the DB Approach (1) Self describing data : The database system contains not only the database itself but also a complete definition or description of the data structure and constraints. However, metadata (schema) and actual tuples are stored separately. (ex) NAME Joe SSN 123 Matt 456 Bob 789 Meta data (NAME, SSN) Actual tuples 2 (Note) See Figure 1.3 (p11) A catalog is a collection of special relations with their own schema. (2) Data abstraction : Hiding low-level details from the users of the system Actual users don’t see tables in Figure1.3 directly level of abstraction View Level ← What data users and application programs see? | Logical Level ← What data is stored? | Physical Level ← How data is actually stored? The characteristic that allows program-data independence and program-operation Independence. Program-data independence : The structure of data files is stored in the DBMS catalog separately from the access program. (ex) We only need to change the description of records in the catalog to reflect the inclusion of the new data item (i.e. column). Program-operation independence : User application programs can operate on the data by invoking operations through their names and arguments, regardless of how the operations are implemented. (ex) We don’t need to know the implementation of SELECT. (3) Multiple views of the data : A multiuser DBMS whose users have a variety of applications must provide facilities for defining multiple views. (ex) Two views derived from a database (Figure 1.5, p14) (4) Data sharing and multiuser transactions : The DBMS must include concurrency control s/w to ensure that several users trying to update the same data do so in a controlled manner so that the result of the updates is correct. (ex) online transaction processing (OLTP) 1.4 & 1.5 People involved in a DB Database administrators (DBA) are responsible for authorizing access to the database, for coordinating and monitoring its use, and acquiring s/w and h/w resources as needed. Database designers are responsible for identifying the data to be stored in the database and for choosing appropriate structures to represent and store the data. 3 End users are the people whose jobs require access to the database for querying, updating, and generating reports. System analysts determine the requirements of end users and develop specifications for canned transactions that meet the requirements. Application developers create applications that extend the functionality of the database system. These applications interact with the database to help users accomplish specific tasks, such as analyzing information. Database implementers 1.6 Advantages of Using the DBMS Approach - Advantages: (1) Controlling redundancy (2) Restricting unauthorized access – provides a security and authorization subsystems (3) Providing persistent storage for program objects (4) Providing storage structure for efficient query process – index structure (5) Providing backup and recovery (6) Providing multiple user interfaces (7) Representing complex relationships among data (8) Enforcing integrity constraints (9) Permitting inferences and actions using rules – deductive database systems (10) Potential for enforcing standards (11) Reduced application development time - Disadvantages: Overhead and Complexity 1.7 A Brief History of Database Applications - Read by yourself. Already discussed in CSC356.