Ermitteln der Gebühr für Anforderungseinheiten für Vorgänge, die in Azure Cosmos DB for Table ausgeführt werden
GILT FÜR: Tabelle
Azure Cosmos DB unterstützt viele APIs wie z.B. SQL, MongoDB, Cassandra, Gremlin und Tabelle. Jede API verfügt über einen eigenen Satz von Datenbankvorgängen. Diese Vorgänge reichen von einfachen Lese- und Schreibvorgängen für Datenpunkte bis hin zu komplexen Abfragen. Jeder Datenbankvorgang beansprucht je nach Komplexität eine bestimmte Menge an Systemressourcen.
Die Kosten sämtlicher Datenbankvorgänge werden von Azure Cosmos DB normalisiert und in Anforderungseinheiten (Request Units, RUs) ausgedrückt. Die Anforderungsgebühr entspricht den insgesamt für Ihre Datenbankvorgänge genutzten Anforderungseinheiten. Sie können sich Anforderungseinheiten als Währung zur Abstrahierung der Systemressourcen wie CPU, IOPS und Arbeitsspeicher vorstellen, die zum Ausführen der von Azure Cosmos DB unterstützten Datenbankvorgänge erforderlich sind. Unabhängig davon, welche API Sie für die Interaktion mit Ihrem Azure Cosmos DB-Container verwenden, werden die Kosten immer in RUs gemessen. Unabhängig davon, ob es sich bei dem Datenbankvorgang um einen Schreib-, Lese- oder Abfragevorgang handelt, werden die Kosten immer in RUs gemessen. Weitere Informationen finden Sie im Artikel Aspekte zu Anforderungseinheiten.
In diesem Artikel werden verschiedene Methoden beschrieben, mit denen Sie den Verbrauch von Anforderungseinheiten (Request Units, RU) für einen beliebigen Vorgang ermitteln können, der für einen Container in Azure Cosmos DB for Table ausgeführt wurde. Wenn Sie eine andere API verwenden, finden Sie weitere Informationen zum Ermitteln der RU/s-Gebühr in den Artikeln zur API für MongoDB, API für Cassandra, API für Gremlin und API für NoSQL.
Verwenden des .NET SDK
Aktuell ist das einzige SDK, das die RU-Gebühr für Tabellenvorgänge zurückgibt, das .NET-Standard-SDK. Das Objekt TableResult
macht eine RequestCharge
-Eigenschaft verfügbar, die durch das SDK aufgefüllt wird, wenn Sie es für Azure Cosmos DB for Table verwenden:
CloudTable tableReference = client.GetTableReference("table");
TableResult tableResult = tableReference.Execute(TableOperation.Insert(new DynamicTableEntity("partitionKey", "rowKey")));
if (tableResult.RequestCharge.HasValue) // would be false when using Azure Storage Tables
{
double requestCharge = tableResult.RequestCharge.Value;
}
Weitere Informationen finden Sie unter Schnellstart: Erstellen einer API für Tabellen-App mithilfe des .NET SDK und von Azure Cosmos DB.
Nächste Schritte
Informationen zum Optimieren Ihres RU-Verbrauchs finden Sie in diesen Artikeln: