0% found this document useful (0 votes)
3 views6 pages

DBMS Lecture 1

The document provides an overview of databases and Database Management Systems (DBMS), detailing key concepts such as data, database schema, tables, and types of databases including relational, NoSQL, and object-oriented. It also outlines the components and functions of a DBMS, advantages and disadvantages of using a DBMS, and popular DBMS software. Overall, it serves as an introductory guide to understanding databases and their management systems.

Uploaded by

hejod81894
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)
3 views6 pages

DBMS Lecture 1

The document provides an overview of databases and Database Management Systems (DBMS), detailing key concepts such as data, database schema, tables, and types of databases including relational, NoSQL, and object-oriented. It also outlines the components and functions of a DBMS, advantages and disadvantages of using a DBMS, and popular DBMS software. Overall, it serves as an introductory guide to understanding databases and their management systems.

Uploaded by

hejod81894
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/ 6

Lecture 1

Overview of Database, Database Management System (DBMS)

Database

A database is an organized collection of data, generally stored and accessed


electronically from a computer system. Databases can be simple text files or
complex structures managed by sophisticated database management systems.

Key Concepts in Databases

1. Data:
○ Raw facts and figures that can be processed to produce meaningful
information.
2. Database Schema:
○ The structure that defines the organization of data in a database,
including tables, fields, relationships, indexes, etc.
3. Tables:
○ Collections of related data entries consisting of rows and columns.
Each row represents a unique record, and each column represents a
field of the record.
4. Fields (Columns):
○ Attributes of the data stored in a table. Each field has a specific
data type, such as integer, string, date, etc.
5. Records (Rows):
○ Individual entries in a table. Each record contains data for each field
defined in the table.
6. Primary Key:
○ A unique identifier for a record in a table. No two rows can have the
same primary key value.
7. Foreign Key:
○ A field in one table that uniquely identifies a row in another table,
establishing a relationship between the two tables.
8. Indexes:
○ Data structures that improve the speed of data retrieval operations
on a database table.
9. Views:
○ Virtual tables created by a query joining one or more tables. They
provide a way to present data without storing it physically.

Types of Databases

1. Relational Databases:
○ Use tables to store data and SQL (Structured Query Language) for
querying and managing data. Examples: MySQL, PostgreSQL,
Oracle, SQL Server.
2. NoSQL Databases:
○ Designed for specific data models and have flexible schemas. They
include document databases, key-value stores, column-family
stores, and graph databases. Examples: MongoDB, Cassandra,
Redis, Neo4j.
3. Object-Oriented Databases:
○ Store data in the form of objects, similar to object-oriented
programming. Examples: ObjectDB, db4o.
4. Hierarchical Databases:
○ Organize data in a tree-like structure. Examples: IBM Information
Management System (IMS).
5. Network Databases:
○ Use a graph structure to represent relationships among data.
Examples: Integrated Data Store (IDS), CA-IDMS.
6. Time-Series Databases:
○ Optimized for storing and querying time-series data. Examples:
InfluxDB, TimescaleDB.
7. NewSQL Databases:
○ Combine the scalability of NoSQL systems with the ACID
guarantees of traditional relational databases. Examples: Google
Spanner, CockroachDB.
Database Management System (DBMS)

A Database Management System (DBMS) is software that interacts with


end-users, applications, and the database itself to capture and analyze data. It
provides tools to manage databases effectively.

Components of a DBMS

1. Database Engine:
○ The core service for accessing and processing data.
2. Database Schema:
○ Metadata that defines the structure of the database, including
tables, indexes, views, and relationships.
3. Query Processor:
○ Translates user queries into low-level instructions for the database
engine.
4. Transaction Manager:
○ Ensures that all database transactions are processed reliably and
adhere to ACID (Atomicity, Consistency, Isolation, Durability)
properties.
5. Storage Manager:
○ Manages the storage of data on disk, including data files, index
files, and log files.
6. Database Utilities:
○ Tools for backup, recovery, data import/export, and database
maintenance.

Functions of a DBMS

1. Data Definition:
○ Allows users to define the database structure using Data Definition
Language (DDL) statements like CREATE, ALTER, and DROP.
2. Data Manipulation:
○ Provides tools for inserting, updating, deleting, and querying data
using Data Manipulation Language (DML) statements like SELECT,
INSERT, UPDATE, and DELETE.
3. Data Security:
○ Ensures that only authorized users can access and manipulate data.
It provides authentication, authorization, and encryption
mechanisms.
4. Data Integrity:
○ Enforces data integrity constraints to maintain data accuracy and
consistency, including primary key, foreign key, unique, and check
constraints.
5. Data Backup and Recovery:
○ Provides tools and processes for backing up data and restoring it in
case of data loss or corruption.
6. Data Concurrency:
○ Manages concurrent access to data by multiple users, ensuring data
consistency and isolation of transactions.
7. Data Abstraction:
○ Provides a level of abstraction between the physical storage of data
and user interactions, allowing users to interact with data at a
higher level.
8. Performance Tuning:
○ Offers tools and techniques for optimizing database performance,
including indexing, query optimization, and storage management.

Types of DBMS

1. Hierarchical DBMS:
○ Data is organized in a tree-like structure. Example: IBM's IMS.
2. Network DBMS:
○ Data is organized in a graph, allowing many-to-many relationships.
Example: Integrated Data Store (IDS).
3. Relational DBMS (RDBMS):
○ Data is stored in tables, and relationships are managed using
foreign keys. Example: MySQL, PostgreSQL, Oracle.
4. Object-Oriented DBMS:
○ Data is stored as objects, similar to object-oriented programming.
Example: ObjectDB.
5. NoSQL DBMS:
○ Designed for specific data models and flexible schemas. Examples:
MongoDB (document-based), Redis (key-value), Cassandra
(column-family), Neo4j (graph).
Popular DBMS Software

1. MySQL:
○ An open-source relational database management system. Widely
used for web applications.
2. PostgreSQL:
○ An open-source object-relational database system known for its
robustness and standards compliance.
3. Oracle Database:
○ A commercial RDBMS known for its advanced features and high
performance.
4. Microsoft SQL Server:
○ A relational database management system developed by Microsoft,
widely used in enterprise environments.
5. MongoDB:
○ A NoSQL document-oriented database that uses JSON-like
documents for data storage.
6. Cassandra:
○ A distributed NoSQL database designed for handling large amounts
of data across many commodity servers.
7. Redis:
○ An in-memory key-value store known for its high performance.
8. SQLite:
○ A lightweight, file-based relational database system commonly
used in embedded systems and mobile applications.

Advantages of Using a DBMS

1. Data Redundancy Control:


○ Minimizes data duplication by integrating data across different
applications.
2. Data Sharing:
○ Allows multiple users and applications to access data concurrently.
3. Data Security:
○ Provides robust security features to protect data from unauthorized
access.
4. Data Integrity:
○ Enforces data integrity constraints to maintain accurate and
consistent data.
5. Backup and Recovery:
○ Simplifies data backup and recovery processes.
6. Data Independence:
○ Provides a layer of abstraction between applications and physical
data storage, making it easier to change the database schema
without affecting applications.

Disadvantages of Using a DBMS

1. Complexity:
○ DBMS software can be complex and require specialized knowledge
for installation, configuration, and maintenance.
2. Cost:
○ Commercial DBMS software can be expensive, including licensing
and hardware costs.
3. Performance:
○ For very small applications, the overhead of a DBMS might be
unnecessary and could degrade performance.
4. Resource Intensive:
○ DBMS systems can require significant system resources, including
memory, CPU, and storage.

Lecture 2

You might also like