0% found this document useful (0 votes)
243 views5 pages

IT 3306 Syllabus

This document provides details of the Data Management Systems course offered in Semester III. The course is worth 3 credits and is classified as core. It aims to provide knowledge of different data management techniques and distributed database systems. The course content covers topics such as data management evolution, database constraints and triggers, indexing and tuning, distributed databases, and consistency and transaction processing concepts. Main learning outcomes include applying constraints and triggers, improving query performance using indexing, and describing consistency techniques in different data management systems.
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)
243 views5 pages

IT 3306 Syllabus

This document provides details of the Data Management Systems course offered in Semester III. The course is worth 3 credits and is classified as core. It aims to provide knowledge of different data management techniques and distributed database systems. The course content covers topics such as data management evolution, database constraints and triggers, indexing and tuning, distributed databases, and consistency and transaction processing concepts. Main learning outcomes include applying constraints and triggers, improving query performance using indexing, and describing consistency techniques in different data management systems.
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/ 5

Program Content

Semester III
Course Code: IT3306

Course Name: Data Management Systems

Credit Value: 3

Core/Optional Core
Theory Independent Learning
Hourly Breakdown
45 hrs. 105 hrs.
Course Aim:

● To gain the knowledge on different data management techniques with an insight on distributed
database systems and other advanced database concepts.

Intended Learning Outcomes:

After following this course, students should be able to,

● Describe how and why different data management techniques evolved.


● Apply constraints and to maintain consistency through triggers
● Describe data storage & improve query performance by using indexes.
● Describe consistency and transaction processing techniques in different data management systems.
● Describe distributed database concepts and create designs for distributed databases with an insight
on how data fragmentation, replication and allocation affect database performance.

Course Content: (Main Topics, Sub topics)

Topic Theory
(Hrs)
1. Data Management Evolution 08
2. Database Constraints and Triggers 08 *
3. Database Indexing and Tuning 10
4. Distributed Database Systems 07
5. Consistency and Transaction Processing Concepts 12*
Total 45

*Students are expected do practical and tutorials to strengthen their knowledge on these sections.

1
1. Data Management Evolution (8 hours)
1.1. Major concepts of object-oriented, XML, and NoSQL databases
1.1.1. Object Databases
1.1.1.1. Overview of Object Database Concepts
1.1.1.1.1 Introduction to object-oriented concepts and features [Ref1: pg.363-366],
1.1.1.1.2 Object Identity and Literals [Ref1: pg.367-370],
1.1.1.1.3 Encapsulation of Operations [Ref1: pg. 370-372],
1.1.1.1.4 Persistence of Objects [Ref1: pg. 373],
1.1.1.1.5 Type Hierarchies and Inheritance [Ref1: pg. 374-376],
1.1.1.1.6 Polymorphism and Multiple Inheritance [Ref1: pg. 377-378]
1.1.2. XML Databases
1.1.2.1. Reason for the origination of XML [Ref1: pg. 425, 426]
1.1.2.2. Structured, Semi structured, and Unstructured Data [Ref1: pg. 426-430]
Structured data, Storage in relational database, Semi structured data, Directed graph
model, Unstructured data
1.1.2.3. XML Hierarchical (Tree) Data Model [Ref1: pg. 430-433]
Basic objects, Element, Attribute, Document types, Data-centric and Document-
centric, Hybrid
1.1.3. NoSQL Databases
1.1.3.1. Origins of NoSQL
Impedance Mismatch [Ref2: pg. 5-6], Problem of clusters[Ref2: pg. 8-9], Common
characteristics of NoSQL databases [Ref2: pg. 9-10], Important rise of NoSQL with
Polyglot Persistence [Ref2: pg. 11]
1.1.3.2. Data models in NoSQL
1.1.3.2.1. Introduction to Aggregate data models [Ref2: pg. 13-19], Reason
for using Aggregate data models [Ref2: pg. 19]
1.1.3.2.2. Key-Value Model and suitable Use Cases [Ref2: pg. 20-21, Ref2:
pg. 81-83, Ref2: pg.87-88]
1.1.3.2.3. Document Data Model and suitable Use Cases [Ref2: pg.20-21,
Ref2: pg. 89-91, Ref2: pg. 97-98]
1.1.3.2.4. Column-Family Stores and suitable Use Cases [Ref2: pg. 21-23,
Ref2: pg.99-102, Ref2: pg.107-109]
1.1.3.2.5. Data model for complex relationship structures (Graph database
model) [Ref2: pg. 25-28, Ref2: pg.111-114, Ref2: pg. 120-121]

