Localizar o encargo da unidade de solicitação para operações executadas no Azure Cosmos DB for Gremlin

APLICA-SE A: Gremlin

O Azure Cosmos DB dá suporte a muitas APIs como SQL, MongoDB, Cassandra, Gremlin e Table. Cada API tem seu próprio conjunto de operações de banco de dados. Essas operações variam de simples leituras e gravações de pontos a consultas complexas. Cada operação de banco de dados consome recursos do sistema com base na complexidade da operação.

O custo de todas as operações do banco de dados é normalizado pelo Azure Cosmos DB e expresso por Unidades de Solicitação (ou RUs, abreviado na sigla em inglês). O preço da solicitação corresponde às unidades de solicitação consumidas por todas as operações de banco de dados. Você pode encarar as RUs como uma moeda de desempenho que abstrai os recursos do sistema (como CPU, IOPS e memória) necessários para executar as operações de banco de dados compatíveis com o Azure Cosmos DB. Independentemente da API usada para interagir com o contêiner do Azure Cosmos DB, os custos sempre serão medidos por RUs. Independentemente da operação de banco de dados ser uma gravação, uma leitura pontual ou uma consulta, os custos serão sempre medidos em RUs. Para saber mais, confira o artigo As unidades de solicitação e considerações sobre elas.

Este artigo apresenta as diferentes maneiras de localizar o consumo de RU (unidade de solicitação) de qualquer operação executada em um contêiner no Azure Cosmos DB for Gremlin. Se você estiver usando uma API diferente, confira os artigos API para MongoDB, API do Cassandra, API do SQL e API de Tabela para localizar o encargo das RUs.

Os cabeçalhos retornados pela API do Gremlin são mapeados para atributos de status personalizados, que atualmente são exibidos pelo SDK do Java e do .NET do Gremlin. O encargo de solicitação está disponível na chave x-ms-request-charge. Ao usar a API do Gremlin, você tem várias opções para encontrar o consumo de RU para uma operação em um contêiner do Azure Cosmos.

Use o Portal do Azure

  1. Entre no portal do Azure.

  2. Crie uma conta do Azure Cosmos e alimente-a com alguns dados ou selecione uma conta existente que já contenha dados.

  3. Acesse o painel do Data Explorer e, em seguida, selecione o contêiner no qual deseja trabalhar.

  4. Insira uma consulta válida e, em seguida, selecione Executar Consulta do Gremlin.

  5. Selecione Estatísticas da Consulta para exibir o preço de solicitação real da solicitação executada.

Captura de tela para obter um encargo da solicitação de consulta do Gremlin no portal do Azure

Usar o driver de SDK do .NET

Quando você usa o SDK do .NET do Gremlin, os atributos de status ficam disponíveis na propriedade StatusAttributes do objeto ResultSet<>:

ResultSet<dynamic> results = client.SubmitAsync<dynamic>("g.V().count()").Result;
double requestCharge = (double)results.StatusAttributes["x-ms-request-charge"];

Para obter mais informações, confira Início rápido: criar um aplicativo .NET Framework ou Core usando uma conta do Azure Cosmos DB for Gremlin.

Usar o driver de SDK do Java

Quando você usa o SDK do Java do Gremlin, você pode recuperar os atributos de status chamando o método statusAttributes() no objeto ResultSet:

ResultSet results = client.submit("g.V().count()");
Double requestCharge = (Double)results.statusAttributes().get().get("x-ms-request-charge");

Para obter mais informações, confira Início Rápido: criar um banco de dados de grafo no Azure Cosmos DB usando o SDK do Java.

Próximas etapas

Para saber mais sobre como otimizar o consumo de RU, confira estes artigos: