Automatikus skálázási átviteli sebesség kiépítése adatbázison vagy tárolón az Azure Cosmos DB-ben – API for NoSQL

A KÖVETKEZŐRE VONATKOZIK: NoSQL

Ez a cikk azt ismerteti, hogyan építhet ki automatikus skálázási átviteli sebességet egy adatbázison vagy tárolón (gyűjtemény, grafikon vagy tábla) az Azure Cosmos DB for NoSQL-ben. Engedélyezheti az automatikus skálázást egyetlen tárolón, vagy automatikus skálázási átviteli sebességet építhet ki egy adatbázisra, és megoszthatja az adatbázis összes tárolója között.

Ha másik API-t használ, az átviteli sebesség kiépítéséhez tekintse meg a MongoDB API-t, a Cassandra API-t és a Gremlin api-cikkeit .

Azure Portal

Új adatbázis vagy tároló létrehozása automatikus skálázással

  1. Jelentkezzen be a Azure Portal vagy az Azure Cosmos DB Explorerbe.

  2. Lépjen az Azure Cosmos DB-fiókjához, és nyissa meg a Data Explorer lapot.

  3. Válassza az Új tároló lehetőséget. Adja meg az adatbázis, a tároló és a partíciókulcs nevét. Az adatbázis vagy tároló átviteli sebessége területen válassza az Automatikus skálázás lehetőséget, és állítsa be azt a maximális átviteli sebességet (RU/s), amelyre az adatbázist vagy tárolót skálázni szeretné.

    Tároló létrehozása és az automatikus skálázás kiosztott átviteli sebességének konfigurálása

  4. Válassza az OK lehetőséget.

Ha automatikus skálázást szeretne kiépíteni a megosztott átviteli sebességű adatbázison, új adatbázis létrehozásakor válassza az Adatbázis átviteli sebességének kiépítése lehetőséget.

Automatikus skálázás engedélyezése meglévő adatbázison vagy tárolón

  1. Jelentkezzen be a Azure Portal vagy az Azure Cosmos DB Explorerbe.

  2. Lépjen az Azure Cosmos DB-fiókjához, és nyissa meg a Data Explorer lapot.

  3. Válassza a Tároló Skálázás és beállítások elemét, vagy a Skálázás lehetőséget az adatbázishoz.

  4. A Skálázás területen válassza az Automatikus skálázás és a Mentés lehetőséget.

    Automatikus skálázás engedélyezése meglévő tárolón

Megjegyzés

Ha egy meglévő adatbázison vagy tárolón engedélyezi az automatikus skálázást, a maximális RU/s kezdőértékét a rendszer határozza meg az aktuális manuális kiosztott átviteli sebesség beállításai és a tárterület alapján. A művelet befejezése után szükség esetén módosíthatja a maximális RU/s értéket. Részletek

Azure Cosmos DB .NET V3 SDK

Az automatikus skálázási erőforrások kezeléséhez használja az Azure Cosmos DB .NET SDK for API for NoSQL 3.9-es vagy újabb verzióját .

Fontos

A .NET SDK-val új automatikus skálázási erőforrásokat hozhat létre. Az SDK nem támogatja az automatikus skálázás és a standard (manuális) átviteli sebesség közötti migrálást. A migrálási forgatókönyv jelenleg csak a Azure Portal, a parancssori felület és a PowerShell esetében támogatott.

Adatbázis létrehozása megosztott átviteli sebességgel

// 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);

Tároló létrehozása dedikált átviteli sebességgel

// 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);

Az aktuális átviteli sebesség (RU/s) olvasása

// 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;

Az automatikus skálázás maximális átviteli sebességének módosítása (RU/s)

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

Azure Cosmos DB Java V4 SDK

Az automatikus skálázási erőforrások kezeléséhez használhatja az Azure Cosmos DB Java SDK for API for NoSQL 4.0-s vagy újabb verzióját .

Fontos

A Java SDK-val új automatikus skálázási erőforrásokat hozhat létre. Az SDK nem támogatja az automatikus skálázás és a standard (manuális) átviteli sebesség közötti migrálást. A migrálási forgatókönyv jelenleg csak a Azure Portal, a parancssori felület és a PowerShell esetében támogatott.

Adatbázis létrehozása megosztott átviteli sebességgel

// Create instance of CosmosClient
CosmosAsyncClient client = new CosmosClientBuilder()
    .setEndpoint(HOST)
    .setKey(PRIMARYKEY)
    .setConnectionPolicy(CONNECTIONPOLICY)
    .buildAsyncClient();

// Autoscale throughput settings
ThroughputProperties autoscaleThroughputProperties = ThroughputProperties.createAutoscaledThroughput(1000); //Set autoscale max RU/s

//Create the database with autoscale enabled
CosmosAsyncDatabase database = client.createDatabase(databaseName, autoscaleThroughputProperties).block().getDatabase();

Tároló létrehozása dedikált átviteli sebességgel

// Get reference to database that container will be created in
CosmosAsyncDatabase database = client.createDatabase("DatabaseName").block().getDatabase();

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

// Create the container with autoscale enabled
CosmosAsyncContainer container = database.createContainer(autoscaleContainerProperties, autoscaleThroughputProperties, new CosmosContainerRequestOptions())
                                .block()
                                .getContainer();

Az aktuális átviteli sebesség (RU/s) olvasása

// Get a reference to the resource
CosmosAsyncContainer container = client.getDatabase("DatabaseName").getContainer("ContainerName");

// Read the throughput on a resource
ThroughputProperties autoscaleContainerThroughput = container.readThroughput().block().getProperties();

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

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

Az automatikus skálázás maximális átviteli sebességének módosítása (RU/s)

// Change the autoscale max throughput (RU/s)
container.replaceThroughput(ThroughputProperties.createAutoscaledThroughput(newAutoscaleMaxThroughput)).block();

Azure Resource Manager

Az Azure Resource Manager-sablonok segítségével automatikus skálázási átviteli sebességet építhet ki egy új adatbázisra vagy tárolószintű erőforrásra az összes Azure Cosmos DB API-hoz. Mintákért lásd: Azure Resource Manager-sablonok az Azure Cosmos DB-hez. Az Azure Resource Manager-sablonok nem használhatók meglévő erőforrások kiépített és automatikus skálázási átviteli sebessége közötti migrálásra.

Azure CLI

Az Azure CLI-vel automatikus skálázási átviteli sebességet építhet ki egy új adatbázisra vagy tárolószintű erőforrásra az összes Azure Cosmos DB API-hoz, vagy engedélyezheti az automatikus skálázást egy meglévő erőforráson. A mintákért lásd: Azure CLI-minták az Azure Cosmos DB-hez.

Azure PowerShell

Azure PowerShell használható az automatikus skálázási átviteli sebesség kiépítéséhez egy új adatbázison vagy tárolószintű erőforráson az összes Azure Cosmos DB API-hoz, vagy engedélyezheti az automatikus skálázást egy meglévő erőforráson. A mintákért lásd Azure PowerShell Azure Cosmos DB-hez készült mintákat.

Következő lépések