Database CISC215 1-2
Client-server DBMS architecture
Active clients request services from passive servers.
Atomicity
all or nothing property, that requires that a transaction should either be executed in its entirety or not at all.
Multi-user System
allow multiple users to work simultaneously with the DBMS
Object oriented DBMS
an approach to data management that stores both data and the procedures acting on the data as objects that can be automatically retrieved and shared; the objects can contain multimedia.
Consistency
assures that a transaction brings the database from one consistent state to another.
Database System
the database, the DBMS, and the application programs that access the database through the DBMS
Big Data
the huge and complex data sets generated by today's sophisticated information generation, collection, storage, and analysis technologies.
XML DBMS
A database management system that provides authoring and query tools for designing and managing collections of XML documents
Response time (KPI)
Denotes the time elapsed between issuing a database request and the successful termination thereof.
View
Describes the part of the database that a particular application or user group is interested in, hiding the rest of the database
Impedance mismatch problem
The mapping between object-oriented and relational concepts.
Database Approach
All data are stored and manages centrally by a Database Management System.
Metadata
Data definitions that are now stored in the catalog of the DBMS.
Database state (Current set of instances)
Represents the data in the database at a particular moment.
Throughput rate (KPI)
Represents the transactions a DBMS can process per unit of time.
Logical Data Independence
implies that software applications are minimally affected by changes in the conceptual or logical data model.
Database
A collection of related data items within a specific business process or problem setting.
Logical Data Model
A translation or mapping of the conceptual data model toward a specific implementation environment.
Multimedia DBMS
Allow for the storage of multimedia data such as text, images, audio, video, 3D games.
Read lock
Allows a transaction to read a database object
Write lock
Allows a transaction to update it.
Lock manager
An essential component for providing control, which ensures data integrity at all times.
Three-Layer architecture
An essential element of every database application and describes how the different underlying data models are related
Data model
An explicit representation of the data items together with their characteristics and relationships. (Can include integrity rules and functions)
Query Processor
Assists in the execution of database queries such as retrieval of data, insertion of data, update of data, and removal of data from a database.
ACID
Atomicity, Consistency, Isolation, Durability
Object relational dbms
Combines elements of the relational DBMS and the object-oriented DBMS. Uses a relational model to describe associations between data tables, but makes it possible to store multimedia objects.
DDL Compiler
Compiles the data definitions specified in DDL. (DBMS should provide 3 DDLS; Internal data model, Logical data model, and External data model.)
DML compiler
Compiles the data manipulation statements specified in the DML.
External data model
Contains various subsets of the data items in the logical model, also called views, tailored toward the needs of specific applications or groups of users.
DDL Statements
Create data definitions that are stored in the catalog.
Mobile DBMS
DBMS running on smartphones, tablets, and other mobile devices. They should always be online, have a small footprint, and be able to deal with limited processing power, storage, and battery life.
federated DBMS
DBMS that provides a uniform interface to multiple underlying data sources.
Declarative DML (Set-at-a-time DML)
DML specifies which data should be retrieved or what changes should be made, rather than how this should be done.
Purchase Order System
Data items such as products, suppliers, and purchase orders.
Semi-structured data
Data that have a certain structure, but the structure may be very irregular or highly volatile.
File-Based Approach
Every application stores its data into its own dedicated files. (Since each application uses its own data files and many applications use similar data, duplicate or redundant information will be stores.)
Difference between file-based and database approach
File-based approach results in a strong application-data dependence, whereas the database approach allows for applications to be independent from the data and data definitions.
Conceptual/Logical layer (3 layer)
Focus on the data items, their characteristics, and relationships without bothering too much about the actual physical DBMS implementation.
On-line transaction processing DBMS
Focuses on managing operational or transactional data.
On-line analytical processing DBMS
Focuses on using operational data for tactical or strategical decision making
n-tier DBMS architecture
GUI functionality, that is like client server dbms
Host language
General purpose language that contains the non-database related application logic.
Storage manager
Governs physical file access and as such supervises the correct and efficient storage of data.
NoSQL databases
Handy in storing unstructured information like emails, text database structure.
Embedded DML statments
How applications interact with the DBMS
External Layer (3 layer)
Includes views offering a window on a carefully selected part of the logical data model.
Structured data
Individual characteristics of data items can be identified and formally specified, such as the name, number, address, and more. Organizes
Sensor DBMS
Manages sensor data such as biometric data obtained by wearables, or telematics data which continuously record driving behavior
Data independence
Means the changes in data definitions have minimal to no impact on the applications using the data.
Unstructured data
No finer-grain components in a file or series of characters that can be interpreted in a meaningful way by a DBMS or application.
Hierarchal DBMS
One of the first DBMS types developed and adopt a tree-like data model.
single-user system
Only one user at a time is allowed to work with the DBMS
Query rewriter (optimizer)
Optimizes the query, independently of the current database state.
Conceptual Data Model
Provides a high-level description of the data items, with their characteristics, and relationships.
Database model / Schema
Provides the description of the database data at different levels of detail and specifies the various data items, characteristics, and relationships, constraints, storage details, etc.
Space Utilization (KPI)
Refers to the space utilized by the DBMS to store both the raw data and the metadata.
Buffer manager
Responsible for managing the buffer memory of the DBMS. Caches data for speedy access.
Network DBMS
Similar to the hierarchical DBMS, but it lets a child have more than one parent. This can become complicated.
Database Management System (DBMS)
Software package used to define, create, use, and maintain a database.
Procedural DML (Record-at-a-time DML)
Specified how to navigate in the database to locate and modify the data.
Internal layer (3 layer)
Specifies how the data are stored or organized physically,.
In-memory DBMS
Stores all data in internal memory instead of slower external storage such as disk-based storage.
Geographical inform
Such as Google Maps, store and retrieve all types of spatial or geographical data
Loading utility
Supports the loading of the database with information from a variety of sources such as another DBMS, text files, Excel files, etc.
Query executor
Takes care of the actual execution by calling on the storage manager to retrieve the data requested.
cloud DBMS architecture
The DBMS and database are hosted by a third-party cloud provider.
Open-source DBMS
The code is publicly available and can be extended by anyone.
Centralized DBMSs Architecture
The data are maintained on a centralized host; mainframe system. All queries will then have to be processed by this single host.
Catalog
The heart of the DBMS. It contains the data definitions, or metadata, of your database application. Stores the definitions of the views, logical and internal data models, and synchronizes these three data models to ensure their consistency.
Concurrency Control
The simultaneous access by different users or applications to the same data without conflicts.
Interactive queries
Typically executed from a front-end tool, such as a command-line interface, simple graphical user interface, or forms-based interface.
Data Definition Language (DDL)
Used by the Database designer to express the database's external, logical, and internal data models.
Data Manipulation language (DML)
Used to retrieve, insert, delete, and modify data.
Relational DBMS
Uses the relational data model and are the most popular in the industry
Reorganization utility
automatically reorganizes the data for improved performance.
Durability
ensures that the database changes made by a transaction declared successful can be made permanent under all circumstances
Isolation
ensures that the effect of concurrent transactions should be the same as if they had been executed in isolation
Physical data independence
implies that neither the applications, views, or logical data model must be changed when changes are made to the data storage specifications in the internal data model.
NoSQL DBMS
non-relational databases that support very high transaction rates processing relatively simple data structures, replicated on many servers in the cloud
Query Parser
parses the query into an internal representation format that can then be evaluated by the system.
Connection manager
provides facilities to set up a database connection.
Performance monitoring utilities
report various key performance indicators (KPIs).
Three key performance indicators (KPIs)
response time, throughput rate, and space utilization.
Recovery Manager
supervises the correct execution of database transactions.
Transaction manager
supervises the execution of database transactions. Creates a schedule with interleaved read/write operations to improve overall efficiency and execution performance.
User management utilities
support the creation of user groups or accounts, and the assignment of privileges to them.
Spatial DBMS
supports the storage and querying of spatial data