So funktioniert Amazon DocumentDB serverless - Amazon DocumentDB

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

So funktioniert Amazon DocumentDB serverless

Übersicht

Amazon DocumentDB serverless eignet sich für die anspruchsvollsten, sehr variablen Workloads. Zum Beispiel könnte Ihre Datenbanknutzung für einen kurzen Zeitraum sehr hoch sein, gefolgt von langen Zeiträumen mit nur leichter oder gar keiner Aktivität. Beispiele hierfür sind Einzelhandels-Websites, Spiele oder Sportveranstaltungen mit regelmäßigen Werbeveranstaltungen sowie Datenbanken, die nach Bedarf Berichte erstellen. Andere Beispiele sind Entwicklungs- und Testumgebungen sowie neue Anwendungen, in denen die Nutzung schnell ansteigen könnte. In Fällen wie diesen und vielen anderen ist es mit dem bereitgestellten Modell nicht immer möglich, die Kapazität vorab korrekt zu konfigurieren. Es können auch höhere Kosten entstehen, wenn Sie zu viel Kapazität bereitstellen, die Sie dann nicht benötigen.

Im Gegensatz dazu eignen sich von DocumentDB bereitgestellte Cluster für stetige Workloads. Bei bereitgestellten Clustern wählen Sie eine Instanzklasse aus, die über eine vordefinierte Menge an Arbeitsspeicher, CPU-Leistung, I/O Bandbreite usw. verfügt. Wenn sich Ihre Workload ändert, ändern Sie die Instance-Klasse Ihres Writers und Ihrer Readers manuell. Das bereitgestellte Modell funktioniert gut, wenn Sie die Kapazität im Vorfeld der erwarteten Verbrauchsmustern anpassen können. Es ist akzeptabel, dass kurze Ausfälle auftreten, während Sie die Instance-Klasse des Writers und der Reader in Ihrem Cluster ändern.

DocumentDB Serverless wurde von Grund auf so konzipiert, dass es serverlose Cluster unterstützt, die sofort skalierbar sind. DocumentDB serverless wurde so konzipiert, dass es das gleiche Maß an Sicherheit und Isolierung bietet wie bereitgestellte Writer und Reader. Diese Aspekte sind in serverlosen Cloud-Umgebungen mit mehreren Mandanten entscheidend. Der dynamische Skalierungsmechanismus umfasst sehr wenig Aufwand, sodass er schnell auf Änderungen der Datenbank-Workload reagieren kann. Er bietet auch genügend Leistung, um einen drastischen Anstieg beim Bedarf nach Rechenleistung zu meistern.

Wenn Sie DocumentDB serverless verwenden, können Sie einen DocumentDB-Cluster erstellen, ohne an eine bestimmte Datenbankkapazität für jeden Writer und Reader gebunden zu sein. Sie geben den minimalen und maximalen Bereich für die Kapazität an. DocumentDB skaliert jeden serverlosen DocumentDB-Writer oder -Leser im Cluster innerhalb dieses Kapazitätsbereichs. Durch die Verwendung eines Multi-AZ-Clusters, in dem jeder Writer oder Reader dynamisch skalieren kann, können Sie die dynamische Skalierung und Hochverfügbarkeit nutzen.

DocumentDB serverless skaliert die Datenbankressourcen automatisch auf der Grundlage Ihrer Mindest- und Höchstkapazitätsspezifikationen. Die Skalierung ist schnell, da die meisten Skalierungsereignisoperationen den Writer oder Reader auf demselben Host halten. In den seltenen Fällen, in denen ein serverloser DocumentDB-Writer oder -Leser von einem Host auf einen anderen verschoben wird, verwaltet DocumentDB serverless die Verbindungen automatisch. Sie müssen Ihren Datenbank-Client-Anwendungscode oder Ihre Datenbank-Verbindungszeichenfolgen nicht ändern.

Bei DocumentDB Serverless sind, wie bei bereitgestellten Clustern, Speicherkapazität und Rechenkapazität getrennt. Wenn wir von serverloser Kapazität und Skalierung von DocumentDB sprechen, ist es immer die Rechenkapazität, die zunimmt oder sinkt. Somit kann Ihr Cluster viele Terabyte an Daten enthalten, auch wenn die CPU und Speicherkapazität auf ein niedriges Niveau herunterskalieren.

