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

Lecture3 4 - Database Management System (DBMS)

The document provides an overview of Database Management Systems (DBMS), detailing its definition, typical functions, major components, roles in the database environment, and the advantages and disadvantages of using a DBMS. It emphasizes the importance of DBMS in managing data through functions such as data definition, manipulation, security, integrity, and transaction management. Additionally, it outlines various roles such as Database Administrator, Developer, Architect, Analyst, and End Users, highlighting their responsibilities and required skills.

Uploaded by

f2023266730
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views

Lecture3 4 - Database Management System (DBMS)

The document provides an overview of Database Management Systems (DBMS), detailing its definition, typical functions, major components, roles in the database environment, and the advantages and disadvantages of using a DBMS. It emphasizes the importance of DBMS in managing data through functions such as data definition, manipulation, security, integrity, and transaction management. Additionally, it outlines various roles such as Database Administrator, Developer, Architect, Analyst, and End Users, highlighting their responsibilities and required skills.

Uploaded by

f2023266730
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 21

Welcome to CC-230

Database Systems

Unit 2 – Database Management System (DBMS)

Department of Computer Science


School of Systems & Technology - SST
Lecture 3 & 4
What we will learn in Unit-2

▪ What is a Database Management System (DBMS)?


▪ Typical functions of a DBMS
▪ Major components of DBMS environment
▪ The database life cycle (DLC)
▪ Roles in the database environment
▪ History of databases / DBMS
▪ Advantages of DBMS
▪ Disadvantages of DBMS

2
What is a Database
Management System?

• A database management system (DBMS) is


system software for creating and managing
databases.

• A DBMS makes it possible for end users to create,


protect, read, update and delete data in
a database.

• DBMS serves as an interface between databases


and users or application programs, ensuring that
data is consistently organized and remains easily
accessible.

3
Typical functions of DBMS

1. Data Definition: This involves defining the structure of the database, including creating, modifying,
and deleting schemas, tables, views, indexes, etc.

2. Data Manipulation: DBMS allows users to interact with the data stored in the database. Common
operations include inserting, updating, deleting, and querying data.

3. Data Retrieval: It enables users to retrieve specific information from the database using queries.
Queries can range from simple to complex, using SQL or other query languages supported by the DBMS.

4. Data Security: DBMS provides mechanisms to ensure the security and integrity of the data. This
includes user authentication, access control, encryption, and auditing.
Example: Granting read-only access to a specific user:

5. Data Integrity: DBMS enforces data integrity constraints to maintain the accuracy and consistency of
data. This includes primary key constraints, foreign key constraints, unique constraints, etc.
4
Typical functions of DBMS

6. Concurrency Control: DBMS manages concurrent access to the database by multiple users or
applications to ensure data consistency and integrity.

▪ When multiple users or applications access a database simultaneously, concurrency control ensures that
data remains consistent and free from conflicts.

▪ Without concurrency control, two users might try to update the same record at the same time, leading to
data inconsistency.

▪ DBMS uses techniques like locking, timestamp ordering, and multi-version concurrency control (MVCC) to
handle concurrent transactions properly.

▪ Example: If two bank users try to withdraw money from the same account at the same time, the DBMS
ensures that both transactions are processed correctly, preventing double withdrawal.

7. Backup and Recovery: DBMS provides mechanisms for backing up data periodically and recovering
data in case of system failures, crashes, or other disasters.

5
Typical functions of DBMS

8. Transaction Management: DBMS ensures the atomicity, consistency, isolation, and


durability (ACID properties) of transactions. It supports transaction management through
features like commit, rollback, save points, and transaction logging.

▪ A DBMS manages transactions to ensure that all operations maintain the integrity and
reliability of the database.
▪ A transaction is a set of database operations that must be executed as a single unit.
▪ Transactions follow the ACID properties:
• Atomicity: Either all parts of a transaction occur, or none (e.g., money transfer either completes fully or
not at all).
• Consistency: A transaction brings the database from one valid state to another (no data corruption).
• Isolation – Transactions execute independently without interfering with each other.
• Durability – Once a transaction is committed, it remains permanent even after a system failure.
▪ Example: If a bank customer transfers money from Account A to Account B, but the system
crashes before completion, the DBMS ensures either the entire transfer happens or none of it,
preventing partial transactions. 6
Typical functions of DBMS

