This full day workshop will ramp you up quickly on Azure Cosmos DB, Microsoft's globally distributed, massively scalable, low (single-digit millisecond) latency, fully managed NoSQL database service designed specifically for modern web and mobile applications. Like other NoSQL platforms, Cosmos DB supports a schema-free data model, built-in partitioning for sustained heavy-write ingestion, and replication for high availability. But only Cosmos DB offers turnkey global distribution, automatic indexing, and SLAs for guarantees on 99.999% availability, throughput, latency, and consistency.
For many newcomers to Cosmos DB, the learning process starts with data modeling and partitioning. How should you structure your model? When should you combine multiple entity types in a single container? Should you de-normalize your entities? What's the best partition key for your data? So we start off with the key strategies for modeling and partitioning data effectively in Cosmos DB. Using a real-world NoSQL example based on the AdventureWorks relational database, we explore key Cosmos DB concepts—request units (RUs), partitioning, and data modeling—and how their understanding guides the path to an optimal data model that yields the best performance and scalability.
Throughout the day, we tour the many features of Cosmos DB, including its multi-model capabilities which allow you to store and query schema-free JSON documents (using either SQL or MongoDB APIs), graphs (Gremlin API), and key/value entities (table API), and columnar (Cassandra API). You'll learn about global distribution, multi-region conflict resolution, scale-out partitioning, tunable consistency, custom indexing, and more.