Anstelle der Bereitstellung und Verwaltung von Datenbankservern geben Sie die Datenbankkapazität an. Die tatsächliche Kapazität der serverlosen DocumentDB-Writer oder -Lesegeräte variiert je nach Arbeitslast im Laufe der Zeit. Details zu diesem Mechanismus finden Sie unter Serverlose Skalierung von Amazon DocumentDB.

Konfigurationen für Amazon DocumentDB-Cluster

Für jeden Ihrer Amazon DocumentDB-Cluster können Sie eine beliebige Kombination aus serverloser DocumentDB-Kapazität, bereitgestellter Kapazität oder beidem wählen.

Sie können einen Cluster einrichten, der sowohl serverlose als auch bereitgestellte DocumentDB-Kapazität enthält. Dies wird als Cluster mit gemischter Konfiguration bezeichnet. Nehmen wir beispielsweise an, dass Sie mehr read/write Kapazität benötigen, als für einen serverlosen DocumentDB-Writer verfügbar ist. In diesem Fall können Sie den Cluster mit einem sehr großen bereitgestellten Writer einrichten. Dann können Sie DocumentDB weiterhin serverlos für die Leser verwenden. Oder nehmen Sie an, dass die Schreib-Workload für Ihren Cluster variiert, die Lese-Workload jedoch stabil ist. In diesem Fall können Sie Ihren Cluster mit einem serverlosen DocumentDB-Writer und einem oder mehreren bereitgestellten Lesegeräten einrichten.

Sie können auch einen Cluster einrichten, in dem die gesamte Kapazität von DocumentDB serverless verwaltet wird. Dazu können Sie einen neuen Cluster erstellen und DocumentDB von Anfang an serverless verwenden. Oder Sie können die gesamte bereitgestellte Kapazität in einem vorhandenen Cluster durch DocumentDB serverless ersetzen. Die Verfahren zum Erstellen eines neuen Clusters mit DocumentDB serverless oder zum Umstellen eines vorhandenen Clusters auf DocumentDB serverless finden Sie unter und. Einen Cluster erstellen, der Amazon DocumentDB serverless verwendet Migration zu Amazon DocumentDB serverlos

Wenn Sie DocumentDB in einem Cluster überhaupt nicht serverlos verwenden, werden alle Writer und Reader im Cluster bereitgestellt. Dies ist der häufigste Clustertyp, mit dem die meisten Benutzer vertraut sind. Die bereitgestellte Kapazität ist konstant. Die Gebühren sind relativ einfach zu prognostizieren. Sie müssen jedoch im Vorfeld prognostizieren, wie viel Kapazität Sie benötigen. In einigen Fällen sind Ihre Prognosen möglicherweise ungenau oder Ihr Kapazitätsbedarf kann sich ändern. In diesen Fällen kann Ihr Cluster unterprovisioniert (langsamer als gewünscht) oder überprovisioniert (teurer als gewünscht) werden.

Serverlose Skalierungskapazität von Amazon DocumentDB

Die Maßeinheit für Amazon DocumentDB serverless ist die DocumentDB Capacity Unit (DCU). Die serverlose Skalierungskapazität von DocumentDB ist nicht an die Instanzklassen gebunden, die Sie für bereitgestellte Cluster verwenden.

Jede DCU ist eine Kombination aus ungefähr 2 Gibibyte (GiB) Arbeitsspeicher, entsprechender CPU und Netzwerk. Mit dieser Maßeinheit geben Sie den Kapazitätsbereich der Datenbank an. Die Metriken ServerlessDatabaseCapacity und DCUUtilization CloudWatch helfen Ihnen festzustellen, wie viel Kapazität Ihre Datenbank tatsächlich nutzt und wo diese Kapazität innerhalb des angegebenen Bereichs liegt.

