Course Code: nosqldbbspk
Duration: 14 hours
Prerequisites:
  • None. We assume this is more of fundamentals level.
Course Outline:

1. NoSQL Data Stores – Introduction

  • The world of structured data – RDBMS (Brief use cases and limitations)
  • Introduction to Big-Data focussing on Volume, Velocity, Variety
  • Need of newer approaches for data storage & processing.(scalability& performance)
  • The emergence of NoSQL and why use NoSQL(semi-structured & unstructured data)
  • Brief on various newer data formats & data patterns.
  • Understanding CAP theorem
  • Comparative study of various NoSQL Solutions.

2. Categories of NoSQL Data stores & data models

  • Key-value stores
  • Document stores
  • Column-family stores
  • Graph Databases
  • In-memory databases
  • Use cases for above

3. Internals, Architecture, Implementation & usage
 

4. Key-value Databases (e.g. Redis/Memcache/RIAK)

  • What is it & when is it needed
  • Features, Advantages, Disadvantages
  • Suitable Use cases & examples
  • When not to use
  • Internals & architecture: Brief
  • Setup options: Brief
  • Implementation & usage: Brief

5. Document Databases (e.g. MongoDB/CouchDB)

  • What is it & when is it needed
  • Features, Advantages, Disadvantages
  • Suitable Use cases & examples
  • When not to use
  • Internals & architecture: Brief
  • Setup options: Brief
  • Implementation & usage: Brief

6. Column-Family Databases (e.g. Cassandra, HBase)

  • What is it & when is it needed
  • Features, Advantages, Disadvantages
  • Suitable Use cases & examples
  • When not to use
  • Internals & architecture: Brief
  • Setup options: Brief
  • Implementation & usage: Brief

7. Graph Database (e.g. Neo4J, Infinite Graph)

  • What is it & when is it needed
  • Features, Advantages, Disadvantages
  • Suitable Use cases & examples
  • When not to use
  • Internals & architecture: Brief
  • Setup options: Brief
  • Implementation & usage: Brief


8. Schema Migration

  • Schema differences in RDBMS and NoSQL Database
  • Challenges & considerations when moving into NoSQL

9. Polyglot Persistence

  • How to choose the Right technology on data storage

10. Optional (based on time availability)  

  • Monitoring options
  • Integration with other platforms, programming interfaces, tools & APIs
  • Comparison: on-premise vs. cloud platforms
  • Latest updates happening in this space.
  • FAQs and final discussion.

**Note: For "Internals, Architecture, Implementation & Usage" topic: Suggestion is to choose atleast 2 or prioritize 2 topics which can be discussed in more detail than other 2 categories.