0% found this document useful (0 votes)
28 views2 pages

Database Management System Course Guide

The document outlines the syllabus for the Database Management System course at Savitribai Phule Pune University for second-year Computer Science and Design students. It includes course objectives, outcomes, and detailed content covering fundamental DBMS concepts, SQL and PL/SQL, database design and normalization, transaction management, and NoSQL databases. The course aims to equip students with essential skills in database creation, manipulation, and advanced programming features.

Uploaded by

deepalijawade
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)
28 views2 pages

Database Management System Course Guide

The document outlines the syllabus for the Database Management System course at Savitribai Phule Pune University for second-year Computer Science and Design students. It includes course objectives, outcomes, and detailed content covering fundamental DBMS concepts, SQL and PL/SQL, database design and normalization, transaction management, and NoSQL databases. The course aims to equip students with essential skills in database creation, manipulation, and advanced programming features.

Uploaded by

deepalijawade
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

Savitribai Phule Pune University

Second Year of Computer Science and Design (2024 Course)


PCC-202-CSD: Database Management System
,
Teaching /scheme Credits Examination Scheme
Theory : 03Hours/Week 03 CCE : 30 Marks
End-Semester: 70 Marks
Prerequisite Courses : Data Structures
Companion Courses: DBMS Laboratory
Course Objectives: The course aims to:

1. To Understand the fundamental concepts of Database Management Systems

2. To Apply SQL and PL/SQL for database creation, manipulation, querying, and manage advanced
database programming features

3. To Analyze database schemas for efficient design and apply normalization techniques up to
BCNF,

4. To Comprehend transaction management concepts including ACID properties, concurrency con-


trol techniques, and recovery methods

5. To Explore the concepts and types of NoSQL databases, understand the CAP theorem, and
compare NoSQL with RDBMS.

Course Outcomes: Upon successful completion of this course, students will be able to:

CO1: Explain Fundamentals of databases systems, Data Models and ER model

CO2: Implement database queries using SQL and PL/SQL.

CO3: Apply normalization techniques to optimize database design.

CO4: Explain transaction management and recovery mechanisms in databases.

CO5: Apply advanced database concepts.

Course Contents
Unit I - Introduction to DBMS & ER Model ( 09 Hours )

Fundamentals of DBMS: Purpose of Database Systems, Database-System Applications, View of Data


(Physical, Logical, Conceptual), Database Languages (DDL, DML, DCL, TCL), Database System Struc-
ture. Data Models & ER Model: Types of Data Models: Hierarchical, Network, Relational, Entity-
Relationship (ER) Model: Entities, Attributes, Relationships, Constraints ER Diagram & Design Pro-
cess Extended ER Features (Specialization, Generalization, Aggregation), Converting ER and EER
diagrams into tables. Relational Model & Integrity Constraints: Basic Concepts: Attributes, Domains,
Tuples, COD Rules for Relational Databases, integrity Constraints: Domain Integrity, Referential
Integrity, Enterprise Constraints
Unit II - SQL and PL/SQL ( 09 Hours )

Introduction to SQL: Characteristics and advantages of SQL Data Types and Literals SQL Commands
& Operators: Data Definition Language (DDL): CREATE, ALTER, DROP, TRUNCA, TE, RENAME, Data
Manipulation Language (DML): INSERT, UPDATE, DELETE, Data Control Language (DCL): GRANT,
REVOKE, Transaction Control Language (TCL): COMMIT, ROLLBACK, SAVEPOINT, SQL Operators:
Arithmetic, Comparison, Logical, Set Operators, Tables & Constraints: Creating, Modifying, Delet-
ing Tables, Integrity Constraints: PRIMARY KEY, FOREIGN KEY, UNIQUE, CHECK, NOT NULL Views

12
& Indexes: Creating, Dropping, Updating Views, Indexes: Types and Usage SQL Queries: SELECT
Query & Clauses: , Tuple Variables, Aggregate Functions. Advanced SQL Features: Nested Queries
& Subqueries, Database Modification: INSERT,UPDATE, DELETE Queries, Stored Procedures & Func-
tions, Triggers: Row-level & Statement-level, Cursors: Implicit & Explicit, Embedded SQL: Using
SQL within programming languages (Java, Python, C) PL/SQL & Advanced SQL Features: Views:
Creating, Dropping, Updating using Indexes, Stored Procedures and Functions, Cursors & Triggers,
Assertions, Roles, and Privileges
Unit III - Relational Database Design & Normalization (09Hours)

Features of Good Database Design: Atomic Domains & First Normal Form (1NF), Functional Depen-
dencies. Normalization & Decomposition: 2NF, 3NF, BCNF, Decomposition using Functional Depen-
dencies, Algorithms for Decomposition. Introduction to Transactions & ACID Properties: Database
Transactions, Transaction States & ACID Properties
Unit IV - Transaction Management & Recovery (09 Hours)

Schedules and Serializability: Concept of Schedules & Serial Schedules, Serializability: Conflict &
View Serializability, Cascaded Aborts, Recoverable & Non-Recoverable Schedules. Concurrency Con-
trol Mechanisms: Lock-Based Proto cols: Timestamp-Based Protocols, Deadlock Handling. Database
Recovery Methods Shadow Paging ,Log-Based Recovery, Checkpoints, Deferred & Immediate Database
Modifications
Unit V - NoSQL Databases & Advanced Database Technology (09 Hours)

NoSQL Databases & CAP Theorem: Introduction to Distributed Databases, Advantages & Disadvan-
tages, CAP Theorem ,Types of Data: Structured, Unstructured, Semi-Structured, NoSQL Concepts &
Types: Need for NoSQL, Features of NoSQL Types of NoSQL Databases: Key-Value Store, Document
Store, Graph Database, Wide Column Stores, BASE vs. ACID Properties, Comparative Study: RDBMS
vs. NoSQL, Advanced Database Technologies: Semi-Structured Data: JSON & XML, Object-Relational
Database System (ORDBMS),Spatial Databases: Geographic & Geometric Data
Learning Resources

Text Books:

1. Silberschatz A., Korth H., Sudarshan S., "Database System Concepts", McGraw Hill Publishers,
ISBN 0-07-120413-X, 6th edition

2. Connally T, Begg C., "Database Systems", Pearson Education, ISBN 81-7808-861-4

3. Pramod J. Sadalage and Martin Fowler, Addison Wesley, ISBN- 10: 0321826620,
ISBN-13: 978-0321826626

Reference Books:

1. C J Date, An Introduction to Database Addison-Wesley, ISBN: 0201144719


2. [Link], Systems: Concepts, Design and Pearson Education, ISBN
978-81-317-6092-5

3. Kristina Chodorow, Michael Dierolf, The Definitive Reilly Publications,


ISBN: 978-1-449-34468-9

4. Adam Fowler, For John Wiley & Sons, ISBN-1118905628

5. Kevin Roebuck, and Managing Big Data - NoSQL, HADOOP and Emereopty
Limited, ISBN: 1743045743, 9781743045749

13

Common questions

Powered by AI

The ACID properties (Atomicity, Consistency, Isolation, Durability) ensure reliable transaction processing by making sure that all parts of a transaction are completed successfully (Atomicity), the system remains in a consistent state (Consistency), transactions proceed independently without interference (Isolation), and once a transaction is committed it remains so in the event of a system failure (Durability). Challenges in implementing ACID properties include handling performance bottlenecks in ensuring isolation and consistency, the complexity of rollback mechanisms, and the overhead associated with ensuring durability through logging and checkpoints .

Normalization techniques up to Boyce-Codd Normal Form (BCNF) optimize database design by organizing data to reduce redundancy and dependency. This is done by decomposing a database into multiple related tables such that each table adheres to the principles of atomicity and functional dependencies. Applying these techniques usually improves performance by minimizing the possibility of anomalies during data operations, but it can also lead to increased complexity in database queries due to the division of tables .

RDBMS are advantageous for applications requiring complex querying and reliable transactions due to their adherence to ACID properties, but they often struggle with horizontal scaling and can be less flexible in handling unstructured data. NoSQL databases, by contrast, provide flexibility in data models (e.g., key-value, document, graph), and are designed for horizontal scalability, often leveraging eventual consistency over strict ACID compliance, which can complicate transaction management. The trade-off involves choosing RDBMS for consistency and integrity needs, whereas NoSQL is preferable for distributed, large-scale, and varied data applications .

The CAP theorem states that in a distributed database system, it is impossible to achieve more than two of the following three guarantees simultaneously: Consistency, Availability, and Partition tolerance. This influences design choices in NoSQL databases by prompting architects to prioritize between CAP properties based on application needs. For instance, a system requiring high availability and partition tolerance may compromise immediate consistency and opt for eventual consistency, impacting how data is replicated and synchronized across distributed nodes .

Advanced SQL features such as nested queries, subqueries, stored procedures, and functions enhance database performance by enabling complex operations and encapsulating repetitive tasks. Triggers, which automatically invoke predefined actions in response to specific database events, play a crucial role in ensuring database integrity by enforcing business rules, maintaining audit trails, and synchronizing related changes across tables without explicit application-level code .

Database systems primarily serve to handle large volumes of data effectively, ensure data integrity and consistency, support concurrent access by multiple users, and provide security of data from unauthorized access. Database languages facilitate these objectives by offering specific syntax and operations: Data Definition Language (DDL) for specifying and altering schema, Data Manipulation Language (DML) for querying and modifying data, Data Control Language (DCL) for controlling access to data, and Transaction Control Language (TCL) for transaction management .

Conflict serializability ensures that a schedule is serializable if it can be reordered to form a serial schedule by swapping non-conflicting operations, focusing on the order of conflicting operations. In contrast, view serializability evaluates the overall effects of transactions and ensures the final state is the same as it would be in some serial schedule, irrespective of the order of conflicting operations. View serializability is a broader concept, less restrictive than conflict serializability, but it's computationally more complex to determine .

Spatial databases extend conventional data management systems by incorporating geographic and geometric data types and operations, enabling efficient storage, retrieval, and analysis of spatial data. These specialized databases enhance capabilities for applications such as Geographic Information Systems (GIS), where spatial data modeling, querying, and analysis are crucial. The addition of spatial indices, query language extensions, and spatial data functions allows for complex spatial data operations that conventional databases cannot handle efficiently .

Object-relational database systems (ORDBMS) extend the capabilities of traditional relational database systems by integrating object-oriented database functionality. This allows for more complex data types and operations, supports inheritance, and encapsulates methods within the data model, facilitating the handling of more intricate data relationships and operations. These features provide greater flexibility in data management and can better support complex applications .

Shadow paging, as a recovery method, simplifies undo operations by maintaining a direct pointer to unchanged pages, reducing the need for logs during normal operations. However, it can be less efficient in terms of storage and performance due to copying overheads. Log-based recovery methods offer efficient storage and more granular options for undo and redo operations through logs, supporting complex transaction scenarios but introducing complexity in log management. The choice impacts system performance, complexity, and resource utilization .

You might also like