Jeder serverlose DocumentDB-Writer oder -Leser verfügt zu jedem Zeitpunkt über eine Kapazität. Die Kapazität ist eine Fließkommazahl, die Folgendes darstellt: DCUs Die Kapazität steigt oder nimmt ab, sobald der Writer oder Reader skaliert. Dieser Wert wird jede Sekunde gemessen. Für jeden Cluster, in dem Sie DocumentDB serverless verwenden möchten, definieren Sie einen Kapazitätsbereich: die minimalen und maximalen Kapazitätswerte, zwischen denen jeder serverlose DocumentDB-Writer oder -Leser skalieren kann. Der Kapazitätsbereich ist für jeden serverlosen DocumentDB-Writer oder -Leser in einem Cluster derselbe. Jeder serverlose DocumentDB-Writer oder -Leser hat seine eigene Kapazität, die irgendwo in diesem Bereich liegt.

DocumentDB serverless wird auf DocumentDB 5.0.0 und höher mit einem Kapazitätsbereich von 0,5 bis 256 unterstützt. DCUs

Die kleinste serverlose DocumentDB-Kapazität, die Sie definieren können, ist 0,5. DCUs Sie können eine höhere Zahl angeben, wenn sie kleiner oder gleich dem Wert für die maximal unterstützte Kapazität ist. Wenn Sie die Mindestkapazität auf einen kleinen Wert festlegen, verbrauchen leicht ausgelastete Cluster nur minimale Rechenressourcen. Gleichzeitig bleiben sie bereit, Verbindungen sofort anzunehmen und hochzuskalieren, wenn ihre Aktivität ansteigt.

Wir empfehlen, den Mindestwert auf einen Wert festzulegen, der es jedem Autor oder Leser ermöglicht, den Arbeitssatz der Anwendung im Pufferpool zu speichern. Auf diese Weise wird der Inhalt des Pufferpools in Zeiten geringer Aktivität nicht verworfen. Alle Überlegungen zur Auswahl des Skalierungskapazitätsbereichs finden Sie unterAuswahl des Skalierungskapazitätsbereichs für einen serverlosen DocumentDB-Cluster.

Je nachdem, wie Sie die Lesegeräte in einer Multi-AZ-Bereitstellung konfigurieren, können ihre Kapazitäten an die Kapazität des Schreibers gebunden oder unabhängig voneinander genutzt werden. Weitere Informationen zur Vorgehensweise finden Sie unter Die Promotion-Stufe für serverlose Lesegeräte anzeigen und ändern.

Bei der serverlosen Überwachung von DocumentDB werden die Kapazitätswerte für den Writer und die Reader in Ihrem Cluster im Laufe der Zeit gemessen. Wenn Ihre Datenbank nicht auf die Mindestkapazität herunterskaliert, können Sie Maßnahmen ergreifen, z. B. den minimalen Wert anpassen und Ihre Datenbankanwendung optimieren. Wenn Ihre Datenbank ihre maximale Kapazität konsequent erreicht, können Sie Maßnahmen wie die Erhöhung des maximalen Werts ergreifen. Sie können auch Ihre Datenbankanwendung optimieren und die Abfragelast auf mehr Reader verteilen.

Die Gebühren für serverlose DocumentDB-Kapazitäten werden in DCU-Stunden gemessen. Informationen zur Berechnung der Gebühren für serverlose DocumentDB-Dienste finden Sie unter Amazon DocumentDB DocumentDB-Preise. Nehmen wir an, dass die Gesamtzahl der Autoren und Leser in Ihrem Cluster n beträgt. In diesem Fall verbraucht der Cluster mindestens n x, DCUs wenn Sie keine Datenbankoperationen ausführen. Amazon DocumentDB selbst führt möglicherweise Überwachungs- oder Wartungsvorgänge durch, die eine geringe Belastung verursachen. Dieser Cluster verbraucht maximal n x, DCUs wenn die Datenbank mit voller Kapazität läuft.

Weitere Informationen zur Auswahl geeigneter minimaler und maximaler DCU-Werte finden Sie unter. Auswahl des Skalierungskapazitätsbereichs für einen serverlosen DocumentDB-Cluster Die von Ihnen angegebenen minimalen und maximalen DCU-Werte wirken sich auch auf einige Amazon DocumentDB DocumentDB-Instance-Limits aus. Einzelheiten zur Interaktion zwischen dem Kapazitätsbereich und den Instance-Limits finden Sie unter. Beschränkungen für serverlose Amazon DocumentDB DocumentDB-Instances

