NoSQL Distilled

(NoSQL.AP1)/ISBN:978-1-64459-457-5

This course includes
Lessons
TestPrep
Hands-On Labs

Embark on an exciting journey into the world of NoSQL databases with our immersive and comprehensive course NoSQL-Distilled. Explore core concepts, understand different data models, and learn how to distribute and maintain consistency in dynamic NoSQL systems. It includes interactive lessons, fun quizzes, glossaries, flashcards, and practical hands-on labs featuring popular databases like Riak, MongoDB, Cassandra, and Neo4J. Embrace the future of computer science today and join us on an extraordinary adventure to unlock endless possibilities in the realm of NoSQL databases.

Lessons

16+ Lessons | 30+ Exercises | 100+ Quizzes | 53+ Flashcards | 53+ Glossary of terms

TestPrep

Hands-On Labs

13+ LiveLab | 13+ Video tutorials | 00+ Minutes

Here's what you will learn

Download Course Outline

Lessons 1: Preface

  • Why Are NoSQL Databases Interesting?
  • What’s in the Course
  • Who Should Read This course
  • What Are the Databases
  • Acknowledgments

Lessons 2: Why NoSQL?

  • The Value of Relational Databases
  • Impedance Mismatch
  • Application and Integration Databases
  • Attack of the Clusters
  • The Emergence of NoSQL
  • Key Points

Lessons 3: Aggregate Data Models

  • Aggregates
  • Key-Value and Document Data Models
  • Column-Family Stores
  • Summarizing Aggregate-Oriented Databases
  • Further Reading
  • Key Points

Lessons 4: More Details on Data Models

  • Relationships
  • Graph Databases
  • Schemaless Databases
  • Materialized Views
  • Modeling for Data Access
  • Key Points

Lessons 5: Distribution Models

  • Single Server
  • Sharding
  • Master-Slave Replication
  • Peer-to-Peer Replication
  • Combining Sharding and Replication
  • Key Points

Lessons 6: Consistency

  • Update Consistency
  • Read Consistency
  • Relaxing Consistency
  • Relaxing Durability
  • Quorums
  • Further Reading
  • Key Points

Lessons 7: Version Stamps

  • Business and System Transactions
  • Version Stamps on Multiple Nodes
  • Key Points

Lessons 8: Map-Reduce

  • Basic Map-Reduce
  • Partitioning and Combining
  • Composing Map-Reduce Calculations
  • Further Reading
  • Key Points

Lessons 9: Key-Value Databases

  • What Is a Key-Value Store
  • Key-Value Store Features
  • Suitable Use Cases
  • When Not to Use

Lessons 10: Document Databases

  • What Is a Document Database?
  • Features
  • Suitable Use Cases
  • When Not to Use

Lessons 11: Column-Family Stores

  • What Is a Column-Family Data Store?
  • Features
  • Suitable Use Cases
  • When Not to Use

Lessons 12: Graph Databases

  • What Is a Graph Database?
  • Features
  • Suitable Use Cases
  • When Not to Use

Lessons 13: Schema Migrations

  • Schema Changes
  • Schema Changes in RDBMS
  • Schema Changes in a NoSQL Data Store
  • Further Reading
  • Key Points

Lessons 14: Polyglot Persistence

  • Disparate Data Storage Needs
  • Polyglot Data Store Usage
  • Service Usage over Direct Data Store Usage
  • Expanding for Better Functionality
  • Choosing the Right Technology
  • Enterprise Concerns with Polyglot Persistence
  • Deployment Complexity
  • Key Points

Lessons 15: Beyond NoSQL

  • File Systems
  • Event Sourcing
  • Memory Image
  • Version Control
  • XML Databases
  • Object Databases
  • Key Points

Lessons 16: Choosing Your Database

  • Programmer Productivity
  • Data-Access Performance
  • Sticking with the Default
  • Hedging Your Bets
  • Key Points
  • Final Thoughts

Hands-on LAB Activities

Aggregate Data Models

  • Building the Sample Data in MongoDB

Document Databases

  • Using the find Query in MongoDB
  • Using db.runCommand() in MongoDB

Column-Family Stores

  • Creating a Super Column Family in Cassandra
  • Creating a Column Family in Cassandra
  • Inserting and Reading Data in CQL
  • Using the DELETE Query in Cassandra
  • Using the SELECT Command in Cassandra
  • Using the UPDATE Query in Cassandra

Graph Databases

  • Indexing Nodes in a Graph in Neo4j
  • Creating a Graph in Neo4j
  • Using the Cypher Query Language

Schema Migrations

  • Writing and Reading Document in MongoDB