Download Chapter 1

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Microsoft Access wikipedia , lookup

Entity–attribute–value model wikipedia , lookup

Oracle Database wikipedia , lookup

IMDb 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

Database wikipedia , lookup

ContactPoint wikipedia , lookup

Clusterpoint wikipedia , lookup

Database model wikipedia , lookup

Transcript
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.