| Course Code: CS3106H Course Name: Introduction to No SQL Prerequisites: NIL Syllabus: Overview of NoSQL Databases: Motivation for NoSQL databases, limitations of relational databases, characteristics of modern data-intensive applications, overview of NoSQL database categories; Aggregate Data Models: Concept of aggregates, differences between relational and aggregate-oriented data models, implications for scalability and distribution; Key-Value and Document Databases: Key-value data model, document data representation, schema flexibility, indexing and query mechanisms, typical application scenarios; Column-Family Databases: Wide-column data model, column families, sparse storage, row keys, distributed storage and retrieval mechanisms; Graph Databases: Graph data model with nodes, edges and properties, graph traversal and query operations, applications involving highly connected data; Distribution Models: Replication, sharding, partitioning strategies and fault tolerance in distributed NoSQL systems; Texts: 1. Pramod J. Sadalage, Martin Fowler, NoSQL Distilled, Addison-Wesley Professional, 2012 2. Dan Sullivan, NoSQL for Mere Mortals, Addison-Wesley Professional, 1st Edition, 2015 3. Luc Perkins, Eric Redmond, Jim Wilson, Seven Databases in Seven Weeks, A Guide to Modern Databases, O?Reilly, 2018 |