1.2. Contrast and compare relational databases concepts and non-relational databases
1.2.1. Object databases and Relational databases [Ref1: pg. 405-406]
1.2.2. XML and Relational databases [Ref1: pg. 425-426, Ref1: pg.430 - 436]
1.2.3. NoSQL and Relational databases
1.2.3.1. Data modeling difference [Ref2: pg. 13-19], Modeling for Data Access [Ref2: pg. 31-
36]
1.2.3.2. Aggregate oriented vs aggregate ignorant [Ref2: pg.19-20]
1.2.3.3. Schemalessness in NoSQL [Ref2: pg. 10, Ref2: pg.28-30]
1.2.3.4. Overview of Materialized views [Ref2: pg. 30-31]

2
2. Database Constraints and Triggers [08 hours]

2.1. Relational Model Constraints


2.1.1. Categories of Constraints [Ref1: pg. 157-158]
2.1.2. Domain Constraints [Ref1: pg. 158]
2.1.2.1. Key Constraints and Constraints on NULL Values [Ref1: pg. 158-160]
2.1.2.2. Entity Integrity and Referential Integrity [Ref1: pg. 163-165]
2.1.2.3. Other Types of Constraints [Ref1: pg. 165]
2.1.2.4. Insert, Delete and Update Operations Dealing with Constraint Violations [Ref1: pg.
165-169]
2.2. Specifying Constraints in SQL
2.2.1. Specifying Key and Referential Integrity Constraints [Ref1: pg. 184-187]
2.2.2. Specifying Constraints on Tuples Using CHECK [Ref1: pg. 187]
2.2.3. Specifying Names to Constraints [Ref1: pg. 185-187]
2.3. Constraints in Databases as Assertions [Ref1: pg. 225 -226]
2.4. Specifying Actions in Databases as Triggers
2.4.1. Introduction to Triggers and Create Trigger Statement [Ref1: pg. 225-227, pg. 966-967]
2.4.2. Active Databases and Triggers [Ref1: pg. 963-965]

3. Database Indexing and Tuning [10 hours]


3.1. Disk Storage and Basic File Structures
3.1.1. Computer memory hierarchy [Ref1: pg. 542-545],
3.1.2. Storage organization of databases [Ref1: pg. 545-546],
3.1.3. Secondary storage mediums[Ref1: pg. 547-551]
3.1.4. Solid State Device Storage [Ref1: pg. 553-554]
3.1.5. Placing file records on disk (types of records), [Ref1: pg. 560-564]
3.1.6. File Operations [Ref1: pg. 564-567]
3.1.7. Files of unordered records (Heap Files) and ordered records (Sorted Files) [Ref1: pg. 567-
572]
3.1.8. Hashing techniques for storing database records: Internal hashing, external hashing [Ref1:
pg. 572-575]

3.2. Introduction to indexing


Introduce index files, indexing fields, index entry (record pointers and block pointers)
[Ref1:pg. 601-602]
3.3. Types of Indexes
3.3.1. Single Level Indexes: Primary, Clustering and Secondary indexes [Ref1: pg. 602 – 613]
3.3.2. Multilevel indexes: Overview of multilevel indexes [Ref1: pg. 613-616]
3.4. Indexes on Multiple Keys [Ref1: pg.631-633]
3.5. Other types of Indexes
Hash indexes, bitmap indexes, function based indexes [Ref1: pg. 633-638]
3.6. Index Creation and Tuning [Ref1: pg.639-641]
3.7. Physical Database Design in Relational Databases [Ref1: pg. 643-646]

3
4. Distributed Database Systems [07 hours]
4.1. Distributed Database Concepts, Components and Advantages [Ref1: pg. 841- 846]
4.2. Types of Distributed Database Systems [Ref1: pg. 865-866]
4.3. Distributed Database Design Techniques [Ref1: pg. 847-853]
4.3.1. Fragmentation [Ref1: pg. 847-849]
4.3.2. Replication and Allocation [Ref1: pg. 849-850]
4.3.3. Distribution Models: Single Server , Sharding, Master-Slave, Peer-to-Peer [Ref2: pg. 37-
45]
4.4. Query Processing and Optimization in Distributed Databases [Ref1: pg. 859-862]
4.4.1 Distributed Query Processing
4.4.2 Data Transfer Costs of Distributed Query Processing
4.5. NoSQL Characteristics related to Distributed Databases and Distributed Systems [Ref1: pg.
885-886]

5. Consistency and Transaction Processing Concepts [12 hours]

5.1. Introduction to Transaction Processing


5.1.1. Single-user systems, multi-user systems and Transactions [Ref1: pg.746-747]
5.1.2. Problems in concurrent transaction processing, introduction to concurrency control, DBMS
failures, introduction to data recovery [Ref1: pg.749-753]
5.1.3. Transaction states [Ref1: pg.753-754]
5.2. Properties of Transactions
5.2.1. ACID properties, levels of isolation [Ref1: pg. 757-758]
5.3. Schedules
5.3.1. Schedules of Transactions [Ref1: pg.759-760]
5.3.2. Schedules Based on Recoverability [Ref1: pg.761-762]
5.4. Serializability
5.4.1. Serial, Nonserial, and Conflict-Serializable Schedules [Ref1: pg.763-766]
5.4.2. Testing for Serializability of a Schedule [Ref1: pg.767-770]
5.4.3. Using Serializability for Concurrency Control [Ref1: pg.770 -771]
5.4.4. View Equivalence and View Serializability [Ref1: pg.771-772]
5.5. Transaction Support in SQL [Ref1: pg.773-776]
5.6. Consistency in NoSQL
5.6.1. Update Consistency [Ref2: pg.47-49]
5.6.2. Read Consistency [Ref2: pg.49-52]
5.6.3. Relaxing Consistency [Ref2: pg.52-53]
5.6.4. CAP theorem [Ref2: pg.53-56]
5.6.5. Relaxing Durability and Quorums [Ref2: pg.56-59]
5.6.6. Version Stamps [Ref2: pg:61-65]

Teaching /Learning Methods:


You can access all learning materials and this syllabus in the VLE: http://vle.bit.lk/, if you are a registered
student of the BIT degree program. It is important to participate in learning activities given in the VLE to
learn this course.

4
Assessment Strategy:

Continuous Assessments/Assignments:
The assignments consist of two quizzes, assignment quiz 1 (It covers the first half of the syllabus) and
assignment quiz 2 (It covers the second half of the syllabus). The maximum mark for a question is 10 and the
minimum mark for a question is 0 (irrespective of negative scores). Final assignment mark is calculated
considering both assignments, and students will have to obtain at least 40% for each assignment. Students
are advised to complete online assignments before the given deadline. It is compulsory to pass all online
assignments to qualify to obtain the Level II, Higher Diploma in IT (HDIT), certificate.
In the course, case studies/Lab sheets will be introduced, and students have to participate in the learning
activities.

Final Exam:
Final examination of the course will be held at the end of the semester. The course is evaluated using a two
hour question paper which consists of 25 MCQ (1 hour) and 2 Structured Questions (1 hour).

References/ Reading Materials:


Ref 1. Fundamentals of Database Systems by R. Elmasri and S.B. Navathe, 7th edition, Addison-Wesley,
2016.
ISBN : 978-0133970777
Ref 2. NoSQL Distilled: a brief guide to the emerging world of polyglot by Pramod J. Sadalage and Martin
Fowler, 2013 Pearson Education, Inc.
ISBN : 978-0321826626

Note: Please note that the page numbers given with respect to Ref 2 are different from the Ref 2 version
which is downloadable from the internet.

You might also like