PRINCIPLES OF DATABASE MANAGEMENT:
CHAPTER 1: FUNDAMENTAL CONCEPTS OF DATABASE MANAGEMENT:
1. Applications of database technology:
data is everywhere and comes in different shapes and volumes
- Storage and retrieval of traditional numeric and alphanumeric data in an inventory application
- Multimedia applications (e.g., YouTube, Spotify)
-> audio, pictures, video’s
- Biometric applications (e.g., fingerprints, retina scans)
-> used for security
- Wearable applications (e.g., FitBit, Apple Watch)
-> health, fitness
- Geographical Information Systems (GIS) applications (e.g., Google Maps)
- Sensor applications (e.g., nuclear reactor)
- Big Data applications (e.g., Walmart)
- Internet of Things (IoT) applications (e.g., Telematics)
2. Key definitions:
A database = a collection of related data items within a specific business process or problem setting (such
as Product, Customer, Invoice, Supplier, PurchaseOrders and they have relations)
-> has a target group of users and applications
->
A Database Management System (DBMS) = the software package used to define, create, use and maintain
a database
-> consists of several software modules, each with their specific functionality
-> popular DBMS vendors are Oracle, Microsoft and IBM, whereas MySQL is a well-known opensource
DBMS
=> combination of a DBMS and a database = a database system
3. File vs. database approach to data management:
o File approach:
= each application uses its own data files, many using similar data
- duplicate or redundant information will be stored
- danger of inconsistent data
- strong coupling between applications and data
- hard to manage concurrency control (simultaneous access to the same data)
- hard to integrate applications aimed at providing cross-company services
, o Database approach:
= all data is stored and managed centrally by DBMS
= applications directly interface with DBMS instead of with their own files
= DBMS delivers the desired data upon request to each application
= DBMS stores and manages 2 types of data: raw data and meta data
-> key difference: meta data is no longer included in the applications, but is now properly managed by
the DBMS self
- superior to the file approach in terms of efficiency, consistency and maintenance
- loose coupling between applications and data
- facilities provided for data querying and data retrieval
o File approach: Database approach (SQL):
4. Elements of a database system:
4.1. Database model vs. instances:
• Database model or database schema:
= provides the description of the database data at different levels of detail and specifies the various
data items, their characteristics and relationships, constraints, storage details, etc.
– specified during database design and not expected to change too frequently
– stored in the catalog (heart DBMS)
example:
Student (number, name, address, email)
Course (number, name)
Building (number, address)
-> 3 data-items : student, course, building
-> characteristics: number, name, address, email
, • Database state:
= represents the data in the database at a particular moment
– also called the current set of instances
– adding, updating or removing data: typically changes on an ongoing basis
example:
4.2. Data Model:
- Database model is comprised of different data models, each describing the data from different
perspectives
-> good data model is the start of every successful database application
- A data model provides a clear and unambiguous description of the data items, their relationships and
various data constraints from a particular perspective
-> several types of data models will be developed during a database design process
- A conceptual data model provides a high-level description of the data items (supplier, product) with their
characteristics (supplier name, product number) and relationships (supplier can supply products)
-> communication instrument between information architect and business user to make sure
that the data requirements are captured and modeled
-> should be implementation independent, user-friendly, and close to how the business user
perceives the data
-> usually represented using an Enhanced-Entity Relationship (EER) model, or an object
oriented model
- Logical data model is a translation or mapping of the conceptual data model towards a specific
implementation environment
-> can be a hierarchical, CODASYL, relational, object-oriented, extended relational, XML or
NoSQL model
- Logical data model can be mapped to an internal data model that represents the data’s physical
storage details
-> clearly describes which data is stored where, in what format, which indexes are provided to
speed up retrieval, etc.
-> highly DBMS specific
- External data model contains various subsets of the data items in the logical model, also called views,
tailored towards the needs of specific applications or groups of users
, 4.3. The three layer architecture:
= a framework designed to organize how data is managed, accessed, and abstracted in a database
system
-> it provides a logical separation between the physical storage of data and the user’s interactions with
it, making the database system more flexible, efficient, and user-friendly
3 layers:
1) External layer:
= view level
= the topmost layer where individual users or applications interact with the database, it
defines what specific data the users see and how they see it
-> 3 views specific information: finance department, customer service and logistics
department
2) Conceptual layer:
= logical level
= defines the logical structure of the entire database, independent of physical storage
details
3) Internal layer:
= physical level
= lowest layer that deals with the physical storage of data in the database (how and
where)
advantages:
- efficiency
- maintainability
- performance
- security
- ...
4.4. Catalog:
= heart of the DBMS
= 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 make sure their consistency is guaranteed
CHAPTER 1: FUNDAMENTAL CONCEPTS OF DATABASE MANAGEMENT:
1. Applications of database technology:
data is everywhere and comes in different shapes and volumes
- Storage and retrieval of traditional numeric and alphanumeric data in an inventory application
- Multimedia applications (e.g., YouTube, Spotify)
-> audio, pictures, video’s
- Biometric applications (e.g., fingerprints, retina scans)
-> used for security
- Wearable applications (e.g., FitBit, Apple Watch)
-> health, fitness
- Geographical Information Systems (GIS) applications (e.g., Google Maps)
- Sensor applications (e.g., nuclear reactor)
- Big Data applications (e.g., Walmart)
- Internet of Things (IoT) applications (e.g., Telematics)
2. Key definitions:
A database = a collection of related data items within a specific business process or problem setting (such
as Product, Customer, Invoice, Supplier, PurchaseOrders and they have relations)
-> has a target group of users and applications
->
A Database Management System (DBMS) = the software package used to define, create, use and maintain
a database
-> consists of several software modules, each with their specific functionality
-> popular DBMS vendors are Oracle, Microsoft and IBM, whereas MySQL is a well-known opensource
DBMS
=> combination of a DBMS and a database = a database system
3. File vs. database approach to data management:
o File approach:
= each application uses its own data files, many using similar data
- duplicate or redundant information will be stored
- danger of inconsistent data
- strong coupling between applications and data
- hard to manage concurrency control (simultaneous access to the same data)
- hard to integrate applications aimed at providing cross-company services
, o Database approach:
= all data is stored and managed centrally by DBMS
= applications directly interface with DBMS instead of with their own files
= DBMS delivers the desired data upon request to each application
= DBMS stores and manages 2 types of data: raw data and meta data
-> key difference: meta data is no longer included in the applications, but is now properly managed by
the DBMS self
- superior to the file approach in terms of efficiency, consistency and maintenance
- loose coupling between applications and data
- facilities provided for data querying and data retrieval
o File approach: Database approach (SQL):
4. Elements of a database system:
4.1. Database model vs. instances:
• Database model or database schema:
= provides the description of the database data at different levels of detail and specifies the various
data items, their characteristics and relationships, constraints, storage details, etc.
– specified during database design and not expected to change too frequently
– stored in the catalog (heart DBMS)
example:
Student (number, name, address, email)
Course (number, name)
Building (number, address)
-> 3 data-items : student, course, building
-> characteristics: number, name, address, email
, • Database state:
= represents the data in the database at a particular moment
– also called the current set of instances
– adding, updating or removing data: typically changes on an ongoing basis
example:
4.2. Data Model:
- Database model is comprised of different data models, each describing the data from different
perspectives
-> good data model is the start of every successful database application
- A data model provides a clear and unambiguous description of the data items, their relationships and
various data constraints from a particular perspective
-> several types of data models will be developed during a database design process
- A conceptual data model provides a high-level description of the data items (supplier, product) with their
characteristics (supplier name, product number) and relationships (supplier can supply products)
-> communication instrument between information architect and business user to make sure
that the data requirements are captured and modeled
-> should be implementation independent, user-friendly, and close to how the business user
perceives the data
-> usually represented using an Enhanced-Entity Relationship (EER) model, or an object
oriented model
- Logical data model is a translation or mapping of the conceptual data model towards a specific
implementation environment
-> can be a hierarchical, CODASYL, relational, object-oriented, extended relational, XML or
NoSQL model
- Logical data model can be mapped to an internal data model that represents the data’s physical
storage details
-> clearly describes which data is stored where, in what format, which indexes are provided to
speed up retrieval, etc.
-> highly DBMS specific
- External data model contains various subsets of the data items in the logical model, also called views,
tailored towards the needs of specific applications or groups of users
, 4.3. The three layer architecture:
= a framework designed to organize how data is managed, accessed, and abstracted in a database
system
-> it provides a logical separation between the physical storage of data and the user’s interactions with
it, making the database system more flexible, efficient, and user-friendly
3 layers:
1) External layer:
= view level
= the topmost layer where individual users or applications interact with the database, it
defines what specific data the users see and how they see it
-> 3 views specific information: finance department, customer service and logistics
department
2) Conceptual layer:
= logical level
= defines the logical structure of the entire database, independent of physical storage
details
3) Internal layer:
= physical level
= lowest layer that deals with the physical storage of data in the database (how and
where)
advantages:
- efficiency
- maintainability
- performance
- security
- ...
4.4. Catalog:
= heart of the DBMS
= 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 make sure their consistency is guaranteed