Serverlose Skalierung von Amazon DocumentDB

Für jeden serverlosen DocumentDB-Writer oder -Leser verfolgt Amazon DocumentDB kontinuierlich die Nutzung von Ressourcen wie CPU, Arbeitsspeicher und Netzwerk. Diese Messungen werden zusammen als Last bezeichnet. Die Last umfasst die von Ihrer Anwendung ausgeführten Datenbankoperationen. Es umfasst auch die Hintergrundverarbeitung für den Datenbankserver und Verwaltungsaufgaben von Amazon DocumentDB. Wenn die Kapazität durch einen dieser Faktoren eingeschränkt wird, wird DocumentDB serverless skaliert. DocumentDB serverless skaliert auch, wenn es Leistungsprobleme erkennt, die es auf diese Weise lösen kann. Sie können die Ressourcennutzung und ihre Auswirkungen auf die serverlose Skalierung von DocumentDB überwachen, indem Sie die Verfahren unter verwenden. Serverlose Überwachung von Amazon DocumentDB

Die Auslastung kann je nach Writer und Reader in Ihrem Cluster variieren. Der Writer verarbeitet Schreibvorgänge und führt alle Datenänderungen am Cluster-Volume durch. Leser können Anfragen nur mit Leserechten bearbeiten.

Skalierung ist der Vorgang, mit dem die serverlose Kapazität von DocumentDB für Ihre Datenbank erhöht oder verringert wird. Mit DocumentDB serverless hat jeder Writer und Reader seinen eigenen aktuellen Kapazitätswert, gemessen in. DCUs DocumentDB serverless skaliert einen Writer oder Reader auf eine höhere Kapazität, wenn die aktuelle Kapazität zu gering ist, um die Last zu bewältigen. Der Writer oder Reader wird auf eine geringere Kapazität skaliert, wenn seine aktuelle Kapazität höher als erforderlich ist.

DocumentDB serverless kann die Kapazität schrittweise erhöhen. Wenn Ihr Workload-Bedarf die aktuelle Datenbankkapazität eines Schreibers oder Lesers erreicht, erhöht DocumentDB serverless die Anzahl der DCUs für diesen Writer oder Reader. DocumentDB serverless skaliert die Kapazität in den Schritten, die erforderlich sind, um die beste Leistung für die verbrauchten Ressourcen zu erzielen. Die Skalierung erfolgt in Schritten von nur 0,5. DCUs Je größer die aktuelle Kapazität, desto größer ist das Skalierungsinkrement und desto schneller kann die Skalierung erfolgen.

Da die serverlose Skalierung von DocumentDB so häufig, detailliert und unterbrechungsfrei erfolgt, verursacht sie keine diskreten Ereignisse in der. AWS Management Console Stattdessen können Sie die CloudWatch Amazon-Metriken wie serverlessDatabaseCapacity und messen und DCUUtilization deren Mindest-, Höchst- und Durchschnittswerte im Zeitverlauf verfolgen. Weitere Informationen zur serverlosen Überwachung von DocumentDB finden Sie unter. Serverlose Überwachung von Amazon DocumentDB

Das Hoch- oder Herunterskalieren kann folgende Ursachen haben:

  • Speichernutzung

  • CPU-Auslastung

  • Netzwerkauslastung

  • Speichernutzung

Sie können diese Ursachen der Skalierung up/down auf serverlosen DocumentDB-Instanzen überwachen. Weitere Informationen finden Sie unter Serverlose Überwachung von Amazon DocumentDB.

