So richten Sie die DynamoDB -Autoskalierung ein und verwalten Sie die Durchsatzkapazität automatisch

So richten Sie die DynamoDB -Autoskalierung ein und verwalten Sie die Durchsatzkapazität automatisch
Das Verwalten unvorhersehbarer Datenbanken kann eine bergaufbezogene Aufgabe sein, wenn Sie sich auf manuelle Vorgänge verlassen, um die unerwarteten Datenbankanpassungen zu bearbeiten. Interessanterweise passt die DynamoDB Auto-Skalierungsfunktion die vorgesehene Durchsatzkapazität von Tabellen oder globalen Sekundärindizes ohne Ihre Intervention dynamisch an.

Daher reagieren Datenbanken mit einer aktivierten automatischen Skalierungsfunktion zuverlässig und automatisch auf tatsächliche Verkehrsmuster. Dies ermöglicht es den DynamoDB -Tabellen oder globalen sekundären Indizes.

Diese Beschreibung ist Ihre ultimative Anleitung für alles, was mit dem DynamoDB Auto Scaling-Service zu tun hat. Es wird erläutert, wie die Funktion die Lese- und Schreibkapazität in Ihrer DynamoDB -Tabelle verwaltet. Außerdem lernen Sie, wie Sie die automatische Skalierung in Ihrer Dynamodb -Tabelle aktivieren können.

Wie DynamoDB Auto Skaling funktioniert, um die Durchsatzkapazität dynamisch zu verwalten

Insbesondere ist die DynamoDB Auto Skaling -Funktion auf AWS Application Auto Scaling -Dienst beruht. Es wird durch kontinuierliche Überwachung der tatsächlichen Verkehrsmuster Ihrer Tabelle oder Index und Anpassung der vorgesehenen Durchsatzkapazität nach Bedarf, um die von Ihnen festgelegten Zielnutzungsstufen aufrechtzuerhalten.

Der Funktionsprozess dieser Funktion in DynamoDB beinhaltet Folgendes:

Sie müssen beginnen, indem Sie die automatische Skalierung einrichten und die Zielnutzungsstufen für Ihre Tabelle oder Ihren Index definieren. Die Nutzungsstufe ist der Prozentsatz der Lese- und Schreibkapazitätseinheiten, die Sie für eine bestimmte Tabelle oder einen bestimmten Index verwenden möchten. Abhängig von Ihren Verkehrsmustern und Leistungsanforderungen können Sie die verschiedenen Zielnutzungsstufen für Lese- und Schreibkapazitätseinheiten festlegen.

DynamoDB überwacht kontinuierlich die tatsächlichen Verkehrsmuster Ihrer Tabelle oder Index. Es wird wiederum die Daten zur Anzahl der Lese- und Schreiben von Anforderungen an Ihre Tabelle oder Ihren Index erfasst. Außerdem sammelt es die Daten, die sich auf die Größe dieser Anfragen in Bezug auf Lese- und Schreibkapazitätseinheiten beziehen.

Die automatische Skalierungsfunktion verwendet die gesammelten Daten auf den Verkehrsmustern und die Zielnutzungsstufen, die Sie festgelegt haben, um die erforderliche vorgesehene Durchsatzkapazität für Ihre Tabelle oder Ihr Index zu berechnen.

Wenn der tatsächliche Verkehr das Zielnutzungsniveau überschreitet, erhöht DynamoDB die vorgesehene Durchsatzkapazität, um den erhöhten Verkehr zu bewältigen. Wenn der tatsächliche Verkehr dagegen unter das Zielnutzungsniveau fällt.

DynamoDB passt die vorgesehene Durchsatzkapazität Ihrer Tabelle oder Index zuverlässig mithilfe der Stufenskalierungsrichtlinie an. Die Richtlinie definiert die Regeln für die dynamische Erhöhung oder Verringerung der vorgesehenen Durchsatzkapazität als Reaktion auf Änderungen der Verkehrsmuster.

