0% found this document useful (0 votes)
36 views

Fundamental of Data Base

Uploaded by

Anteneh solomon
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
36 views

Fundamental of Data Base

Uploaded by

Anteneh solomon
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 40

HARAR TEACHERS EDUCATION AND

BUSINESS COLLEGE

Course Title: Fundamentals of Database Systems


Course Number: CoSc2041 crhr(3)
By Inst:-Anteneh.S (MscIT)
2024
course objectives:-This course introduces the students to the overview, design and
implementation of database systems
At the end of this course, students will be able to:
 Understand what database is, database system and DBMS
 Differentiate database system from file system
 Identify the pros and cons of manual approach, file based approach and
database approach
 Understand the basic principles of database design systems using different
database models
 Appreciate the use of database system in the real world.
 Design different types of databases
 Understand database normalization & functional dependency
 Understand the principles of relational database management systems and
their languages
 Understand file organizations and storage management, and index structure
for files
Course outline
Chapter 1: Introduction to Database Systems (2
hours)
1.1. Overview
1.2. Basics of Database
1.3. File organization verses Database approach
1.4. Users and actors of Database system
1.5. Characteristics of the Database Approach
1.6. Actors on the Scene
Chapter 2: Database System Architecture (2
hours)
2.1. Data models, Schemas, and Instances
2.2. Over view of data models
2.3. Architecture and Data Independence
2.4. Database Language and Interface
2.5. The Database System Environment
2.6. Classification of DBMS
CHAPTER -1
INTRODUCTION TO DATABASE
SYSTEMS

Data , data Base ,system , Data base System, DBMS


CHAPTER -1
INTRODUCTION TO DATABASE
SYSTEMS

• What is Data ?
• What is Data Base ?
• What is system?
• What is Data base management system
Data is information or pieces of information that can be
processed by a computer. It can be in the form of text,
numbers, images, or other forms of media. Data is often
collected and used to support decision-making, analysis, and
other activities. It is an essential part of the operation of
computers and other digital devices, as well as many modern
scientific, business, and social systems.
Cont..

What is Data?
Data can be anything and
everything. Any information
or fact can be considered as
data.
Your name, age, data of birth
or any other information such
as your house address, bank
balance, vehicle you drive or
even the food you eat can be
considered as data.
Database Definition
A database is a systematic or organized collection of
related information that is stored in such a way that it
can be easily accessed, retrieved, managed, and
updated. It is where all data is stored, very much like a
library that houses a wide range of books from
different genres. Think of data as books.
Cont..
What Is a Database?
A database is an organized collection of
data, stored and accessed electronically.
Databases are used to store and manage
large amounts of
structured and unstructured data, and
they can be used to support a wide range
of activities, including data storage, data
analysis, and data management.
Cont..

• Database can be considered as a


container filled with data or
information which is
electronically stored in a
computer system.
• Data in any form can be stored
into the database.
Purpose of storing data in a
database is so that it can be
easily accessed, modified,
protected and analyzed.
Cont…
You may already be using database everyday
without your knowledge because most of the
websites or mobile apps that you use
everyday such as Google, Instagram,
WhatsApp, Facebook etc already use
database to store their data.

As an example, let’s say, for your college


demo project, you plan to develop a simple
college timesheet web application.
Lot of people refer to database as DBMS but
that’s not entirely correct because database is
just a container which stores data whereas
Database Management System or DBMS is a
software which is used to manage your
database.

You need DBMS to interact with database, to


store, modify, retrieve and protect data. DBMS
is also required to create, modify and delete
databases.

Users like you and me can use DBMS to enter commands in


specific language to interact with Database. Example of a
DBMS is MySQL, PostgreSQL, MongoDB, Neo4j, Cassandra,
oracle access etc.
 DBMS
 Set of programs to access the data

 An environment that is both convenient

and efficient to use


• Database system:
• The DBMS software together with the data itself.
Sometimes, the applications are also included.
DATA BASE USER TYPE
Database Administrator
• Database Administrator which is commonly known by its
short form i.e., DBA is a person or a team who defines the
schema and also controls the three levels of the database.
• The DBA will then create a new account id and password
for the user if he/she needs to access the database.
• DBA is also responsible for providing security to the
database and he allows only authorized users to access
or modify the database
• DBA also monitors the recovery and backup and provides
technical support
• The DBA has a DBA account in the DBMS which is called a
system or super user account.
System Analyst &Naive users
System Analyst
• Those users that check whether the requirements of the end users are
fulfilled or not are known as System Analysts.

Naïve Users
• Naive users are unsophisticated users who interact with the system by
invoking one of the application programs that have been written
previously.
• For example, a bank teller who needs to transfer $50 from account A
to account B invokes a program called transfer. This program asks
the teller for the amount of money to be transferred, the account from
which the money is to be transferred, and the account to which the
money is to be transferred.
• The typical user interface for naive users is a forms interface, where the
user can fill in appropriate fields of the form. Naive users may also
simply read reports generated from the database.
Application Programmers
Application programmers are
computer professionals who
write application programs.
Application programmers can
choose from many tools to
develop user interfaces.
Sophisticated Users

• Sophisticated users interact with the system