7. Performance Tuning: DBMS includes tools and techniques for optimizing the
performance of database operations, such as query optimization, indexing,
caching, and partitioning.

▪ Key Optimization Methods:


▪ Query Optimization: The DBMS determines the most efficient way to execute a query.
▪ Indexing: Creating indexes on frequently searched columns speeds up data retrieval.
▪ Caching: Stores frequently accessed data in memory for faster access.
▪ Partitioning: Divides large tables into smaller sections for improved performance.
▪ Example: If an e-commerce website has millions of customer records, using indexing helps
speed up searches for specific users.

7
Typical functions of DBMS

8. Replication and Distribution: Some DBMSs support replication and distribution of data
across multiple servers or locations for scalability, fault tolerance, and improved
performance.

▪ Replication: Creates copies of the database on multiple servers for redundancy and load
balancing.
▪ Distribution: Splits data across multiple locations (e.g., a global company storing customer
data in regional databases).
▪ Example: A social media platform with global users replicates its database across multiple
servers worldwide. This ensures users in different regions experience fast response times and
data remains available even if one server fails.

8
Major components of DBMS environment

9
10
Roles in the Database Environment

Database Administrator (DBA):


•Responsibilities:
• Installing, configuring, and upgrading DBMS software.
• Creating and managing user accounts and access permissions.
• Monitoring database performance and optimizing queries.
• Planning and implementing backup and recovery procedures.
• Ensuring data security and integrity.
• Designing and implementing database schemas and structures.
•Skills: Database administration, SQL proficiency, system administration, data modeling,
troubleshooting, security management. 11
Roles in the Database Environment

Database Developer:
•Responsibilities:
• Designing and implementing database schemas and structures based on application
requirements.
• Writing and optimizing SQL queries and stored procedures.
• Developing and maintaining database applications and interfaces.
• Collaborating with software developers to integrate databases with applications.
• Performance tuning and optimization of database operations.
•Skills: SQL proficiency, database design, query optimization, programming (e.g., Java, Python,
.NET), problem-solving. 12
Roles in the Database Environment

Database Architect / Designer:


•Responsibilities:
• Designing the overall architecture and strategy for the organization's databases.
• Evaluating and selecting appropriate database technologies and tools.
• Defining data models and schemas to support business requirements.
• Ensuring scalability, performance, and security of the database environment.
• Collaborating with other IT teams to integrate databases with other systems.
•Skills: Data architecture, database design patterns, knowledge of various database
technologies, data modeling, system integration.
13
Roles in the Database Environment

Data Analyst:
•Responsibilities:
• Extracting, transforming, and analyzing data from databases to support decision-making.
• Creating reports, dashboards, and visualizations to present insights from data.
• Identifying trends, patterns, and anomalies in data.
• Collaborating with business stakeholders to understand data requirements.
• Ensuring data quality and integrity.
•Skills: Data analysis, SQL proficiency, data visualization (e.g., Tableau, Power BI), statistical
analysis, domain knowledge.
14
Roles in the Database Environment

Application Developer:
•Responsibilities:
• Developing software applications that interact with databases.
• Integrating database functionality into applications.
• Writing and optimizing database queries and data access code.
• Ensuring data consistency and integrity within applications.
• Collaborating with database developers & administrators to optimize application performance.
•Skills: Programming languages (e.g., Java, Python, .NET), database interaction APIs, SQL proficiency,
software development methodologies.
15
Roles in the Database Environment

Data Steward:
•Responsibilities:
• Ensuring compliance with data governance policies and regulations.
• Managing metadata, data dictionaries, and data lineage.
• Establishing data quality standards and monitoring data quality.
• Collaborating with data owners and stakeholders to resolve data-related issues.
• Providing guidance and training on data management best practices.
•Skills: Data governance, data quality management, metadata management,
communication, problem-solving.
16
Roles in the Database Environment

End Users:
•Responsibilities:
• Database end users are individuals or entities who interact with a database system to
retrieve, input, modify, or analyze data.
• They are the ultimate consumers of the information stored in the database and may have
varying levels of technical expertise and access privileges.
• Common types: Casual Users, Operational Users, Technical Users, Executive Users etc.
• Skills: Data entry, data manipulation, report generation, data retrieval, data visualization, data
interpretation etc.
17
History of Databases / DBMS

18
Advantages of DBMS

19
Disadvantages of DBMS

20
Thankyou
Any Queries?

21

You might also like