Erstellen von Azure Cosmos DB-Containern und -Datenbanken mit automatisch skaliertem Durchsatz
GILT FÜR: NoSQL MongoDB Cassandra Gremlin Tabelle
Mit Azure Cosmos DB können Sie Standarddurchsatz (manuell) oder per Autoskalierung bereitgestellten Durchsatz für Ihre Datenbanken und Container konfigurieren. Bei per Autoskalierung bereitgestelltem Durchsatz ermöglicht Azure Cosmos DB das Skalieren des Durchsatzes (RU/s) Ihrer Datenbank oder Ihres Containers automatisch und sofort. Der Durchsatz wird basierend auf der Nutzung skaliert, ohne dass dadurch Verfügbarkeit, Latenz, Durchsatz oder Leistung der Workload beeinträchtigt werden.
Per Autoskalierung bereitgestellter Durchsatz eignet sich gut für unternehmenskritische Workloads, die über variable oder unvorhersehbare Datenverkehrsmuster verfügen und SLAs für hohe Leistung und Skalierung erfordern. Dynamische Autoskalierung wird empfohlen, um den Durchsatz (RU/s) der Workloads unabhängig von der Verwendung, pro Region und Partitionsebene zu skalieren. In diesem Artikel werden die Vorteile des per Autoskalierung bereitgestellten Durchsatzes und Anwendungsfälle beschrieben.
Vorteile der automatischen Skalierung
Azure Cosmos DB-Datenbanken und -Container, die mit per Autoskalierung bereitgestelltem Durchsatz konfiguriert sind, bieten die folgenden Vorteile:
Einfach: Durch Autoskalierung ist die komplexe Verwaltung des Durchsatzes mit benutzerdefinierter Skripterstellung oder manueller Skalierung nicht mehr erforderlich.
Skalierbar: Mit Datenbanken und Containern wird der bereitgestellte Durchsatz nach Bedarf automatisch skaliert. Dabei entstehen keine Unterbrechungen für Client-Verbindungen, Anwendungen oder Azure Cosmos DB SLAs.
Kosteneffizient: Mit Autoskalierung können Sie den Durchsatz und die Kosten optimieren, indem Sie den Durchsatz situationsabhängig herunterskalieren. Sie zahlen nur für die Ressourcen, die von Ihren Workloads pro Stunde benötigt werden. Wenn Sie für alle Stunden in einem Monat eine maximale Anzahl von RUs/Sek. (Tmax) für die Autoskalierung festlegen und die gesamte Menge von Tmax für maximal 66 % (oder weniger) der Stunden nutzen, können Sie mit der Autoskalierung sparen. Zusätzlich zur dynamischen Skalierung ist das Hinzufügen einer sekundären Region für hohe Verfügbarkeit kostengünstiger, da jede Region und Partitionsskala unabhängig von der tatsächlichen Nutzung skaliert werden. Weitere Informationen finden Sie im Artikel Auswählen zwischen standardmäßig (manuell) bereitgestelltem und automatisch skaliertem Durchsatz.
Hochverfügbarkeit: Datenbanken und Container mit Autoskalierung verwenden dasselbe global verteilte, fehlertolerante, hochverfügbare Azure Cosmos DB-Back-End, um die Dauerhaftigkeit und ständige Hochverfügbarkeit von Daten sicherzustellen.
Anwendungsfälle der Autoskalierung
Anwendungsfälle des automatisch skalierten Durchsatzes:
Variable oder nicht vorhersehbare Workloads: Wenn Ihre Workloads variable oder unvorhersehbare Spitzenlasten aufweisen, unterstützt die Autoskalierung das automatische zentrale Hoch- und Herunterskalieren basierend auf der Nutzung. Beispiele hierfür sind Einzelhandelswebsites mit unterschiedlichen, saisonabhängigen Datenverkehrsmustern, IoT-Arbeitsauslastungen mit Spitzen zu verschiedenen Tageszeiten, Branchenanwendungen, die einige Male im Monat oder Jahr Auslastungsspitzen aufweisen, usw. Mit Autoskalierung ist es nicht mehr erforderliche, manuelle Vorkehrungen für die Spitzen- oder Durchschnittskapazität zu treffen.
Neue Anwendungen: Wenn Sie eine neue Anwendung entwickeln und sich nicht sicher sind, welchen Durchsatz (RU/s) Sie benötigen, erleichtert Ihnen die Autoskalierung die ersten Schritte. Sie können mit einem Einstiegspunkt von 100–1000 RU/s für die Autoskalierung beginnen, die Nutzung überwachen und im Lauf der Zeit den richtigen Durchsatz ermitteln.
Selten verwendete Anwendungen: Wenn Sie über eine Anwendung verfügen, die nur ein paar Stunden am Tag, in der Woche oder im Monat verwendet wird (z. B. eine Anwendungswebsite/allgemeine Website/Blogwebsite mit geringen Volumen), passt die Autoskalierung die Kapazität an, um die Spitzenauslastung zu bewältigen, und verringert die Kapazität, wenn die Auslastung gesunken ist.
Entwicklungs- und Testworkloads: Wenn Sie oder Ihr Team Azure Cosmos DB-Datenbanken und -Container während der Arbeitszeit verwenden, diese aber nicht in der Nacht oder an Wochenenden benötigen, können Sie durch die Autoskalierung Kosten sparen, indem Sie auf ein Minimum zentral herunterskalieren, wenn keine Nutzung erfolgt.
Geplante Produktionsworkloads/-abfragen: Wenn eine Reihe geplanter Anforderungen, Vorgänge oder Abfragen in Leerlaufzeiten ausgeführt werden soll, können Sie dies problemlos mit Autoskalierung durchführen. Wenn Sie die Workload ausführen müssen, wird der Durchsatz automatisch auf den erforderlichen Wert skaliert und anschließend herunterskaliert.
Das Entwickeln einer benutzerdefinierten Lösung für diese Probleme erfordert nicht nur sehr viel Zeit, sondern macht auch die Konfiguration oder den Code Ihrer Anwendung kompliziert. Mit der Autoskalierung werden die oben beschriebenen Szenarien vorkonfiguriert bereitgestellt, und die Notwendigkeit einer benutzerdefinierten oder manuellen Skalierung der Kapazität entfällt.
Funktionsweise von per Autoskalierung bereitgestelltem Durchsatz
Beim Konfigurieren von Containern und Datenbanken mit Autoskalierung müssen Sie den maximalen Durchsatz Tmax
angeben. Azure Cosmos DB skaliert den Durchsatz T
, sodass 0.1*Tmax <= T <= Tmax
. Wenn Sie z. B. den maximalen Durchsatz auf 20.000 RU/s festlegen, wird der Durchsatz auf einen Wert zwischen 2000 und 20.000 RU/s skaliert. Da die Skalierung automatisch und sofort erfolgt, kann der Durchsatz zu jedem beliebigen Zeitpunkt und ohne Verzögerung bis zum festgelegten Wert Tmax
betragen.
Jede Stunde wird Ihnen der höchste Durchsatz T
in Rechnung gestellt, auf den das System innerhalb dieser Stunde skaliert wurde. Wenn die dynamische Skalierung aktiviert ist, basiert die Skalierung auf der RU/s-Verwendung bei jeder physischen Partition und Region. Da jede Partition und Region unabhängig voneinander skaliert werden, kann dies zu Kosteneinsparungen für nicht einheitliche Workloads führen, da unnötige Skalierungen vermieden werden.
Bei der Autoskalierung beträgt der Einstiegspunkt für den maximalen Durchsatz (Tmax
) 1000 RU/s und lässt sich in Schritten von 100 und 1000 RU/s skalieren. Sie können Tmax
in Schritten von 1.000 RU/s festlegen und den Wert jederzeit ändern.
Aktivieren der Autoskalierung für vorhandene Ressourcen
Verwenden des Microsoft Azure-Portals, der CLI oder der PowerShell um die Autoskalierung für eine vorhandene Datenbank oder einen vorhandenen Container zu aktivieren. Sie können jederzeit zwischen per Autoskalierung bereitgestelltem Durchsatz und Standarddurchsatz (manuell) wechseln. Weitere Informationen finden Sie in dieser Dokumentation.
Durchsatz- und Speicherlimits für die Autoskalierung
Für einen beliebigen Wert Tmax
kann die Datenbank oder der Container insgesamt 0.1 * Tmax GB
speichern. Nachdem diese Menge an Speicher erreicht wurde, wird der maximale Durchsatz automatisch basierend auf dem neuen Speicherwert erhöht, ohne dass sich dies auf Ihre Anwendung auswirkt.
Wenn Sie z. B. mit dem Höchstwert von 50.000 RU/s beginnen (Skalierungen zwischen 5000 und 50.000 RU/s), können Sie bis zu 5000 GB an Daten speichern. Wenn Sie 5000 GB überschreiten (z. B. 6000 GB), gilt als neuer Höchstwert 60.000 RU/s (Skalierungen zwischen 6000 und 60.000 RU/s).
Wenn Sie den Durchsatz auf Datenbankebene mit Autoskalierung verwenden, gilt für die ersten 25 Container ein maximaler automatisch skalierter Durchsatz von 1000 RU/s (Skalierungen zwischen 100 und 1000 RU/s), solange Sie nicht mehr als 100 GB Speicher benötigen. Weitere Informationen finden Sie in dieser Dokumentation.
Vergleich – Container mit manuell skaliertem und automatisch skaliertem Durchsatz
Weitere Informationen finden Sie in diesem Dokument, in dem erläutert wird, wie Sie zwischen Standarddurchsatz (manuell) und Durchsatz mit Autoskalierung wählen.
Container mit Standarddurchsatz (manuell) | Container mit automatisch skaliertem Durchsatz | |
---|---|---|
Bereitgestellter Durchsatz (RU/s) | Manuell bereitgestellt. | Automatische und sofortige Skalierung basierend auf den Workload-Verwendungsmustern. |
Ratenbegrenzung von Anforderungen/Vorgängen (429) | Kann passieren, wenn die Nutzung die bereitgestellte Kapazität überschreitet. | Dies geschieht nicht, wenn Sie Durchsatz innerhalb des von Ihnen festgelegten Durchsatzbereichs mit Autoskalierung nutzen. |
Kapazitätsplanung | Sie müssen eine Kapazitätsplanung durchführen und den genauen benötigten Durchsatz festlegen. | Das System übernimmt automatisch die Kapazitätsplanung und -verwaltung. |
Preise | Sie zahlen für den manuell bereitgestellten Durchsatz pro Stunde nach dem Tarif für Standard-RU/s (manuell) auf Stundenbasis. | Sie zahlen pro Stunde für den höchsten Durchsatz, auf den das System innerhalb der Stunde zentral hochskaliert wurde. Bei Konten mit einer Schreibregion zahlen Sie für den genutzten Durchsatz auf Stundenbasis nach dem Tarif für Autoskalierungs-RUs/s pro Stunde. Bei Konten mit mehreren Schreibregionen fallen keine zusätzlichen Kosten für die Autoskalierung an. Sie zahlen für den genutzten Durchsatz auf Stundenbasis nach demselben Tarif für Schreib-RU/s für mehrere Regionen pro Stunde. |
Für folgende Workloadtypen am besten geeignet | Vorhersehbare und stabile Workloads | Nicht vorhersehbare und variable Workloads |
Migrieren des standardmäßig bereitgestellten Durchsatzes zur Autoskalierung
Benutzer, die zahlreiche Ressourcen von standardmäßig bereitgestelltem Durchsatz zur Autoskalierung migrieren möchten, können ein Azure CLI-Skript verwenden, um jede Durchsatzressource in einem Azure-Abonnement zur Autoskalierung zu übertragen. Weitere Informationen finden Sie unter Convert to Autoscale (Konvertieren zu Autoskalierung).
Nächste Schritte
- Erfahren Sie mehr in den häufig gestellten Fragen zur Autoskalierung.
- Erfahren Sie, wie Sie sich zwischen manuellem Durchsatz und automatisch skaliertem Durchsatz entscheiden.
- Erfahren Sie mehr über das Bereitstellen von automatisch skaliertem Durchsatz für eine Datenbank oder einen Container in Azure Cosmos DB.
- Erfahren Sie mehr über die Partitionierung in Azure Cosmos DB.
- Versuchen Sie, die Kapazitätsplanung für eine Migration zu Azure Cosmos DB durchzuführen? Sie können Informationen zu Ihrem vorhandenen Datenbankcluster für die Kapazitätsplanung verwenden.
- Wenn Sie lediglich die Anzahl der virtuellen Kerne und Server in Ihrem vorhandenen Datenbankcluster kennen, lesen Sie die Informationen zum Schätzen von Anforderungseinheiten mithilfe von virtuellen Kernen oder virtuellen CPUs.
- Wenn Sie die typischen Anforderungsraten für Ihre aktuelle Datenbankworkload kennen, lesen Sie die Informationen zum Schätzen von Anforderungseinheiten mit dem Azure Cosmos DB-Kapazitätsplaner