الجامعة السعودية االلكترونية
الجامعة السعودية االلكترونية
26/12/2021
College of Computing and Informatics
Introduction to Database
Introduction to Database
Databases and Database Users
Contents
1. Databases and Database Users
Weekly Learning Outcomes
1. Explain the basic concepts of Database.
2. Explain types of Database Users.
Required Reading
1. Chapter 1: The Complete chapter
(Fundamentals of Database Systems, Global Edition, 7th
Edition (2017) by Ramez Elmasri & Shamkant Navathe)
Recommended Reading
Database System Concepts and Architecture:
https://cs.uwaterloo.ca/~tozsu/courses/CS338/lectures/14%20DB%20System.pdf
NoSQL databases: https://courses.cs.vt.edu/cs4604/Spring21/pdfs/12-nosql.pdf
This Presentation is mainly dependent on the textbook: Fundamentals of Database Systems, Global Edition, 7th Edition (2017) by Ramez Elmasri & Shamkant Navathe
• Databases and Database Users
Chapter 1 Outline
Types of Databases and Database Applications
Basic Definitions
Typical DBMS Functionality
Example of a Database (UNIVERSITY)
Main Characteristics of the Database Approach
Types of Database Users
Advantages of Using the Database Approach
When Not to Use Databases
Basic Definitions (1)
Data
Known facts that can be recorded and have an implicit meaning.
Example: the names, telephone numbers, and addresses of the people you know
Database
A collection of related data in a DBMS.
Example: the list of names and addresses, and computerized catalog of a large library
Defining a database
Involves specifying the data types, structures, and constraints of the data to be stored in the
database.
Meta-data
The database definition or descriptive information is also stored by the DBMS in the form of a
database catalog or dictionary.
Database Management System (DBMS)
A computerized system that enables users to create and maintain a database. It is a general-
purpose software system that facilitates the processes of defining, constructing, manipulating,
and sharing databases among various users and applications.
Database System
The database and DBMS software together; Sometimes, the application programs and interfaces
are also included.
Basic Definitions (2)
Manipulating a database
Includes querying the database to retrieve specific data, updating the database, and
generating reports from the data.
Sharing a database
Allows multiple users and programs to access the database simultaneously.
Application program
Accesses the database by sending queries or requests for data to the DBMS.
Query
A query causes some data to be retrieved from the database.
Transaction
May cause some data to be read from and some data to be written into the database.
Protection
May includes system protection against hardware or software malfunction (or crashes) and
security protection against unauthorized or malicious access.
Maintenance
A typical large database has a life cycle of many years, so the DBMS must be allowing the
system to evolve as requirements change over time.
Simplified database system environment
Implicit Properties of a Database
A database represents some aspect of the real world, called
the miniworld or the universe of discourse (UoD). Changes to
the miniworld are reflected in the database.
A database is a logically coherent collection of data with some
inherent meaning. A random assortment of data cannot
correctly be referred to as a database.
A database is designed, built, and populated with data for a
specific purpose. It has an intended group of users and some
preconceived applications in which these users are interested.
Example of a Database UNIVERSITY Application
(1)
Mini-world for the example:
Part of a UNIVERSITY environment.
Some mini-world entities:
INSTRUCTORs
STUDENTs
DEPARTMENTs
COURSEs
SECTIONs (of COURSEs)
Some mini-world relationships:
SECTIONs are of specific COURSEs
STUDENTs take SECTIONs
COURSEs have prerequisite COURSEs
INSTRUCTORs teach SECTIONs
COURSEs are offered by DEPARTMENTs
STUDENTs major in DEPARTMENTs
Note: The above entities and relationships are typically expressed in the ENTITY-
RELATIONSHIP data model
Example of a Database UNIVERSITY Application (2)
Example of a Database UNIVERSITY Application (3)
Typical DBMS Functionality
Define a particular database in terms of its data types, structures, and
constraints
Construct or Load the initial database contents on a secondary storage
medium
Manipulating the database:
Retrieval: Querying, generating reports
Modification: Insertions, deletions and updates to its content
Accessing/changing the database through Web applications
Processing and Sharing by a set of concurrent users and application
programs
Protection or Security measures to prevent unauthorized access
“Active” processing to take internal actions on data
Presentation and Visualization of data
Maintaining the database and associated programs over its lifetime
Main Characteristics of the Database Approach (1)
Self-describing nature of a database system:
A DBMS catalog stores the description of a particular database
The description is called meta-data
This allows the DBMS software to be integrated with different database
applications
Insulation between programs and data:
Allows changing data structures and data storage organization without having to
change the DBMS access programs.
Accomplished through data abstraction
A data model is used to hide storage details and present the users with a conceptual
view of the database.
Programs refer to the data model constructs rather than data storage details Called
program-data independence.
Main Characteristics of the Database Approach (2)
Support of multiple views of the data:
Each user may see a different view of the database, which
describes only the data of interest to that user.
Sharing of data and multi-user transaction processing:
Allowing a set of user transactions to access and update the
database concurrently (at the same time).
Concurrency control within the DBMS guarantees that each
transaction is correctly executed or aborted
Recovery subsystem ensures each completed transaction has its
effect permanently recorded in the database
OLTP (Online Transaction Processing) is a major part of database
applications (allows hundreds of concurrent transactions to
execute per second)
Example of meta-date in a simplified database catalog
Types of Database Users (Actors on the scene)
Database administrators:
Responsible for authorizing/controlling access to the database; coordinating and monitoring
its use; acquiring software and hardware resources; and monitoring efficiency of
operations. The DBA is accountable for security breaches and poor system response time.
Database Designers:
Responsible for defining database structure, constraints, and transactions; communicate
with users to understand their needs.
End-users: Use the database for queries, reports, and updating the database content. Can be
categorized into:
Casual end-users: access database occasionally when needed
Naïve (or Parametric) end-users: largest section of end-user population.
Use previously implemented and tested programs (called “canned transactions”) to access/update the database.
Examples are bank-tellers or hotel reservation clerks or sales clerks.
Sophisticated end-users:
These include business analysts, scientists, engineers, etc. Many use tools of software packages that work closely with
the stored database.
Stand-alone end-users:
Mostly maintain personal databases using ready-to-use packaged applications.
Types of Database Applications
Traditional Applications:
Numeric and Textual Databases in Business Applications
More Recent Applications:
Multimedia Databases (images, videos, voice, etc.)
Geographic Information Systems (GIS)
Data Warehouses
Real-time and Active Databases
Many other applications
Advantages of Using the Database Approach
Controlling redundancy in data storage and in development and
maintenance efforts.
Restricting unauthorized access to data.
Providing persistent storage for program Objects
Providing Storage Structures (e.g. indexes) for efficient Query
Processing
Providing backup and recovery services.
Providing multiple interfaces to different classes of users.
Representing complex relationships among data.
Enforcing integrity constraints on the database.
Permitting inferencing and actions using rules and triggers
Allowing multiple “views” of the same data
Additional Implications of Using the Database Approach
Potential for enforcing standards:
Crucial for the success of database applications in large organizations.
Standards refer to data item names, display formats, screens, report
structures, meta-data, etc.
Reduced application development time:
The time needed to add each new application is reduced.
Flexibility to change data storage structures:
Storage structures may evolve to improve performance, or because of new
requirements.
Availability of up-to-date information:
Extremely important for on-line transaction systems such as airline, hotel, car
reservations.
Economies of scale:
Wasteful overlap of resources and personnel can be avoided by consolidating data
and applications across departments.
Historical Development of Database Technology
Early Database Applications using Hierarchical and Network Systems:
Starting in the mid-1960s and continuing through the 1970s and 1980s. Were based on three main
paradigms: hierarchical systems, network model–based systems, and inverted file systems.
Relational Model based Systems:
Relational model was introduced in 1970, and heavily researched and experimented with at IBM
Research and several universities. Relational DBMS Products emerged in the early 1980s and now
exist on almost all types of computers, from small personal computers to large servers.
Object-oriented and emerging applications:
Object Databases were introduced in late 1980s and early 1990s. Their use has not taken off much.
Many relational DBMSs have incorporated object database concepts, leading to a new category
called object-relational databases (ORDBs)
Extended relational systems add further capabilities (e.g. for multimedia data, XML, spatial, and
other data types)
Data on the Web and E-commerce Applications:
Starting in the 1990s, e-commerce emerged as a major application on the Web. The critical
information on e-commerce Web pages is dynamically extracted data from DBMSs, such as flight
information, product prices, and product availability.
The eXtended Markup Language (XML) is one standard for interchanging data among various types
of databases and Web pages.
Extending Database Capabilities
New functionality is being added to DBMSs in the following
areas:
Scientific Applications
XML (eXtensible Markup Language)
Image Storage and Management
Audio and Video Data Management
Data Warehousing and Data Mining
Spatial Data Management and Geographic Information
Systems
Time Series and Historical Data Management
Collecting and fusing data from distributed sensors
When not to use a DBMS
Main inhibitors (costs) of using a DBMS:
High initial investment and possible need for additional hardware.
Overhead for providing generality, security, concurrency control, recovery, and
other functions.
When a DBMS may be unnecessary:
If the database and applications are simple, well defined, and not expected to
change.
If there are stringent real-time requirements that may not be met because of
DBMS overhead.
If access to data by multiple users is not required.
When no DBMS may suffice:
If the database system is not able to handle the complexity of data because of modeling
limitations
If the database users need special operations not supported by the DBMS
When DBMS overhead makes it impossible to achieve the needed application
performance
Main Reference
1. Chapter 1: The Complete chapter
(Fundamentals of Database Systems, Global Edition, 7th
Edition (2017) by Ramez Elmasri & Shamkant Navathe)
Additional References
https://courses.cs.vt.edu/cs4604/Spring21/pdfs/1-intro.pdf
https://courses.cs.vt.edu/cs4604/Spring21/pdfs/12-nosql.pdf
This Presentation is mainly dependent on the textbook: Fundamentals of Database Systems, Global Edition, 7th Edition (2017) by Ramez Elmasri & Shamkant Navathe
Thank You