• 1.
Data Models
• Data models define how data is structured, stored, and manipulated
within a database system. The primary data models are:
• a. Hierarchical Data Model
• Data is organized in a tree-like structure.
• Each parent can have multiple children, but each child has only one
parent.
• Example: File systems.
• b. Network Data Model
• Data is represented as a graph where records are nodes and relationships
are edges.
• Allows many-to-many relationships.
• Example: Airline reservation systems.
• c. Relational Data Model
• Data is stored in tables (relations) with rows and columns.
• Uses primary keys and foreign keys to establish relationships.
• Example: MySQL, PostgreSQL.
• d. Entity-Relationship Model (ER Model)
• Represents data using entities (objects) and
relationships.
• Visualized through ER diagrams.
• e. Object-Oriented Data Model
• Incorporates object-oriented programming concepts.
• Data is stored as objects, which include attributes
and methods.
• f. Document Data Model
• Designed for semi-structured data.
• Data is stored in document formats like JSON or XML.
• Example: MongoDB.
• 2. Relational Database Management Systems
(RDBMS)
• RDBMS is a type of DBMS based on the relational
model, where data is organized into tables.
• Key Concepts:
• Tables: Consist of rows (tuples) and columns
(attributes).
• Primary Key: Unique identifier for each row.
• Foreign Key: Establishes relationships between tables.
• Normalization: Process of organizing data to reduce
redundancy.
– Forms: 1NF, 2NF, 3NF, BCNF.
• Features:
• ACID compliance (Atomicity, Consistency,
Isolation, Durability).
• Data integrity and security.
• Supports SQL for querying and managing data.
• Examples of RDBMS:
• MySQL
• Oracle Database
• Microsoft SQL Server
• PostgreSQL
• 3. SQL (Structured Query Language)
• SQL is a standardized language for querying
and managing data in RDBMS.
• Types of SQL Commands:
• a. Data Definition Language (DDL):
• Used to define and modify database structures.
• Examples:
– CREATE TABLE table_name (...);
– ALTER TABLE table_name ADD column_name
datatype;
• DROP TABLE table_name;
• b. Data Manipulation Language (DML):
• Used to manipulate data within tables.
• Examples:
– INSERT INTO table_name VALUES (...);
– UPDATE table_name SET column_name=value
WHERE condition;
– DELETE FROM table_name WHERE condition;
• c. Data Query Language (DQL):
• Used to retrieve data.
• Example:
– SELECT column_name FROM table_name WHERE
condition;
• d. Data Control Language (DCL):
• Used to control access to data.
• Examples:
– GRANT SELECT ON table_name TO user;
– REVOKE SELECT ON table_name FROM user;
• e. Transaction Control Language (TCL):
• Used to manage transactions.
• Examples:
– COMMIT;
– ROLLBACK;
– SAVEPOINT savepoint_name;
• 4. Database Transactions
• A transaction is a sequence of operations performed
as a single logical unit of work.
• ACID Properties:
• Atomicity: Ensures all operations within a transaction
are completed; if not, the transaction is rolled back.
• Consistency: Ensures the database remains in a
consistent state before and after the transaction.
• Isolation: Ensures concurrent transactions do not
interfere with each other.
• Durability: Ensures changes made by a committed
transaction are permanently stored.
• Transaction States:
• Active: Transaction is in progress.
• Partially Committed: Transaction has executed
its final statement.
• Committed: Transaction has successfully
completed.
• Failed: Transaction encountered an error.
• Aborted: Transaction is rolled back.
• Concurrency Control:
• Techniques to handle simultaneous transactions.
• Examples: Locking, timestamp ordering.
• 5. Data Centers
• A data center is a facility that houses computing
resources like servers, storage systems, and networking
equipment.
• Key Components:
• Servers: Physical or virtual machines hosting applications
and databases.
• Storage: Systems for data storage, including SAN (Storage
Area Network) and NAS (Network Attached Storage).
• Networking: Includes routers, switches, and firewalls for
connectivity and security.
• Power Supply: Uninterruptible Power Supplies (UPS) and
generators.
• Cooling Systems: Maintain optimal operating
temperatures.
• Types of Data Centers:
• Enterprise Data Centers: Owned and operated
by a single organization.
• Colocation Data Centers: Shared by multiple
organizations.
• Cloud Data Centers: Provided by cloud service
providers like AWS, Azure.
• Edge Data Centers: Smaller facilities closer to
users for reduced latency.
• 6. Cloud Services
• Cloud services enable on-demand access to computing
resources over the internet.
• Types of Cloud Services:
• a. Infrastructure as a Service (IaaS):
• Provides virtualized computing resources.
• Example: Amazon EC2, Google Compute Engine.
• b. Platform as a Service (PaaS):
• Provides a platform for developers to build and deploy
applications.
• Example: Google App Engine, Microsoft Azure App Service.
• c. Software as a Service (SaaS):
• Provides software applications over the internet.
• Example: Gmail, Salesforce, Office 365.
• Deployment Models:
• Public Cloud: Resources are shared among multiple users
• (e.g., AWS, Azure).
• Private Cloud: Dedicated resources for a single organization.
• Hybrid Cloud: Combination of public and private clouds.
• Community Cloud: Shared resources for a specific community.
• Advantages of Cloud Services:
• Scalability
• Cost-effectiveness
• High availability
• Disaster recovery
• Reduced maintenance
• Challenges:
• Security concerns
• Compliance issues
• Vendor lock-in
• Downtime risks