Database Study
recovery manager
ensures the atomicity and durability properties
Query evaluation engine
executes low-level instructions generated by the DML compiler
The overall design of the database is called the database
schema
To access the database, DML statements need to be
sent from the host to the database where they will be executed
At the physical level, an instructor, department, or student record can be described as
a block of consecutive bytes
data model
a collection of conceptual tools for describing data, data relationships, data semantics, and consistency constraints
A database-management system (DBMS)
a collection of interrelated data and a set of programs to access those data
A transaction is
a collection of operations that performs a single logical function in a database application
logical schema
a describes the database design at the logical level
The front end communicates with an
application server
Database systems are used to manage collections of data that:
are highly valuable, are relatively large, and are accessed by multiple users and applications, often at the same time.
Early databases were maintained as
back-office systems with which users interacted via printed reports and paper forms for input
Indices
can provide fast access to data items
database
collection of data that contains information relevant to an enterprise
Application programmers
computer professionals who write application programs
Domain constraints are
the most elementary form of integrity constraint
physical-design phase
the physical features of the database are specified
Referential Integrity
ensures that a value that appears in one relation for a given set of attributes also appears in a certain set of attributes in another relation
data analytics
the processing of data to draw conclusions, and infer rules or decision procedures, which are then used to drive business decisions
Transaction manager
ensures that the database remains in a consistent (correct) state despite system failures, and that concurrent transaction executions proceed without conflicts
Object-Based Data Model
A data model that uses objects to organize spatial data and stores geometries and attributes in a single system
Domain Constraints
A domain of possible values must be associated with every attribute
three-tier architecture
where the client machine acts as merely a front end and does not contain any direct database calls
Physical Data Independence
Although implementation of the simple structures at the logical level may involve complex physical-level structures, the user of the logical level does not need to be aware of this complexity
The query processor components include:
DDL interpreter, DML compiler, and the Query evaluation engine
The storage manager translates the various
DML statements into low-level file-system commands
major disadvantages of keeping organizational information in a file-processing system
Data redundancy and inconsistency, Difficulty in accessing data, Data isolation, Integrity problems, Atomicity problems, Concurrent-access anomalies, and Security problems
types of database-system users
Naıve users, Application programmers, Sophisticated users
View level
The highest level of abstraction describes only part of the entire database.
Physical level
The lowest level of abstraction that describes how the data are actually stored
Logical level
The next-higher level of abstraction that describes what data are stored in the database, and what relationships exist among those data
query language
The portion of a DML that involves information retrieval
A data-manipulation language (DML) is
a language that enables users to access or manipulate data as organized by the appropriate data model
normalization
a set of algorithms that takes as input the set of all attributes and generates a set of tables
We specify a database schema by
a set of definitions expressed by a special language called a data-definition language (DDL)
A query is
a statement requesting the retrieval of information
distributed databases
allow data storage and query processing across multiple geographically separated machines
abstraction
allows a person to use a complex device or system without having to know the details of how that device or system is constructed
delete authorization
allows deletion of data
insert authorization
allows insertion of new data, but not modification of existing data
update authorization
allows modification, but not deletion, of data
read authorization
allows reading, but not modification, of data
Modern database systems exploit commonalities in the structure of data to gain efficiency but
also allow for weakly structured data and for data whose formats are highly variable
transaction manager
consists of the concurrency-control manager and the recovery manager
concurrency-control manager
controls the interaction among the concurrent transactions, to ensure the consistency of the database
A database schema
corresponds to the variable declarations (along with associated type definitions) in a program
metadata
data about data
The output of the DDL is placed in the
data dictionary
The Java Database Connectivity (JDBC) standard
defines a corresponding interface for the Java language.
The Open Database Connectivity (ODBC) standard
defines application program interfaces for use with C and several other languages
physical schema
describes the database design at the physical level
parallel databases
designed to run on a cluster consisting of multiple machines to scale up to even larger data volumes and even higher processing speeds
failure recovery
detect system failures and restore the database to the state that existed prior to the occurrence of the failure
Authorization
differentiates among the users as far as the type of access they are permitted on various data values in the database.
data-manipulation language (DML)
expresses database queries and updates
e data-definition and data-manipulation languages
form parts of a single database language, such as the SQL language
The physical schema
hidden beneath the logical schema
Databases use a type of data structure called an ____ to support efficient retrieval of records
index
The collection of information stored in the database at a particular moment is called an
instance
The values of the variables in a program at a point in time correspond to an ______ of a database schema.
instance
DDL interpreter
interprets DDL statements and records the definitions in the data dictionary
The buffer manager is a critical part of the database system, since
it enables the database to handle data sizes that are much larger than the size of main memory
query optimization
it picks the lowest cost evaluation plan from among the alternatives
File manager
manages the allocation of space on disk storage and the data structures used to represent information stored on disk
two modes in which databases are used
online transaction processing and data analytics
Semi-structured Data Model
permits the specification of data where individual data items of the same type may have different sets of attributes (JSON and Extensible Markup Language (XML))
a database index provides
pointers to those data items that hold a particular value
Application programs
programs that are used to interact with the database
conceptual-design phase
provides a detailed overview of the enterprise
Tables are also known as
relations
Declarative DMLs (also referred to as nonprocedural DMLs)
require a user to specify what data are needed without specifying how to get those data
Buffer manager
responsible for fetching data from disk storage into main memory, and deciding what data to cache in main memory
Procedural DMLs
s require a user to specify what data are needed and how to get those data
business logic
says what actions to carry out under what conditions, is embedded in the application server, instead of being distributed across multiple clients
data-definition language (DDL)
specifies the database schema
data storage and definition language
specifies the storage structure and accesses methods used by the database system by a set of statements in a special type of DDL
The DDL is also used to
specify additional properties of the data
Data files
store the database itself
Data dictionary
stores metadata about the structure of the database, in particular the schema of the database
the storage manager is responsible for
storing, retrieving, and updating data in the database
A database may also have several schemas at the view level that describe different views of the database sometimes called
subschemas
file-processing system is
supported by a conventional operating system
Authorization and integrity manager
tests for the satisfaction of integrity constraints and checks the authority of users to access data
storage manager
the component of a database system that provides the interface between the low-level data stored in the database and the application programs and queries submitted to the system
Database design mainly involves
the design of the database schema
logical-design phase
the designer maps the high-level conceptual schema onto the implementation data model of the database system that will be used
The storage manager is responsible for
the interaction with the file manager
The functional components of a database system can be broadly divided into
the storage manager, the query processor components, and the transaction management component
The primary goal of a DBMS is
to provide a way to store and retrieve database information that is both convenient and efficient.
DML compiler
translates DML statements in a query language into an evaluation plan consisting of low-level instructions that the query-evaluation engine understands
We may describe the type of a record abstractly as follows:
type instructor = record ID : char (5); name : char (20); dept name : char (20); salary : numeric (8,2); end;
Non-procedural query languages such as SQL are not as powerful as a
universal Turing machine
Naıve users
unsophisticated users who interact with the system by using predefined user interfaces, such as web or mobile applications
specification of functional requirements
users describe the kinds of operations (or transactions) that will be performed on the data
Entity-Relationship (ER) Model
uses a collection of basic objects, called entities, and relationships among these objects
Relational Model
uses a collection of tables to represent both data and the relationships among those data
predictive models
uses data mining and predictive methods to forecast outcomes
Database modifications can cause
violations of referential integrity
online transaction processing
where a large number of users use the database, with each user retrieving relatively small amounts of data, and performing small updates (primary)
two-tier architecture
where the application resides at the client machine, and invokes database system functionality at the server machine through query language statements.