المملكة العربيـة السـعودية Kingdom of Saudi Arabia
وزارة التعليم Ministry of Education
جامعة نجران Najran University
كلية علوم الحاسب ونظم المعلومات Faculty of Computer Science and
Information Systems
Department of Computer Science
Fundamentals of Database Systems (340CIS-3)
Tutorial 1
Question 1
1. Discuss the main characteristics of the database approach and how it differs
from Traditional file systems.
:Data abstraction .2
A data model is used to hide storage details and present the users with a .3
.conceptual view of the database
Programs refer to the data model constructs rather than data storage details .4
:Support of multiple views of the data .5
Each user may see a different view of the database, which describes only the .6
.data of interest to that user
:Sharing of data and multi-user transaction processing .7
Allowing a set of concurrent users to retrieve from and to update the .8
.database
Concurrency control within the DBMS guarantees that each transaction is .9
correctly executed or aborted
Recovery subsystem ensures each completed transaction has its effect .10
permanently recorded in the database
OLTP (Online Transaction Processing) is a major part of database .11
applications; allows hundreds of concurrent transactions to execute per
.second
12. Explain the advantage of database approach
Providing optimization of queries for efficient processing .13
Providing backup and recovery services .14
Providing multiple interfaces to different classes of users .15
Representing complex relationships among data .16
Enforcing integrity constraints on the database .17
المملكة العربيـة السـعودية Kingdom of Saudi Arabia
وزارة التعليم Ministry of Education
جامعة نجران Najran University
كلية علوم الحاسب ونظم المعلومات Faculty of Computer Science and
Information Systems
Drawing inferences and actions from the stored data using deductive and .18
active rules and triggers
Question 2
What are the responsibilities of the DBA and the database `?
Database Design and Modeling:
Database Implementation and Maintenance:
Database Performance Tuning:
Database Performance Tuning:
Question 3
. What are the different types of database end users? Discuss the main
activities of each.
types of database end users activities
Casual access database occasionally when needed
Naive/Parametric They use previously well-
defined functions in the
form of “canned
transactions” against the
database. Users of mobile
apps mostly fall in this
category
Users of mobile apps
المملكة العربيـة السـعودية Kingdom of Saudi Arabia
وزارة التعليم Ministry of Education
جامعة نجران Najran University
كلية علوم الحاسب ونظم المعلومات Faculty of Computer Science and
Information Systems
mostly fall in this
category
Sophisticated work closely with the stored
.database
Stand-alone Mostly maintain personal
databases using ready-to-use
.packaged applications
Question 4
Discuss the capabilities that should be provided by a DBMS. utilities and tools and
their functions.
DBMS Capabilities, Utilities, and Tools
A Database Management System (DBMS) offers a range of capabilities that
facilitate efficient data storage, retrieval, management, and security. Here's a
breakdown of key features and supporting utilities/tools:
1. Data Definition and Manipulation:
Data Definition Language (DDL)
المملكة العربيـة السـعودية Kingdom of Saudi Arabia
وزارة التعليم Ministry of Education
جامعة نجران Najran University
كلية علوم الحاسب ونظم المعلومات Faculty of Computer Science and
Information Systems
o Utilities: Schema creation tools, database migration tools.
Data Manipulation Language (DML)
Utilities: Query languages (e.g., SQL), data import/export tools, data
cleansing tools.
Data Security and Access Control:
User Management
o Utilities: User management tools, role-based access control
(RBAC) tools.
Data Encryption
Utilities: Encryption/decryption tools, data masking tools.
Data Concurrency Control:
Locking Mechanisms:
o Utilities: Concurrency control algorithms, optimistic locking,
pessimistic locking.
Database Recovery: Provides mechanisms to recover data in case of
failures (e.g., hardware crashes, software bugs, accidental deletions).
o Utilities: Backup and recovery tools, archiving tools.
5. Database Performance Optimization:
Query Optimization: Analyzes and optimizes user queries to improve
data retrieval speed and efficiency.
o Utilities: Query optimization tools, indexing tools, statistics
gathering tools.
المملكة العربيـة السـعودية Kingdom of Saudi Arabia
وزارة التعليم Ministry of Education
جامعة نجران Najran University
كلية علوم الحاسب ونظم المعلومات Faculty of Computer Science and
Information Systems
Question 5
Discuss the main categories of data models
Conceptual (high-level, semantic) data models:
Provide concepts that are close to the way many users perceive data.
(Also called entity-based or object-based data models.)
Physical (low-level, internal) 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
Implementation (representational) data models:
Provide concepts that fall between the above two, used by many
commercial DBMS implementations (e.g. relational data models used
in many commercial systems).
Question6
1. What is the difference between a database schema and a database state?
database schema database state
The description of a :Database State
database. Includes
descriptions of the Refers to the content of a
database structure, data database at a moment in
types, and the constraints .time
on the database
Schema Diagram:An illustrative :Initial Database State
display of (most aspects of) a
.database schema Refers to the database state when it
is initially loaded into the system
المملكة العربيـة السـعودية Kingdom of Saudi Arabia
وزارة التعليم Ministry of Education
جامعة نجران Najran University
كلية علوم الحاسب ونظم المعلومات Faculty of Computer Science and
Information Systems
Schema Construct: A component :Valid State
of the schema or an object within
the schema, e.g., STUDENT, A state that satisfies the structure
COURSE and constraints of the database
Distinction: The database Distinction :The database state
schema changes very changes every time the database
.infrequently is updated
.Schema is also called intension .State is also called extension
2. Describe the three-schema architecture. Why do we need mappings between
schema levels? How do different schema definition languages support this
architecture?
:Proposed to support DBMS characteristics of
.Program-data independence
.Support of multiple views of the data
Not explicitly used in commercial DBMS products, but has been useful in
explaining database system organization
Defines DBMS schemas at three levels:
Internal schema :
at the internal level to describe physical storage structures and
access paths (e.g indexes).
Typically uses a physical data model.
- Conceptual schema at the conceptual level to describe the structure and
constraints for the whole database for a community of users.
-Uses a conceptual or an implementation data model.
- External schemas at the external level to describe the various user views.
-Usually uses the same data model as the conceptual schema
المملكة العربيـة السـعودية Kingdom of Saudi Arabia
وزارة التعليم Ministry of Education
جامعة نجران Najran University
كلية علوم الحاسب ونظم المعلومات Faculty of Computer Science and
Information Systems
Mappings among schema levels are needed to transform requests
and data.
- Programs refer to an external schema, and are mapped by the
DBMS to the internal schema for execution.
-Data extracted from the internal DBMS level is reformatted to
match the user’s external view (e.g. formatting the results of an SQL
query for display in a Web page)
1. How do different schema definition languages support this architecture?
2. Most data-related description languages or tools that are
concerned with schemas focus on the "physical level" and
"view level", with the "conceptual level" mostly used in
putting together the schema design itself. The physical model
in most relational databases is described using SQL DDL . In
NoSQL wor lds, physical schemas can be attached to
particular records using JSON or XML in the fashion of
MongoDB or Mar kLog ic , or more generally described using a
kind of DDL in something like Apache Cassandra . There are
المملكة العربيـة السـعودية Kingdom of Saudi Arabia
وزارة التعليم Ministry of Education
جامعة نجران Najran University
كلية علوم الحاسب ونظم المعلومات Faculty of Computer Science and
Information Systems
languages like UML that try to describe conceptual schemas,
but these aren't widely used these days, although they were a
"hot thing" for a time in the mid and late 1990s. For the most
part in the relational world, the closest thing to a "language"
for a "conceptual schema" is probably E ntity-relationship
model diagramming and description tools. Tools like
Embarcadero Technologies E/R Studio can reverse-engineer a
ER diagram from an existing SQL schema and generate SQL
DDL from a user-created ER diagram. The "view level" or
"external level" is typically implemented outside of data
managers in user-side code, possibly using O bject-relational
mapping tools like Hibernate to convert structures that are in
"physical layer" schemas to more "external-friendly"
structures that ultimately map to display or user input UI
elements in application code. Other code may just have a
"database layer" that completely implements this interface
inside the API (and a lot of code will use both a "database
layer" API as well as OR mapper tools and libraries).
3. What is the difference between logical data independence and physical data
independence?
4. Discuss some types of database utilities and tools and their functions.
5. Compare between two Tier Client-Server Architecture and Three Tier Client-
Server Architecture
6. Discuss the Tree Schema architectures