Sie können die Stufenskalierungsrichtlinie an Ihre tatsächlichen Anforderungen anpassen. Beispiel.

Insbesondere ist DynamoDB Auto Skaling nur für den Kapazitätsmodus „On-Demand“ in DynamoDB verfügbar. In diesem Modus bezahlen Sie für die tatsächlichen Lesevorgänge und schreibt, die Sie in Ihrer Tabelle oder Ihrem Index ausführen, und es gibt keine reservierten Kapazitätseinheiten. Mit der Autoskalierung können Sie Ihre Kosten optimieren, indem Sie nur für die Kapazität zahlen, in der Sie Ihren Datenverkehr bewältigen müssen.

So richten Sie die DynamoDB Auto Skaling ein

Zunächst ist es wichtig zu beachten. Es gibt eine Standardeinstellung, die dies erfordert.

Sie können jedoch weiterhin die AWS -Verwaltungskonsole verwenden, um die DynamoDB -automatische Skalierung für vorhandene Tabellen zu ermöglichen, die automatische Skalierung zu deaktivieren oder Ihre automatischen Skalierungsfunktionen zu ändern. Sie können all dies auch mit AWS CLI oder einem der SDKs von AWS erreichen.

In diesem Artikel wird die AWS -CLI verwendet, um zu veranschaulichen, wie Sie die DynamoDB -Autoskalierung einrichten und aktivieren können, und die Durchsatzkapazität für eine Tabelle oder Index automatisch verwaltet. Diese folgenden Schritte sind unerlässlich:

Schritt 1: Erstellen Sie eine DynamoDB -Tabelle oder eine Index

Erstellen wir eine Tabelle für diese Demonstration mit der AWS DynamoDB erstellen-table Dienstprogramm. Siehe unseren Beispielbefehl:

AWS DynamoDB erstellen-table \
--Tischname mytablename \
--Attributdefinitionsattributename = id, Attributetype = S \
--Schlüsselschema Attributename = ID, Keytype = Hash \
--Vorgesetzte ReadCapacityUnits = 10, WriteCapacityUnits = 10

Überprüfen Sie den Status Ihrer Tabelle mit dem AWS DynamoDB beschreiben Tisch Befehl, wie im Folgenden gezeigt. Dieser Schritt zielt darauf ab zu bestätigen, ob Ihre Tabelle erstellt wird, und listet die verschiedenen Spezifikationen auf. Die Tabelle sollte im aktiven Status sein.

AWS Dynamodb beschreiben-table-table name mytableName

Schritt 2: Erstellen Sie einen Amazon CloudWatch -Alarm

Erstellen Sie einen Amazon CloudWatch -Alarm für eine Kapazitätsmetrik. Sie können den AWS CloudWatch Put-Metric-Alarm-Befehl verwenden. Mit diesem Befehl können Sie die Metrik angeben, den Schwellenwert, an dem der Alarm ausgelöst wird.

Dieser Code hilft:

AWS CloudWatch Put-Metric-Alarm \
--Alarmname Dynamodb-Highrcualarm \
--metrische name ConsumedReadCapacityUnits \
--Namespace AWS/DynamoDB \
--Statistikdurchschnitt \
--Periode 240 \
--Schwelle 80 \
--Vergleichs-Operator GreaterTHanthreshold \
--Evaluierungs-Perioden 2 \ \
--Alarm-Actions ARN: AWS: Automatisieren: US-East-1: EC2: Wiederherstellen

Schritt 3: Erstellen Sie eine AWS -Identitäts- und Zugriffsmanagement -Rolle (IAM)

Erstellen Sie eine AWS -Identitäts- und Access Management -Rolle (IAM), mit der der DynamoDB die PutscalingPolicy- und ExecutePolicy -Aktionen in Ihrem Namen aufrufen kann. Du kannst den ... benutzen AWS IAM CREATE-ROLE Befehl zum Erstellen der Rolle und des AWS IAM Attach-Rollen-Policy-Befehls, um die erforderlichen Berechtigungsrichtlinien anzuhängen.

Sie können den folgenden Befehl verwenden:

AWS IAM Attach-Role-Policy-Rollenname Dynamodbscalingrole-Policy-Arn ARN: AWS: IAM :: AWS: Richtlinie/AmazondynamodbfulAccess

Schritt 4: Registrieren Sie die Durchsatztabellen als skalierbares Ziel

Der nächste Schritt registriert die Schreibkapazität Ihrer Tabelle als skalierbares Ziel mit AWS Application Auto Skaling. Mit dieser Prozedur kann die AWS -Anwendung automatisch Skalierung automatisch die vorgesehene Durchsatzkapazität der Tabelle anpassen. Auch dies kann nur innerhalb von 5-10 Kapazitätseinheiten geschehen.

Der folgende Befehl sollte helfen:

AWS Application-Autoscaling Register-Scalable-Target \
--Service-Namesspace DynamoDB \
--Ressourcen-ID-Tabelle/mytableName \
--Skalierbardimensionsdynamodb: Tabelle: ReadCapacityUnits \
--Minkapazität 5 \
--Max-Kapazität 500

Das vorherige Dienstprogramm gibt sowohl den Ressourcentyp als auch die Kennung der Ressource an, die Sie skalieren möchten. Es gibt auch die minimalen und maximalen Kapazitätsgrenzen der Ressource an, die Sie skalieren möchten.

Der Befehl sieht so aus, wenn Sie einen globalen Sekundärindex und keine Tabelle skalieren möchten:

AWS Application-Autoscaling Register-Scalable-Target \
--Service-Namesspace DynamoDB \
--Ressourcen-ID-Tabelle/MyTableName/Index/MyIndexname \
--Skalierbaresdimensionsdynamodb: Index: ReadCapacityUnits \
--Minkapazität 5 \
--Max-Kapazität 500

Schritt 5: Erstellen Sie einen Skalierungsplan

Um einen Skalierungsplan für eine DynamoDB -Tabelle oder einen Index zu erstellen, können Sie die verwenden AWS Application-Autoscaling Create-Scaling-Plan Befehl. Mit diesem Befehl können Sie die Ressource angeben, die Sie skalieren möchten (z. B. eine Tabelle oder Index), die Skalierungsrichtlinie, mit der Ihr System die Skalierungsaktion ausführt.

Schritt 6: Aktivieren Sie die automatische Skalierung

Um die automatische Skalierung für eine DynamoDB -Tabelle oder einen Index zu aktivieren, können Sie die verwenden AWS Application-Autoscaling Register-Scalable-Target Befehl. Dieser Befehl registriert die Ressource (z. B. eine Tabelle oder einen Index) mit Anwendungsautomatikskalierung, sodass sie basierend auf dem erstellten Skalierungsplan automatisch skaliert werden kann.

Sie können den folgenden Befehl verwenden:

AWS Application-Autoscaling Register-Scalable-Target \
--Service-Namesspace DynamoDB \
--Ressourcen-ID-Tabelle/mytable \
--Skalierbardimensionsdynamodb: Tabelle: ReadCapacityUnits \
--Minkapazität 5 \
--Max-Kapazität 50

Abschluss

Auto Scaling hilft Ihnen, die Leistung und die Kosten Ihrer DynamoDB -Tabelle oder des globalen Sekundärindex zu optimieren, indem Sie die vorgesehene Durchsatzkapazität automatisch als Reaktion auf Änderungen der Verkehrsmuster automatisch einstellen. Sie können die automatische Skalierung für Ihre DynamoDB -Tabelle oder -index mithilfe der AWS -CLI -Prozedur aktivieren. Auch hier kann die AWS -Verwaltungskonsole oder die DynamoDB -API Ihnen helfen, diesen Prozess zu erreichen.