Database System Concepts and Architecture
Database System Concepts and Architecture
Data Model
A set of concepts to describe the structure of a database, the operations for manipulating these
structures, and certain constraints that the database should obey.
Data Model Structure and Constraints:
Constructs are used to define the database structure.
Constructs typically include elements (and their data types) as well as groups of elements (e.g. entity,
record, table), and relationships among such groups
Constraints specify some restrictions on valid data; these constraints must be enforced at all times
Data Models(continued)
Database State:
The actual data stored in a database at a particular moment in time. This includes the collection of all the
data in the database. Also called database instance (or occurrence or snapshot).
The term instance is also applied to individual database components, e.g. record instance, table instance,
entity instance
Initial Database State: Refers to the database state when it is initially loaded into the system.
Valid State: A state that satisfies the structure and constraints of the database.
Three-Schema Architecture
Proposed to support DBMS characteristics of:
Program-data independence.
Support of multiple views of the data.
The Three-Schema Architecture defines DBMS schemas at three levels:
1. Internal schema at the internal level to describe physical storage structures and access paths (e.g.
indexes).
Typically uses a physical data model.
2. 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.
3. 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 (Cont’d)
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)
Centralized and Client-Server 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.
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: