AI, Data, and Machine Learning

TH15 Deep Dive on Cosmos DB


1:15pm - 4:00pm

Level: Intermediate

Leonard Lobel



Sleek Technologies, Inc.

Part I - Introduction to Cosmos DB

Part I of this session presents an overview of Azure Cosmos DB, a globally distributed, massively scalable, low (single-digit millisecond) latency, fully managed NoSQL database service that is 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.99% availability, throughput, latency, and consistency.

We begin by explaining NoSQL databases in general, and how they compare with traditional relational database platforms. Then 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). You’ll learn about global distribution, scale-out partitioning, tunable consistency, custom indexing, and more. We’ll also discuss client development using the many available SDKs. Attend this session, and get up to speed on Cosmos DB today!

You will learn:

  • The basic Always Encrypted technology for client-side encryption with SQL Server
  • How SQL Server 2019 leverages secure enclaves to enable rich computation over encrypted data
  • See live demos showing Always Encrypted in use with SQL Server and C#

Part II – Building Cosmos DB Applications

In Part II, you’ll learn how to write applications for Cosmos DB, and see how to work with the various Cosmos DB APIs. These APIs support a variety of data models, including the SQL API (for JSON documents), Table API for (key-value entities), Gremlin API (for graphs) and Cassandra (for columnar). Regardless what you choose as a data model of choice, you’ll learn how to provision throughput, and how to partition and globally distribute your data to deliver massive scale.

You’ll see how to migrate data from SQL Server to Cosmos DB, and how to write queries using Cosmos DB SQL. Then we’ll write data access code that creates and queries databases, collections, and documents, manages custom indexing policies, and defines users and permissions for resource-level access. We’ll also create, deploy, and execute server-side stored procedures, triggers and user-defined functions, using the Cosmos DB server-side programming model. Attend this session, and prepare to build Cosmos DB applications today!

You will learn:

  • How to write code to build Cosmos DB applications
  • How to use the Cosmos DB server-side programming model to run stored procedures, triggers, and user-defined functionsExplore the special version of SQL designed for querying Cosmos DB
  • How to use the Cosmos DB server-side programming model to run stored procedures, triggers, and user-defined functions