Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Important
This feature is currently in preview and is provided without a service-level agreement. At this time, previews aren't recommended for production workloads. Certain features of this preview aren't supported or might have capability constraints. For more information, see supplemental terms of use for Azure previews.
Building multitenant applications often requires trade-offs between cost, performance, and security isolation. Customers who need strong performance and security isolation in B2B applications often isolate each tenant with a dedicated database account. However, as the application grows and more tenants onboard, capacity management and observability for these resources at scale becomes difficult.
Azure Cosmos DB fleets is a new way to organize and manage multitenant workloads at scale. With fleets, you can model each of your B2B tenants as its own database account, ensuring strong performance and security isolation. At the same time, you can simplify management by sharing throughput (RU/s) and monitoring usage at the fleet level using two new capabilities: pools and fleet analytics.
Pools let you share RU/s across multiple accounts, even if they span different subscriptions and resource groups within a fleet. While the resources in each account retain its own dedicated RU/s, pools allow accounts to use extra RU/s when needed from the shared pool. This helps avoid overprovisioning by letting tenants scale up temporarily through shared capacity.
Fleet analytics enables you to export usage data to Microsoft Fabric or an Azure Storage account for long-term analysis of accounts within your fleet. You can track trends like which accounts are most active, how resources scale over time, and when access keys were last rotated. Using built-in dashboards or writing custom queries helps to get deeper insights into your fleet's performance and usage.
Concepts
A fleet resource maps to one multitenant application and is a grouping entity for multiple Azure Cosmos DB accounts where one account maps to one tenant. Within a fleet, multiple accounts with similar performance characteristics can be grouped together under a fleetspace to share a pool for performance and cost benefits.
There are a few key concepts to understand:
Fleet: A high-level entity that organizes and manages multiple database accounts across different subscriptions and/or resource groups within fleetspaces. One fleet corresponds to one multitenant application.
Fleetspace: A logical grouping of database accounts within a fleet, where RU/s can optionally be shared among all resources in database accounts within the fleetspace. Each database account within a fleet must be a part of a fleetspace.
Important
Accounts belong to only one fleetspace and one fleet. Accounts already in a fleetspace within a fleet can't be added to another fleet unless they're removed first.
Pooling: This setting is an optional setting that can be configured at the fleetspace level when using fleets. You can set pool RU/s which are the total RU/s available within a fleetspace that any resource in the fleets’ database accounts can use.
Fleetspace account[s]: These accounts are database accounts within a fleetspace in a fleet. When pooling is configured for the fleetspace, these resources consume RU/s from the pool.
Fleet Analytics: Offers cost, usage, and settings data for all accounts within a fleet aggregated at a one-hour grain for trend analysis and integrated with Fabric OneLake/ADLS storage accounts.
Current limitations
Limit | |
---|---|
Maximum number of database accounts per fleetspace | 100 |
Maximum pool request units per second (RU/s) | 1,000,000 RU/s |
Register for the preview
To get started with Azure Cosmos DB fleets, register for the Azure Cosmos DB fleet preview feature flag in the Preview Features section of your Azure subscription in the Azure portal.
Creating fleets, fleetspaces, and adding database accounts can be done via the Azure portal or the Azure CLI.