Chap 2 (Database System Concepts and Architecture) Flashcards
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
are used to define the database structure
Constructs
Constructs typically include
elements (and their data types)
groups of elements (e.g. entity, record, table)
relationships among such groups
specify some restrictions on valid data; these constraints must be enforced at all times
Constraints
These operations are used for specifying database retrievals and updates by referring to the constructs of the data model.
Data Model Operations
Operations on the data model may include
basic model operations (e.g. generic insert, delete, update)
user-defined operations (e.g. compute_student_gpa, update_inventory)
Provide concepts that are close to the way many users perceive data.
Conceptual (high-level, semantic) data models
Conceptual (high-level, semantic) data models are also called
entity-based or object-based 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
Physical (low-level, internal) data models
Provide concepts that fall between conceptual and physical data models, used by many commercial DBMS implementations (e.g. relational data models used in many commercial systems).
Implementation (representational) data models
Combine the description of data with the data values. Examples include XML, key-value stores and some NOSQL systems.
Self-Describing Data Models
The description of a database.
Database Schema
Database schema includes
descriptions of the database structure, data types, and the constraints on the database.
An illustrative display of (most aspects of) a database schema.
Schema Diagram
A component of the schema or an object within the schema, e.g., STUDENT, COURSE.
Schema Construct
The actual data stored in a database at a particular moment in time. This includes the collection of all the data in the database.
Database State
Database State also called
Database Instance (or Occurrence/Snapshot)
The term _____ is also applied to individual database components in database state
instance (e.g record instance, table instance, etc)
Refers to the database state when it is initially loaded into the system.
Initial Database State
A state that satisfies the structure and constraints of the database.
Valid State
The _______ changes very infrequently
database schema
The ______ changes every time the database is updated.
database state
Schema is also called
Intension
State is also called
extension
Three-Schema Architecture was proposed to support DBMS characteristics of
Program-data interdependence
Support multiple views of data
Three-Schema Architecture defines DBMS Schemas at three levels which are
Internal schema
Conceptual schema
External schema
at the internal level to describe physical storage structures and access paths (e.g indexes).
Internal Schema
at the conceptual level to describe the structure and constraints for the whole database for a community of users.
Conceptual Schema
at the external level to describe the various user views.
External schema
What does internals schema typically use
Physical data model
Conceptual schema uses what model
conceptual or implementation data model
External schema uses what model
conceptual or implementation data model
In Three-Schema Architecture, _____ among schema levels are needed to transform requests and data
mappings
The capacity to change the conceptual schema without having to change the external schemas and their associated application programs
Logical Data Independence
The capacity to change the internal schema without having to change the conceptual schema
Physical Data Independence
When a schema at a lower level is changed, only the _____ between this schema and higher-level schemas need to be changed in a DBMS that fully supports data independence.
mappings
Types of DBMS Languages
Data Definition Language (DDL)
Data Manipulation Language (DML)
Low Level or Procedural Languages
Used by the DBA and database designers to specify the conceptual schema of a database
Data Definition Language (DDL)
In many D B M S s, the D D L is also used to define ______ and ______ schemas
internal and external
In some DBMSs, separate ________ (SDL) and ________ (VDL) are used to define internal and external schemas.
storage definition language (internal)
View definition language (external)
Used to specify database retrievals and updates
Data Manipulation Language (DML)
DML commands (data sublanguage) can be embedded in a __________ (host language), such as COBOL, C, C++, or Java.
general-purpose programming language
A library of ______ can also be provided to access the DBMS from a programming language
functions
stand-alone DML commands can be applied directly (called a ___________).
query language
Types of DML
High Level or Non-procedural Language
Low Level or Procedural Language
High Level or Non-procedural Language also called
declarative languages
Are “set”-oriented and specify what data to retrieve rather than how to retrieve it
High Level or Non-procedural Language
Retrieve data one record-at-a-time
Low Level or Procedural Language
Constructs such as looping are needed to retrieve multiple records, along with positioning pointers
Low Level or Procedural Language
Types of DBMS Interfaces
Stand-alone query language interfaces
Programming interfaces
User-friendly interfaces
Mobile interfaces
DBMS Programming Language Interfaces
Embedded Approach
Procedural Call Approach
Database Programming Language Approach
Scripting Languages
SQL is embedded directly in the source code of a host language (C, C++, Java, etc.), often requiring a precompiler.
Embedded Approach
Use of database APIs to interact with the database. SQL commands are passed as parameters to functions or methods.
Procedural Call Approach
A specialized language (often SQL with procedural extensions) that allows seamless integration of SQL and programming logic.
Database Programming Language Approach
High-level scripting languages like PHP or Python use database connectors/modules to interact with databases.
Scripting languages
User-Friendly DBMS Interfaces
Menu-based (web-based)
Forms-based
Graphics-based
Natural language
Combinations
Other DBMS Interfaces
Natural language
Speech
Web Browser
Parametric interfaces
Used to store schema descriptions and other information such as design decisions, application program descriptions, user information, usage standards, etc.
Data dictionary/repository
is accessed by DBMS software and users/DBA.
Active data dictionary
is accessed by users/DBA only.
Passive data dictionary
Combines everything into single system including- DBMS software, hardware, application programs, and user interface processing software.
Centralized DBMS
In a centralized DBMS, User can still connect through a remote terminal – however, all processing is done at ________
centralized site
Specialized Servers with Specialized functions and Clients can access the specialized servers as needed
Basic 2-Tier Client-Server Architectures
What are the types of Specialized Servers with Specialized functions
Print server
File server
DBMS server
Web server
Email server
Provide appropriate interfaces through a client software module to access and utilize the various server resources.
Clients
Clients may be ____ machines or P C s or Workstations with disks with only the client software installed.
diskless
Connected to the servers via some form of a network.
Clients
Provides database query and transaction services to the clients
DBMSServer
Relational DBMS servers are often called ________
SQL servers, query servers, or transaction servers
Applications running on clients utilize an __________ to access server databases via standard interface
Application Program Interface (API)
Applications running on clients utilize an Application Program Interface (A P I) to access server databases via standard interface such as?
ODBC: Open Database Connectivity standard
JDBC: Java programming access
Client and server must install appropriate ______ and ______ software for ODBC or JDBC
client and server module
A client program may connect to several DBMSs, sometimes called the _______
data sources
In general, data sources can be ____ or other non-DBMS software that manages data.
files
It is common for web applications regarding client and server
Three Tier Client-Server Architecture
Three Tier Client-Server Architecture has an 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
Intermediate Layer
Acts like a conduit for sending partially processed data between the database server and the client.
Intermediate Layer
Variations of Distributed DBMSs (DDBMSs)
Homogeneous DDBMS
Heterogeneous DDBMS
Federated or Multidatabase Systems
Distributed Database Systems
Participating Databases are loosely coupled with high degree of autonomy.
Federated or Multidatabase Systems
Distributed Database Systems have now come to be known as _______ database systems
client-server based
organizes data in a tree-like structure, where each record has a single parent and potentially many children.
Hierarchical data model
similar to the hierarchical model but allows each child node to have multiple parent nodes
Network Data Model
organizes data into tables (relations), which consist of rows (tuples) and columns (attributes)
Relational Data Model
integrates concepts from object-oriented programming (OOP) into databases
Object-Oriented Data Model
combines the strengths of both relational and object-oriented models.
Object-Relational Data Model