Nastavení automaticky škálované propustnosti pro Azure Cosmos DB pro NoSQL

Tento článek vysvětluje, jak povolit propustnost automatického škálování v databázi nebo kontejneru (kolekci, grafu nebo tabulce) ve službě Azure Cosmos DB for NoSQL. Automatické škálování můžete povolit v jednom kontejneru nebo zřídit propustnost automatického škálování v databázi a sdílet ji mezi všemi kontejnery v databázi.

Pokud používáte jiné rozhraní API, přečtěte si téma Rozhraní API pro MongoDB, rozhraní API pro Cassandra nebo rozhraní API pro Gremlin.

Azure Portal

Vytvoření nové databáze nebo kontejneru s automatickým škálováním

  1. Přihlaste se k webu Azure Portal nebo průzkumníku služby Azure Cosmos DB.

  2. Přejděte do svého účtu služby Azure Cosmos DB a otevřete záložku Průzkumník dat.

  3. Vyberte Nový kontejner. Zadejte název databáze, kontejneru a klíče oddílu.

  4. V části Databáze nebo propustnost kontejneru vyberte možnost Automatické škálování a nastavte maximální propustnost (RU/s), na kterou chcete databázi nebo kontejner škálovat.

    Snímek obrazovky znázorňující nastavení pro vytvoření kontejneru a konfiguraci zřízené propustnosti automatického škálování

  5. Vyberte OK.

Pokud chcete zřídit automatické škálování pro databázi se sdílenou propustností, vyberte při vytváření nové databáze možnost Zřídit propustnost databáze.

Note

Nastavení propustnosti na úrovni databáze se doporučuje jenom pro vývoj/testování nebo v případě, že je jednotná úloha napříč všemi kontejnery v databázi se sdílenou propustností. Pro zajištění nejlepšího výkonu pro velké produkční úlohy se doporučuje nastavit vyhrazenou propustnost (automatické škálování nebo ruční) na úrovni kontejneru, nikoli na úrovni databáze.

Povolení automatického škálování u existující databáze nebo kontejneru

  1. Přihlaste se k webu Azure Portal nebo průzkumníku služby Azure Cosmos DB.

  2. Přejděte do svého účtu služby Azure Cosmos DB a otevřete záložku Průzkumník dat.

  3. Vyberte Škálování a Nastavení pro váš kontejner, nebo Škálování pro vaši databázi.

  4. V části Měřítko vyberte možnost Automatické škálování a Uložte.

    Snímek obrazovky s nastavením pro povolení automatického škálování u existujícího kontejneru

Note

Když u existující databáze nebo kontejneru povolíte automatické škálování, určuje systém počáteční hodnotu maximálního počtu RU/s na základě aktuálního nastavení ručně zřízené propustnosti a úložiště. Po dokončení operace můžete v případě potřeby změnit maximální počet RU/s. Další informace najdete v tématu Nejčastější dotazy týkající se automaticky škálované zřízené propustnosti.

SDKs

Ke správě prostředků automatického škálování použijte následující sady SDK:

Vytvoření databáze se sdílenou propustností

Note

Nastavení propustnosti na úrovni databáze se doporučuje jenom pro vývoj/testování nebo v případě, že je jednotná úloha napříč všemi kontejnery v databázi se sdílenou propustností. Pro zajištění nejlepšího výkonu pro velké produkční úlohy se doporučuje nastavit vyhrazenou propustnost (automatické škálování nebo ruční) na úrovni kontejneru, nikoli na úrovni databáze.

Ke správě prostředků automatického škálování použijte verzi 3.9 nebo vyšší sady .NET SDK služby Azure Cosmos DB pro rozhraní API for NoSQL.

Important

Sadu .NET SDK můžete použít k vytvoření nových prostředků automatického škálování. Sada SDK nepodporuje migraci mezi automatickou a standardní (ruční) propustností. Scénář migrace se v současné době podporuje jenom na webu Azure Portal, rozhraní příkazového řádku a PowerShellu.

Note

Když u existující databáze nebo kontejneru povolíte automatické škálování, určuje systém počáteční hodnotu maximálního počtu RU/s na základě aktuálního nastavení ručně zřízené propustnosti a úložiště. Po dokončení operace můžete v případě potřeby změnit maximální počet RU/s. Další informace najdete v tématu Nejčastější dotazy týkající se automaticky škálované zřízené propustnosti.

// Create instance of CosmosClient
CosmosClient cosmosClient = new CosmosClient(Endpoint, PrimaryKey);
 
// Autoscale throughput settings
ThroughputProperties autoscaleThroughputProperties = ThroughputProperties.CreateAutoscaleThroughput(1000); //Set autoscale max RU/s

//Create the database with autoscale enabled
database = await cosmosClient.CreateDatabaseAsync(DatabaseName, throughputProperties: autoscaleThroughputProperties);

Vytvoření kontejneru s vyhrazenou propustností

// Get reference to database that container will be created in
Database database = await cosmosClient.GetDatabase("DatabaseName");

// Container and autoscale throughput settings
ContainerProperties autoscaleContainerProperties = new ContainerProperties("ContainerName", "/partitionKey");
ThroughputProperties autoscaleThroughputProperties = ThroughputProperties.CreateAutoscaleThroughput(1000); //Set autoscale max RU/s

// Create the container with autoscale enabled
container = await database.CreateContainerAsync(autoscaleContainerProperties, autoscaleThroughputProperties);

Čtení aktuální propustnosti (RU/s)

// Get a reference to the resource
Container container = cosmosClient.GetDatabase("DatabaseName").GetContainer("ContainerName");

// Read the throughput on a resource
ThroughputProperties autoscaleContainerThroughput = await container.ReadThroughputAsync(requestOptions: null); 

// The autoscale max throughput (RU/s) of the resource
int? autoscaleMaxThroughput = autoscaleContainerThroughput.AutoscaleMaxThroughput;

// The throughput (RU/s) the resource is currently scaled to
int? currentThroughput = autoscaleContainerThroughput.Throughput;

Nastavení maximální kapacity automatického škálování (RU/s)

// Change the autoscale max throughput (RU/s)
await container.ReplaceThroughputAsync(ThroughputProperties.CreateAutoscaleThroughput(newAutoscaleMaxThroughput));

Azure Resource Manager

Šablony Azure Resource Manageru je možné použít ke zřízení automatické škálovatelné propustnosti pro nový databázový nebo kontejnerový prostředek u všech rozhraní API služby Azure Cosmos DB. Ukázky najdete v šablonách Azure Resource Manageru pro službu Azure Cosmos DB.

Šablony Azure Resource Manageru se záměrně nedají použít k migraci mezi zřízenou propustností a propustností automatického škálování u existujícího prostředku.

Azure CLI

Azure CLI se dá použít ke zřízení propustnosti automatického škálování pro nový prostředek databáze nebo kontejneru pro všechna rozhraní API služby Azure Cosmos DB nebo k povolení automatického škálování u existujícího prostředku.

Azure PowerShell

Azure PowerShell se dá použít ke zřízení propustnosti automatického škálování pro nový prostředek databáze nebo kontejneru pro všechna rozhraní API služby Azure Cosmos DB nebo k povolení automatického škálování u existujícího prostředku.

Další kroky