Delen via


Doorvoer voor automatische schaalaanpassing inrichten voor databases of containers in Azure Cosmos DB - API voor NoSQL

VAN TOEPASSING OP: NoSQL

In dit artikel wordt uitgelegd hoe u doorvoer voor automatische schaalaanpassing inricht voor een database of container (verzameling, grafiek of tabel) in Azure Cosmos DB voor NoSQL. U kunt automatische schaalaanpassing inschakelen voor één container of doorvoer voor automatische schaalaanpassing inrichten in een database en deze delen tussen alle containers in de database.

Als u een andere API gebruikt, raadpleegt u API voor MongoDB, API voor Cassandra, API voor Gremlin-artikelen om de doorvoer in te richten.

Azure Portal

Nieuwe database of container maken met automatische schaalaanpassing

  1. Meld u aan bij De Azure-portal of de Azure Cosmos DB-verkenner.

  2. Navigeer naar uw Azure Cosmos DB-account en open het tabblad Data Explorer .

  3. Selecteer Nieuwe container. Voer een naam in voor uw database, container en een partitiesleutel. Selecteer onder database- of containerdoorvoer de optie Voor automatisch schalen en stel de maximale doorvoer (RU/s) in waarnaar u de database of container wilt schalen.

    Een container maken en ingerichte doorvoer automatisch schalen configureren

  4. Selecteer OK.

Als u automatische schaalaanpassing wilt inrichten voor een gedeelde doorvoerdatabase, selecteert u de optie Databasedoorvoer inrichten bij het maken van een nieuwe database.

Automatische schaalaanpassing inschakelen voor bestaande database of container

  1. Meld u aan bij De Azure-portal of de Azure Cosmos DB-verkenner.

  2. Navigeer naar uw Azure Cosmos DB-account en open het tabblad Data Explorer .

  3. Selecteer Schalen en instellingen voor uw container of Schalen voor uw database.

  4. Selecteer onder Schaal de optie Automatisch schalen en Opslaan.

    Automatisch schalen inschakelen voor een bestaande container

Notitie

Wanneer u automatische schaalaanpassing inschakelt voor een bestaande database of container, wordt de beginwaarde voor max. RU/s bepaald door het systeem, op basis van uw huidige handmatig ingerichte doorvoerinstellingen en opslag. Nadat de bewerking is voltooid, kunt u de maximale RU/s zo nodig wijzigen. Meer informatie.

Azure Cosmos DB .NET V3 SDK

Gebruik versie 3.9 of hoger van de Azure Cosmos DB .NET SDK voor API voor NoSQL om resources voor automatisch schalen te beheren.

Belangrijk

U kunt de .NET SDK gebruiken om nieuwe resources voor automatisch schalen te maken. De SDK biedt geen ondersteuning voor migratie tussen automatische schaalaanpassing en standaarddoorvoer (handmatig). Het migratiescenario wordt momenteel alleen ondersteund in Azure Portal, CLI en PowerShell.

Database maken met gedeelde doorvoer

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

Container maken met toegewezen doorvoer

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

De huidige doorvoer lezen (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;

De maximale doorvoer voor automatische schaalaanpassing wijzigen (RU/s)

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

Azure Cosmos DB Java V4 SDK

U kunt versie 4.0 of hoger van de Azure Cosmos DB Java SDK voor API voor NoSQL gebruiken om resources voor automatisch schalen te beheren.

Belangrijk

U kunt de Java SDK gebruiken om nieuwe resources voor automatisch schalen te maken. De SDK biedt geen ondersteuning voor migratie tussen automatische schaalaanpassing en standaarddoorvoer (handmatig). Het migratiescenario wordt momenteel alleen ondersteund in Azure Portal, CLI en PowerShell.

Database maken met gedeelde doorvoer

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

Container maken met toegewezen doorvoer

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

De huidige doorvoer lezen (RU/s)

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

De maximale doorvoer voor automatische schaalaanpassing wijzigen (RU/s)

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

Azure Resource Manager

Azure Resource Manager-sjablonen kunnen worden gebruikt om doorvoer automatisch schalen in te richten voor een nieuwe database of resource op containerniveau voor alle Azure Cosmos DB-API's. Zie Azure Resource Manager-sjablonen voor Azure Cosmos DB voor voorbeelden. Azure Resource Manager-sjablonen kunnen standaard niet worden gebruikt voor migratie tussen ingerichte doorvoer en automatische schaalaanpassing voor een bestaande resource.

Azure-CLI

Azure CLI kan worden gebruikt om doorvoer voor automatische schaalaanpassing in te richten voor een nieuwe database of resource op containerniveau voor alle Azure Cosmos DB-API's of om automatische schaalaanpassing in te schakelen voor een bestaande resource. Zie Azure CLI-voorbeelden voor Azure Cosmos DB voor voorbeelden.

Azure PowerShell

Azure PowerShell kan worden gebruikt om doorvoer voor automatische schaalaanpassing in te richten op een nieuwe database of resource op containerniveau voor alle Azure Cosmos DB-API's of om automatische schaalaanpassing in te schakelen voor een bestaande resource. Zie Azure PowerShell-voorbeelden voor Azure Cosmos DB voor voorbeelden.

Volgende stappen