Sie können wählen, ob ein Reader gleichzeitig mit dem zugehörigen Writer oder unabhängig vom Writer skalieren soll. Dazu geben Sie die Hochstufungsstufe für diesen Reader an.

  • Serverlose DocumentDB-Lesegeräte der Promotion-Stufen 0 und 1 skalieren zur gleichen Zeit wie der Writer. Dieses Skalierungsverhalten macht Reader in den Prioritätsstufen 0 und 1 ideal verfügbar. Das liegt daran, dass sie immer auf die richtige Kapazität dimensioniert sind, um die Workload des Writers im Falle eines Failovers zu übernehmen.

  • Reader der Hochstufungsstufen 2 bis 15 skalieren unabhängig vom Writer. Jeder Leser bleibt innerhalb der minimalen und maximalen DCU-Werte, die Sie für Ihren Cluster angegeben haben. Wenn ein Reader unabhängig von der zugehörigen Writer-DB skaliert, kann er inaktiv werden und herunterskalieren, während der Writer weiterhin ein hohes Transaktionsvolumen verarbeitet. Er ist nach wie vor als Failover-Ziel verfügbar, wenn keine anderen Reader in niedrigeren Hochstufungsstufen zur Verfügung stehen. Wenn der Reader jedoch zum Writer hochgestuft wird, muss er möglicherweise hochskalieren, um die volle Workload des Writers zu bewältigen.

Weitere Informationen zum Anzeigen und Ändern von Promotion-Stufen für serverlose Instances finden Sie unter. Die Promotion-Stufe für serverlose Lesegeräte anzeigen und ändern

Die serverlose Skalierung von DocumentDB kann erfolgen, während Datenbankverbindungen geöffnet sind, während Transaktionen ausgeführt werden usw. DocumentDB serverless wartet nicht auf einen ruhigen Punkt, um mit der Skalierung zu beginnen. Die Skalierung unterbricht keine laufenden Datenbankoperationen.

Wenn Ihr Workload mehr Lesekapazität benötigt, als mit einem einzelnen Writer und einem einzelnen Reader verfügbar ist, können Sie dem Cluster mehrere serverlose DocumentDB-Reader hinzufügen. Jeder serverlose DocumentDB-Reader kann innerhalb des Bereichs der Mindest- und Höchstkapazitätswerte skaliert werden, die Sie für Ihren Cluster angegeben haben. Sie können den Reader-Endpunkt des Clusters verwenden, um schreibgeschützte Sitzungen an die Reader zu leiten und die Last des Writers zu reduzieren.

Ob DocumentDB serverless die Skalierung durchführt und wie schnell die Skalierung nach dem Start erfolgt, hängt auch von den minimalen und maximalen DCU-Einstellungen für den Cluster ab. Darüber hinaus hängt es davon ab, ob ein Reader so konfiguriert ist, dass er zusammen mit dem Writer oder unabhängig davon skaliert wird. Einzelheiten zur Skalierungskonfiguration finden Sie unter. Serverlose Skalierungskonfiguration von Amazon DocumentDB

Ruhezustand (0.5 DCUs)

Wenn serverlose Amazon DocumentDB DocumentDB-Writer oder -Lesegeräte inaktiv sind, unterstützen serverlose DocumentDB-Instances das Herunterskalieren auf einen Leerlaufstatus von 0,5, DCUs wenn der Cluster auf 0,5 konfiguriert MinCapacity ist.

Im Ruhezustand verfügen die serverlosen DocumentDB-Instanzen nicht über genügend CPU-Rechenkapazität, um die meisten Produktionsworkloads zu unterstützen, können aber schnell hochskaliert werden, um eine neue Arbeitslast zu unterstützen. In einem Zustand ohne Leerlauf benötigen serverlose DocumentDB-Instanzen in der Regel mindestens 1,0 bis 2,5. DCUs Wenn serverlose DocumentDB-Instanzen von einem Ruhezustand in einen Nicht-Ruhezustand hochskaliert werden, werden sie daher direkt auf 1,0 bis 2,5 DCUs (oder den Wert von, MaxCapacity falls dieser niedriger ist) hochskaliert.

Um das Herunterskalieren auf 0,5 DCUs im Leerlauf zu unterstützen, werden die Instanzlimits begrenzt, wenn der so konfiguriert MinCapacity ist, dass er kleiner oder gleich 1,0 ist. DCUs Weitere Informationen darüber, wie sich die MinCapacity Konfiguration auf die Limits auswirkt, finden Sie unterBeschränkungen für serverlose Amazon DocumentDB DocumentDB-Instances.