without writing programs. Instead, they form
their requests in a database query language.
They submit each such query to a query
processor, whose function is to break down
DML statements into instructions that the
storage manager understands. Analysts who
submit queries to explore data in the
database fall in this category.
Specialized Users & Casual Users
• Specialized users are sophisticated users who write specialized
database applications that do not fit into the traditional data-
processing framework.
Casual Users
• These are the type of users that use the database very less or
occasionally.
Characteristics of the Database Approach
Data Independence
• One of the fundamental characteristics of database approach in DBMS
is data independence. This refers to the ability to modify the structure
of a database without impacting the programs that access the data.
By separating the logical and physical aspects of the database,
changes to the physical structure can be made without affecting the
logical structure.
• For example, let's consider a database that stores employee
information. The logical structure may include fields like employee
name, ID, and salary. The physical structure, on the other hand,
includes details such as the data's location on disk and the file format.
By decoupling these two aspects, database administrators can modify
the physical structure, such as moving data to a new disk or changing
file formats, without disrupting the programs that interact with the data.
Data Integrity
• Another crucial and main characteristics of database approach is data integrity. This
ensures the accuracy and consistency of data within the database. Various
techniques, such as data validation, data constraints, and data normalization,
are employed to achieve data integrity.
• Data validation is the process of checking the accuracy and consistency of data
entered into the database. For instance, when inputting employee information, a
program may verify that the employee ID is unique and that the salary falls within
a specific range.
• Data constraints are used to enforce rules on the data within the database. An
example of a constraint could be ensuring that an employee's salary is greater than
zero and less than one million dollars.
• Data normalization involves organizing the database to minimize redundancy
and enhance consistency.
• For instance, in a database storing employee and department information, data
normalization would involve creating a separate table for department details and
establishing a relationship between the employee and department tables.
Data Sharing
• The database approach also emphasizes data sharing, enabling
multiple users to access and update data simultaneously.
Techniques such as locking and concurrency control are employed
to facilitate these characteristics of database approach.
• Locking involves preventing other users from accessing
specific data while it is being updated. For instance, when a user
is modifying an employee's salary, the database may lock that
employee's record to prevent others from making concurrent
changes.
• Concurrency control manages access to the database by
multiple users. Techniques like time stamping, optimistic
concurrency control, and pessimistic concurrency control are
employed to ensure data consistency and prevent conflicts.
Backup and Recovery
• To safeguard against data loss due to system failures or unexpected
events, the database approach incorporates backup and recovery
mechanisms. These mechanisms include database backups, transaction
logs, and replication.
• Database backups involve creating copies of the entire database or
specific portions to restore data in case of loss. Regular backup schedules
can be established, and backups can be stored on separate servers or in
the cloud.
• Transaction logs maintain a record of all changes made to the database,
such as insertions, updates, and deletions. These logs enable the
reconstruction of the database's state at a specific point in time,
facilitating data recovery.
• Replication involves copying the data from a database to multiple
servers, ensuring redundancy in case of data loss. Techniques like
master-slave replication and peer-to-peer replication can be employed
to enhance data availability and reliability.
Scalability
• Scalability is one of the critical characteristics of the database
approach, enabling databases to handle vast amounts of data
and numerous users without performance degradation.
Techniques like horizontal scaling and vertical scaling are
utilized to achieve scalability.
• Horizontal scaling involves adding more servers to the database
system to manage increased workload. Strategies like shading,
which distributes data across multiple servers, and load
balancing, which evenly distributes the workload, can be
implemented to achieve horizontal scaling.
• Vertical scaling involves enhancing the resources, such as
memory and CPU power, of a single server to handle increased
workload. Hardware upgrades and increasing the number of
CPU cores are examples of vertical scaling techniques.
Security
• Security is of paramount importance in the database approach,
ensuring that data remains protected from unauthorized access,
modification, or deletion. Techniques like authentication,
authorization, and encryption are employed to maintain data security.
• Authentication verifies the identity of users attempting to access the
database. Methods such as username and password authentication or
biometric authentication can be utilized.
• Authorization controls access to specific database resources based on
user roles or permissions. Techniques like access control lists or role-
based access control can be employed to enforce authorization
policies.
• Encryption converts data into a coded format that can only be
deciphered by authorized users. Techniques like symmetric key
encryption or asymmetric key encryption can be used to encrypt
sensitive data.
Real-life Examples
• Let's consider a real-life example to better understand how
organizations utilize the database approach. An e-commerce
company relies on a database to store customer information,
product details, and sales data. By employing data
independence, the company can make changes to the database
structure without affecting the customer-facing website.
Data integrity ensures that customer information is accurate
and consistent, while data sharing enables multiple customer
service representatives to access and update customer details
concurrently. Backup and recovery mechanisms protect against
data loss, and scalability allows the database to handle an ever-
increasing volume of information. Lastly, security measures
protect sensitive customer data from unauthorized access.
Cont….
In the healthcare sector, a database approach is
used to maintain electronic health records (EHRs).
These databases prioritize data independence,
integrity, and sharing, enabling healthcare
professionals to access and update patient
information simultaneously. Scalability ensures
that the database can handle significant volumes of
data and multiple users. Robust security measures
protect patients' sensitive health information from
unauthorized access or modification.
Assignment 1
Prepare a short note on Types of data base
and attach it via ( at least 5 pages pdf format)
[email protected]

You might also like