MSDN Documentation

Introduction to Azure Cosmos DB

Azure Cosmos DB is a globally distributed, multi-model database service from Microsoft Azure. It's designed to enable developers to build highly responsive and always-on applications with ease. Cosmos DB offers a unique combination of features that make it a compelling choice for modern cloud-native applications.

What is Azure Cosmos DB?

Azure Cosmos DB is Microsoft's globally distributed, multi-model database service. It provides a fully managed platform for modern application development, offering robust features like:

Key Concepts

Understanding the core concepts of Azure Cosmos DB is crucial for effective utilization. The key hierarchical components are:

  1. Accounts: The top-level resource for Cosmos DB. You can have multiple accounts for different applications or environments.
  2. Databases: A container for collections or tables.
  3. Containers (or Tables): The fundamental unit of scalability for metadata, JSON documents, or entities. Each container has its own provisioned throughput and storage.
  4. Items (or Documents/Entities): The atomic data entries within a container.

Supported APIs

Cosmos DB offers a variety of APIs to support different application development paradigms:

When to Use Azure Cosmos DB?

Azure Cosmos DB is an excellent choice for a wide range of modern applications, including:

Note: Cosmos DB is a NoSQL database and is not designed for transactional workloads that require strict ACID compliance across multiple documents. For such scenarios, consider Azure SQL Database or Azure Database for PostgreSQL.

Getting Started

To start using Azure Cosmos DB:

  1. Create an Azure account if you don't have one.
  2. Navigate to the Azure portal and create an Azure Cosmos DB account.
  3. Choose the API that best suits your application's needs.
  4. Create a database and a container (or table).
  5. Start adding data and querying it using the chosen API.

For detailed guidance, refer to the official Azure Cosmos DB documentation and the various tutorials and quickstarts available.

Key takeaway: Azure Cosmos DB offers a comprehensive, globally distributed database solution for modern applications requiring high availability, low latency, and elastic scalability across multiple data models.