NoSQL Distilled
(NoSQL.AP1) / ISBN : 978-1-64459-457-5
About This Course
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.
Skills You’ll Get
Interactive Lessons
16+ Interactive Lessons | 30+ Exercises | 100+ Quizzes | 53+ Flashcards | 53+ Glossary of terms
Gamified TestPrep
Hands-On Labs
13+ LiveLab | 13+ Video tutorials | 00+ Minutes
Preface
- Why Are NoSQL Databases Interesting?
- What’s in the Course
- Who Should Read This course
- What Are the Databases
- Acknowledgments
Why NoSQL?
- The Value of Relational Databases
- Impedance Mismatch
- Application and Integration Databases
- Attack of the Clusters
- The Emergence of NoSQL
- Key Points
Aggregate Data Models
- Aggregates
- Key-Value and Document Data Models
- Column-Family Stores
- Summarizing Aggregate-Oriented Databases
- Further Reading
- Key Points
More Details on Data Models
- Relationships
- Graph Databases
- Schemaless Databases
- Materialized Views
- Modeling for Data Access
- Key Points
Distribution Models
- Single Server
- Sharding
- Master-Slave Replication
- Peer-to-Peer Replication
- Combining Sharding and Replication
- Key Points
Consistency
- Update Consistency
- Read Consistency
- Relaxing Consistency
- Relaxing Durability
- Quorums
- Further Reading
- Key Points
Version Stamps
- Business and System Transactions
- Version Stamps on Multiple Nodes
- Key Points
Map-Reduce
- Basic Map-Reduce
- Partitioning and Combining
- Composing Map-Reduce Calculations
- Further Reading
- Key Points
Key-Value Databases
- What Is a Key-Value Store
- Key-Value Store Features
- Suitable Use Cases
- When Not to Use
Document Databases
- What Is a Document Database?
- Features
- Suitable Use Cases
- When Not to Use
Column-Family Stores
- What Is a Column-Family Data Store?
- Features
- Suitable Use Cases
- When Not to Use
Graph Databases
- What Is a Graph Database?
- Features
- Suitable Use Cases
- When Not to Use
Schema Migrations
- Schema Changes
- Schema Changes in RDBMS
- Schema Changes in a NoSQL Data Store
- Further Reading
- Key Points
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
Beyond NoSQL
- File Systems
- Event Sourcing
- Memory Image
- Version Control
- XML Databases
- Object Databases
- Key Points
Choosing Your Database
- Programmer Productivity
- Data-Access Performance
- Sticking with the Default
- Hedging Your Bets
- Key Points
- Final Thoughts
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