Azure Cosmos DB Blog
The latest news, updates and technical insights from the Azure Cosmos DB team
Latest posts
Building on Vercel’s eve + Azure Cosmos DB: An Agent That Remembers
Most "AI agent" demos forget everything the moment the process exits. That's fine for a toy project, but useless for anything real. An agent that helps you write, triage, or support needs two things a language model alone can't give it: durable state and the ability to recall the right context by meaning. This post shows how to build exactly that by integrating two pieces that fit together surprisingly well: Eve — Vercel's filesystem-first agent platform. Drop a file in agent/tools/, and it becomes a tool the model can call. Azure Cosmos DB JavaScript SDK — the official, promise-based client for Cosmos DB N...
See our new Azure Cosmos DB Design Patterns
Design patterns are where good data modeling lives or dies. In a NoSQL database like Azure Cosmos DB, the difference between a schema that scales to millions of operations per second and one that fights you at every turn usually comes down to a handful of well‑understood patterns: how you partition, how you version, how you fan out work, how you keep concurrent writers from stepping on each other. That's exactly what the Azure Cosmos DB Design Patterns repo is for. It's a growing, hands‑on collection of small, focused samples — each one isolates a single pattern, explains why it matters, and lets you run it your...
Need a different partition key in Azure Cosmos DB? Pick the right approach
Once you create a container, its partition key is fixed at creation, and you can’t change it in place. However, if your original key starts causing problems like cross-partition queries or hot partitions, you need to consider your options for changing it. This post explains the mechanics of changing a partition key, and the tradeoffs between the options. First, think about the intent of your change: Note that every “change the partition key” option is actually a move: get your data into a new container that has the new key, then point your app at it. The exception is a Global Secondary Index, whic...
Spring AI 2.0 is GA: Vector Search, Memory, and Agents on Azure Cosmos DB
The wait is over. Spring AI 2.0 is generally available, and Azure Cosmos DB is right there with it. With this release, Spring AI graduates into a mature, production-ready framework for building AI applications in Java, and Azure Cosmos DB ships dedicated, vendor-maintained integrations that plug straight into the Spring AI ecosystem. The Spring AI 2.0 GA announcement names Azure Cosmos DB among its vendor-maintained modules, maintained directly by Microsoft rather than the core Spring AI team. This means the integration is built and supported by the engineers who work on Cosmos DB itself, bringing deep, first-ha...
Which Azure Cosmos DB Role Does My App Need?
In the previous post in the series, we covered the security decisions you make on day one. In this part, we will talk about how to give your app access to Cosmos DB data, using roles and a managed identity instead of keys. The situation You’ve built your app. It works locally. Now you’re ready to connect it to Azure Cosmos DB, and you hit the question: how does my app get access? There are really only three questions you need to answer: First, the one distinction that trips everyone up Cosmos DB has two completely separate permission systems. If you remember nothing else from this ...
How to Use Deep Agents with Azure Cosmos DB – Plan, act, and verify against operational data
Deep Agents is an agent harness built on LangGraph, for agents that need to work through a task over many steps instead of a single LLM call. The agent runs tools, looks at the results, and uses that to pick the next one, keeping a todo list as it goes. On top of that loop the harness brings what a longer-running agent needs. It can load instructions on demand instead of holding everything in the prompt (skills), offload large tool outputs so they don’t fill the context window, and pause for human approval in apps that need an approval gate before data changes. Support Ops Agent is a sample app that puts this ...
Azure Backup for Azure Cosmos DB Public Preview Adds Immutable Backups and Long-Term Retention
Azure Backup for Azure Cosmos DB Public Preview Adds Immutable Backups and Long-Term Retention Picture the first few hours after a serious data incident. A production application is down. Security teams are still trying to understand what happened. Application owners need to know which recovery points are usable, which ones are protected from tampering, and whether they can restore somewhere outside the environment under investigation. For teams running regulated or business-critical workloads on Azure Cosmos DB, that moment is exactly where backup design stops being a checkbox. It becomes part of opera...
Announcing General Availability of the Azure Cosmos DB Built-in Connector for Logic Apps Standard
Today, we're excited to announce the general availability of the Azure Cosmos DB built-in connector for Azure Logic Apps Standard. This connector gives you a native, high-performance way to integrate Azure Cosmos DB into your Standard logic app workflows, with better throughput, lower latency, and richer functionality than the managed connector. That includes real-time change feed processing, bulk operations, and Microsoft Entra ID authentication. If you've been building integration workflows that read, write, or react to data in Azure Cosmos DB, this GA release means you can do all of that with production-grade...
Announcing the Public Preview of Integrated Embeddings in Azure Cosmos DB: Build AI Apps With Embeddings That Stay in Sync
AI applications built on Azure Cosmos DB depend on embeddings for grounded results. Keeping them in sync with your data is the hard part: it means building and operating a separate data pipeline to track changes, call an embedding model, and write the results back to Azure Cosmos DB. In practice, that pipeline also has to handle failures and retries, throttling, scaling, and monitoring as your data and traffic grow. Integrated Embeddings in Azure Cosmos DB, now in Public Preview, removes that heavy lifting. Azure Cosmos DB automatically generates and maintains the embeddings for you as items are written and upda...
Introducing OmniVec: An Open-Source Embedding Platform for AI Apps on Azure
Today we are open-sourcing OmniVec, a platform for building and operating the embedding pipelines that keep the vector representation of your operational data in sync as it changes. You register data sources, embedding model(s), vector stores (destination), and OmniVec does the rest: initial backfill, change tracking, model invocation to geenrate, and writing them back to your vector store. We are shipping this with support for Azure Cosmos DB, PostgreSQL, SQL Server (source and destination), and Azure Blob Storage (destination). You deploy OmniVec in your own Azure subscription, and use the web UI, CLI, or the ...
Azure Cosmos DB All Versions and Deletes Change Feed Mode is Now Generally Available
Modern applications don't just write data and move on. They react to it. A new order triggers an inventory update. A profile change syncs to a search index. A deleted record kicks off a compliance workflow. Azure Cosmos DB's change feed makes this possible by giving you a real-time stream of every change happening in your container, and it's one of the most powerful capabilities of the platform. Today, we're excited to announce that all versions and deletes change feed mode is generally available in Azure Cosmos DB for NoSQL! This mode gives you the full picture of what's changing in your data, including deletes ...
Change Partition Keys in Azure Cosmos DB is Now Generally Available
We're excited to announce the general availability of Change Partition Key in Azure Cosmos DB for NoSQL, now with online copy support. You can repartition containers directly in the Azure portal with near-zero downtime and without stopping writes to the source container. Why Partition Key Choice Matters In Azure Cosmos DB, the partition key is one of the most important design choices you make. It affects how data is distributed across physical partitions, how queries are routed, and how well your application performs at scale. But applications change over time. A partition key that worked well at launch can ...
Public Preview: AI-powered Azure Cosmos DB Migration Assistant for RDBMS to NoSQL
Today, we are excited to announce the public preview of the Azure Cosmos DB Migration Assistant for RDBMS to NoSQL, now available in the Azure Cosmos DB extension for Visual Studio Code. 📈 Modernize with confidence Why migrate from RDBMS to Azure Cosmos DB? Modernizing relational workloads has traditionally been complex, time-consuming, and risky. This new AI-assisted, phase-based workflow replaces manual analysis with structured recommendations and helps you navigate key design choices such as denormalization, partitioning, and NoSQL data modeling. It helps you move from relational databases (SQL Se...
Announcing the General Availability of Per Partition Automatic Failover for Azure Cosmos DB NoSQL
Today, we are excited to announce the General Availability of Per Partition Automatic Failover (PPAF) for Azure Cosmos DB NoSQL API. PPAF is a significant advancement in how Azure Cosmos DB delivers availability and resilience for mission-critical workloads running on single-write-region accounts. If you rely on Azure Cosmos DB to be always on for your mission-critical applications — PPAF is built for you. With PPAF, Azure Cosmos DB can automatically recover affected partitions by failing over writes to a secondary region within 3 minutes at P99, without requiring application changes. A smarter, more granu...
Azure Cosmos DB MCP Toolkit Is Now Generally Available — Bringing Your Database to AI Agents at Scale
Since we introduced the Azure Cosmos DB MCP Toolkit at Ignite 2025 in preview, the response has been clear: developers want a straightforward way to connect AI agents to their production databases. Customers asked for stability, broader embedding provider support, and a smoother path from experimentation to production. Today, we're announcing the general availability of the Azure Cosmos DB MCP Toolkit (v1.1.2), now with deeper Microsoft Foundry integration, multi-provider embedding support, and the reliability improvements you asked for. The Problem: Getting AI Agents to Talk to Your Data Is Harder Than I...
Announcing General availability of the Azure Cosmos DB vNext emulator
The Azure Cosmos DB vNext emulator is generally available today. It ships as a Docker image that runs on Linux, macOS, and Windows, on both x64 and ARM64 architectures, giving you a local Cosmos DB instance you can develop and test against. Use it for inner-loop development on your laptop, in CI integration tests, and anywhere else you’d rather not use a live account. You can get started right away with a couple of simple commands: A lot has shipped since the preview announcement: broader feature and API coverage, an embedded shell, vector search, and OpenTelemetry support. The rest of this post walks throu...
Announcing the Public Preview of Semantic Reranker in Azure Cosmos DB for NoSQL
Today we’re thrilled to announce the public preview of Semantic Reranker in Azure Cosmos DB for NoSQL, a new AI-powered capability that improves the relevancy of your search results with just a few lines of code. If you’ve ever run a vector, full-text, or hybrid search and wished the most relevant documents bubbled to the very top, this one’s for you. Semantic Reranker uses an AI model to score and reorder the results of any query based on how well each document matches the user’s intent. It’s built right into the Azure Cosmos DB SDKs (Python, .NET, and Java), so you can reorder results from any container with...
Announcing General Availability of Azure Cosmos DB Global Secondary Indexes
Have you ever needed to evolve your read patterns without losing efficiency? Maybe your app started with one access pattern, but now you need three, and the queries that don't hit your partition key are getting slower and more expensive every month. We built global secondary indexes (GSIs) for exactly this, and today we're thrilled to announce they're generally available in Azure Cosmos DB! A GSI is an automatically synced copy of your data with a different partition key, so you can query it efficiently for more read patterns. The problem GSI solves Azure Cosmos DB scales by distributing data across physical ...