Schätzen Sie die Kosten einer DynamoDB-Tabelle für On-Demand-Kapazität - AWS Prescriptive Guidance

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.

Schätzen Sie die Kosten einer DynamoDB-Tabelle für On-Demand-Kapazität

Erstellt von Moinul Al-Mamun () AWS

Umwelt: Produktion

Technologien: Datenbanken CloudNative; Serverlos; Kostenmanagement

AWSDienste: Amazon DynamoDB

Übersicht

Amazon DynamoDB ist eine Datenbank ohne SQL Transaktionen, die selbst im Petabyte-Bereich Latenz im einstelligen Millisekundenbereich bietet. Dieses serverlose Angebot von Amazon Web Services (AWS) erfreut sich aufgrund seiner gleichbleibenden Leistung und Skalierbarkeit immer größerer Beliebtheit.  Sie müssen die zugrunde liegende Infrastruktur nicht bereitstellen. Ihre einzelne Tabelle kann bis zu Petabyte groß werden.

Im On-Demand-Kapazitätsmodus zahlen Sie pro Anfrage für die Lese- und Schreibvorgänge, die Ihre Anwendung an den Tabellen durchführt. AWSDie Gebühren basieren auf den kumulierten Leseanforderungseinheiten (RRUs) und Schreibanforderungseinheiten (WRUs) in einem Monat. DynamoDB überwacht den ganzen Monat über kontinuierlich die Größe Ihrer Tabelle, um Ihre Speichergebühren zu ermitteln. Es unterstützt kontinuierliche Backups mit point-in-time -recovery (). PITR DynamoDB überwacht den ganzen Monat über kontinuierlich die Größe Ihrer Tabellen mit PITR aktivierten Funktionen, um Ihre Backup-Gebühren zu ermitteln.

Um die DynamoDB-Kosten für ein Projekt abzuschätzen, ist es wichtig zu berechnen RRUWRU, wie viel und Speicherplatz in den verschiedenen Phasen Ihres Produktlebenszyklus verbraucht werden. Für eine grobe Kostenschätzung können Sie den AWSPreisrechner verwenden. Sie müssen jedoch eine ungefähre Anzahl von RRUsWRUs, und den Speicherbedarf für Ihre Tabelle angeben. Zu Beginn des Projekts kann es schwierig sein, diese abzuschätzen. AWSDer Preisrechner berücksichtigt weder die Datenwachstumsrate noch die Artikelgröße und berücksichtigt auch nicht die Anzahl der Lese- und Schreibvorgänge für die Basistabelle und die globalen Sekundärindizes (GSIs) getrennt. Um den AWS Preisrechner verwenden zu können, müssen Sie all diese Aspekte abschätzen, um ungefähre Zahlen fürWRU, und Speichergröße anzunehmenRRU, um eine Kostenschätzung zu erhalten.

Dieses Muster bietet einen Mechanismus und eine wiederverwendbare Microsoft Excel-Vorlage zur Schätzung grundlegender DynamoDB-Kostenfaktoren wie Schreib-, Lese-, Speicher-, Sicherungs- und Wiederherstellungskosten für den On-Demand-Kapazitätsmodus. Es ist detaillierter als der AWS Pricing Calculator und berücksichtigt die Basistabelle und die Anforderungen unabhängig voneinander. GSIs Es berücksichtigt auch die Wachstumsrate der monatlichen Artikeldaten und prognostiziert die Kosten für drei Jahre.

Voraussetzungen und Einschränkungen

Voraussetzungen

  • Grundkenntnisse in DynamoDB und DynamoDB-Datenmodelldesign

  • Grundkenntnisse zu Preisen WRURRU, Speicher sowie Sicherung und Wiederherstellung von DynamoDB (weitere Informationen finden Sie unter Preise für On-Demand-Kapazität)

  • Kenntnis Ihrer Daten, Ihres Datenmodells und Ihrer Elementgröße in DynamoDB

  • Kenntnisse von DynamoDB GSIs

Einschränkungen

  • Die Vorlage bietet Ihnen eine ungefähre Berechnung, ist jedoch nicht für alle Konfigurationen geeignet. Um eine genauere Schätzung zu erhalten, müssen Sie die individuelle Artikelgröße für jeden Artikel in der Basistabelle und messenGSIs.

  • Für eine genauere Schätzung müssen Sie die erwartete Anzahl von Schreibvorgängen (Einfügen, Aktualisieren und Löschen) und Lesevorgängen für jedes Element in einem durchschnittlichen Monat berücksichtigen.

  • Dieses Muster ermöglicht es, nur die Schreib-, Lese-, Speicher-, Sicherungs- und Wiederherstellungskosten für die nächsten Jahre auf der Grundlage fester Annahmen zum Datenwachstum zu schätzen.

Tools

AWSDienste

  • Amazon DynamoDB ist ein vollständig verwalteter Service ohne SQL Datenbank, der eine schnelle, vorhersehbare und skalierbare Leistung bietet.

Andere Tools

  • AWSPricing Calculator ist ein webbasiertes Planungstool, mit dem Sie Schätzungen für Ihre AWS Anwendungsfälle erstellen können.

Bewährte Methoden

Um die Kosten niedrig zu halten, sollten Sie die folgenden Best Practices für den DynamoDB-Entwurf berücksichtigen.

  • Entwerfen von Partitionsschlüsseln – Verwenden Sie einen Partitionsschlüssel mit hoher Kardinalität, um die Last gleichmäßig zu verteilen.

  • Entwurfsmuster für Adjazenzlisten — Verwenden Sie dieses Entwurfsmuster für Verwaltung one-to-many und Beziehungen. many-to-many

  • Sparse-Index — Verwenden Sie den Sparse-Index für Ihren. GSIs Wenn Sie einen erstellenGSI, geben Sie einen Partitionsschlüssel und optional einen Sortierschlüssel an. Nur Elemente in der Basistabelle, die einen entsprechenden GSI Partitionsschlüssel enthalten, werden im Sparse-Index angezeigt. Das hilft, GSIs kleiner zu bleiben.

  • Überladen von Indizes — Verwenden Sie dasselbe GSI für die Indizierung verschiedener Elementtypen.

  • GSIWrite-Sharding — Shard mit Bedacht, um Daten auf die Partitionen zu verteilen und so effiziente und schnellere Abfragen zu ermöglichen.

  • Große Gegenstände – Speichern Sie nur Metadaten in der Tabelle, speichern Sie den Blob in Amazon S3 und behalten Sie die Referenz in DynamoDB bei. Teilen Sie große Elemente in mehrere Elemente auf und indizieren Sie sie effizient mithilfe von Sortierschlüsseln.

Weitere bewährte Methoden finden Sie im Leitfaden für Entwickler von Amazon DynamoDB.

Epen

AufgabeBeschreibungErforderliche Fähigkeiten

Artikelgröße ermitteln.

  1. Prüfen Sie, wie viele verschiedene Artikeltypen Sie in Ihrer Tabelle speichern werden.

  2. Um die Größe jedes Elements in Kilobyte zu berechnen, fügen Sie die Schlüssel- und Wertgröße jedes Attributs hinzu.

  3. Berechnet die Elementgröße für eine Basistabelle und für jedes Element. GSI

Dateningenieur

Schätzen Sie die Schreibkosten ab.

Um die Schreibkosten im On-Demand-Kapazitätsmodus zu schätzen, müssen Sie zunächst messen, wie viele Kapazitäten in einem Monat verbraucht WRUs werden. Dazu müssen Sie die folgenden Faktoren berücksichtigen:

  • Anzahl der Erstellungs-, Aktualisierungs- und Löschvorgänge für jedes Element in einem Monat.

  • Anzahl der verfügbarenGSIs. Betrachten Sie jeden Index unabhängig voneinander. 

    • Durchschnittliche Größe eines Indexelements

    • Anzahl der Synchronisationszeiten für einen Index

  • Wie viele neue Dinge (z. B. Komponenten oder Produkte) werden der Tabelle jeden Monat hinzugefügt? Die Anzahl der hinzugefügten Dinge kann von Monat zu Monat unterschiedlich sein, aber Sie können auf der Grundlage Ihrer Geschäftsszenarien von einer durchschnittlichen Wachstumsrate ausgehen. 

Weitere Informationen finden Sie im Abschnitt Zusätzliche Informationen.

Dateningenieur

Schätzen Sie die Lesekosten ab.

Um die Lesekosten im On-Demand-Modus zu schätzen, müssen Sie zunächst messen, wie viele Lesekosten in einem Monat verbraucht RRUs werden. Dazu müssen Sie die folgenden Faktoren berücksichtigen: 

  • Anzahl der verfügbarenGSIs. Betrachten Sie jeden Index unabhängig voneinander. 

    • Durchschnittliche Größe eines Indexelements

  • Durchschnittliche Anzahl von Lesevorgängen pro Produkt und Monat.

  • Anzahl der insgesamt verfügbaren Dinge (Komponenten oder Produkte) in der DynamoDB-Tabelle.

Dateningenieur, App-Entwickler

Schätzen Sie die Speichergröße und die Kosten ab.

Schätzen Sie zunächst den durchschnittlichen monatlichen Lagerbedarf auf der Grundlage Ihrer Artikelgröße in der Tabelle. Berechnen Sie dann die Speicherkosten, indem Sie die Speichergröße mit dem Speicherpreis pro GB für Ihre AWS Region multiplizieren. 

Wenn Sie bereits Daten zur Schätzung der Schreibkosten eingegeben haben, müssen Sie diese zur Berechnung der Speichergröße nicht erneut eingeben. Andernfalls müssen Sie bei der Schätzung der Speichergröße die folgenden Faktoren berücksichtigen: 

  • Anzahl der Datenelemente in einem Modul (Produkt), basierend auf Ihrem Tabellenentwurf.

  • Durchschnittliche Elementgröße in Kilobyte.

  • Anzahl der verfügbaren. GSIs Betrachten Sie jeden Index unabhängig voneinander. 

    • Durchschnittliche Größe eines Indexelements

  • Wie viele neue Produkte werden jeden Monat in die Tabelle aufgenommen? Die Anzahl der neuen Produkte kann jeden Monat unterschiedlich sein, aber Sie können auf der Grundlage Ihrer Geschäftsszenarien von einer durchschnittlichen Wachstumsrate ausgehen. In diesem Beispiel werden durchschnittlich 10 Millionen neue Produkte pro Monat verwendet.

Dateningenieur
AufgabeBeschreibungErforderliche Fähigkeiten

Laden Sie die Excel-Vorlage aus dem Bereich Anlagen herunter und passen Sie sie an Ihre Anwendungsfalltabelle an.

  1. Laden Sie die Excel-Vorlage herunter.

  2. Passen Sie das Geschäftsmodul undGSIs, basierend auf Ihrem Tabellendesign, an.

Dateningenieur

Geben Sie Informationen in die Excel-Vorlage ein.

  1. Aktualisieren Sie die Artikelinformationen im Blatt. Daten nur in orangefarbenen Zellen aktualisieren.

  2. Passen Sie die Objektnummern an: Wie viel könnte der Tabelle jeden Monat hinzugefügt werden?

  3. Aktualisieren Sie die RRU Preise WRU und Preise pro Million für Ihre AWS Region.

  4. Aktualisieren Sie die Speicher- und Backup-Preise pro GB-Monat für Ihre AWS Region.

  5. Aktualisieren Sie den Wiederherstellungspreis pro GB für Ihre AWS Region.

In der Vorlage gibt es drei Elemente oder Entitäten: Informationen, Metadaten und Beziehung. Es gibt zweiGSIs. Wenn Sie für Ihren Anwendungsfall mehr Elemente benötigen, erstellen Sie neue Zeilen. Wenn Sie mehr Blöcke benötigenGSIs, kopieren Sie einen vorhandenen GSI Block und fügen Sie ihn ein, um so viele GSI Blöcke zu erstellen, wie Sie benötigen. Passen Sie dann die Berechnungen für die TOTAL Spalten SUM und an.

Dateningenieur

Zugehörige Ressourcen

Referenzen

Anleitungen und Muster

Zusätzliche Informationen

Schreiben Sie ein Beispiel für eine Kostenberechnung

Das DynamoDB-Datenmodelldesign zeigt drei Elemente für ein Produkt und eine durchschnittliche Artikelgröße von 4 KB. Wenn Sie der DynamoDB-Basistabelle ein neues Produkt hinzufügen, verbraucht es die Anzahl der Elemente * (Artikelgröße/1 KB Schreibeinheit) = 3 * (4/1) = 12. WRU In diesem Beispiel verbraucht das Produkt beim Schreiben von 1 KB 1. WRU 

Lesen Sie das Beispiel für die Kostenberechnung

Um diese RRU Schätzung zu erhalten, sollten Sie den Durchschnitt berücksichtigen, wie oft jeder Artikel in einem Monat gelesen wird. Beispielsweise wird das Informationselement im Durchschnitt zehnmal pro Monat gelesen, und das Metadatenelement wird zweimal gelesen und das Beziehungselement wird fünfmal gelesen. In der Beispielvorlage entspricht die Summe RRU aller Komponenten der Anzahl der neuen Komponenten, die jeden Monat neu erstellt werden, * RRU pro Komponente pro Monat = 10 Millionen x 17 RRU = 170 Millionen RRU pro Monat.

Jeden Monat werden neue Dinge (Komponenten oder Produkte) hinzugefügt, und die Gesamtzahl der Produkte wird im Laufe der Zeit zunehmen. Die RRU Anforderungen werden also im Laufe der Zeit ebenfalls steigen.

  • Im ersten Monat RRU wird der Verbrauch 170 Millionen betragen.

  • Für den zweiten Monat wird der RRU Verbrauch 2 * 170 Millionen = 340 Millionen betragen.

  • Für den dritten Monat wird der RRU Verbrauch 3 * 170 Millionen = 510 Millionen betragen.

Die folgende Grafik zeigt monatliche RRU Verbrauchs- und Kostenprognosen.

Der RRU Verbrauch steigt stärker als die Kosten.

Beachten Sie, dass die Preise in der Grafik nur zur Veranschaulichung dienen. Um genaue Prognosen für Ihren Anwendungsfall zu erstellen, schauen Sie auf der AWS Preisseite nach und verwenden Sie diese Preise in der Excel-Tabelle.

Beispiele für die Berechnung der Speicher-, Backup- und Wiederherstellungskosten

DynamoDB-Speicher, Backup und Wiederherstellung sind alle miteinander verbunden. Das Backup ist direkt mit dem Speicher verbunden, und die Wiederherstellung ist direkt mit der Größe des Backups verbunden. Mit zunehmender Tabellengröße steigen die entsprechenden Speicher-, Sicherungs- und Wiederherstellungskosten proportional.

Speichergröße und Kosten

Die Speicherkosten werden im Laufe der Zeit entsprechend Ihrer Datenwachstumsrate steigen. Nehmen wir beispielsweise an, dass die durchschnittliche Größe einer Komponente oder eines Produkts in der Basistabelle 11 KB GSIs beträgt und dass Ihrer Datenbanktabelle jeden Monat 10 Millionen neue Produkte hinzugefügt werden. In diesem Fall wächst die Größe Ihrer DynamoDB-Tabelle (11 KB x 10 Millionen) /1024/1024 = 105 GB pro Monat. Im ersten Monat beträgt Ihre Tabellenspeichergröße 105 GB, im zweiten Monat 105 + 105 = 210 usw. GBs

  • Im ersten Monat belaufen sich die Speicherkosten auf 105 GB* Speicherpreis pro GB für Ihre AWS Region. 

  • Im zweiten Monat belaufen sich die Speicherkosten auf 210 GB* Speicherpreis pro GB für Ihre Region.

  • Für den dritten Monat belaufen sich die Speicherkosten auf 315 GB* Speicherpreis pro GB für Ihre Region.

Informationen zur Speichergröße und zu den Kosten für die nächsten drei Jahre finden Sie im Abschnitt Speichergröße und Prognose.

Backup-Kosten

Die Backup-Kosten werden im Laufe der Zeit entsprechend Ihrer Datenwachstumsrate steigen. Wenn Sie kontinuierliches Backup mit point-in-time -recovery (PITR) aktivieren, basieren die Gebühren für kontinuierliches Backup auf dem durchschnittlichen Speichervolumen pro Monat. In einem Kalendermonat entspricht die durchschnittliche Backup-Größe der Speichergröße Ihrer Tabelle, obwohl die tatsächliche Größe etwas anders sein kann. Da jeden Monat neue Produkte hinzugefügt werden, werden die Gesamtspeichergröße und die Backup-Größe im Laufe der Zeit zunehmen. Beispielsweise könnte die durchschnittliche Backup-Größe von 105 GB für den ersten Monat auf 210 GB im zweiten Monat ansteigen.

  • Im ersten Monat belaufen sich die Backup-Kosten auf 105 GB-Monat* Preis für kontinuierliches Backup pro GB für Ihre AWS Region. 

  • Im zweiten Monat belaufen sich die Backup-Kosten auf 210 GB pro Monat * Preis für kontinuierliches Backup pro GB für Ihre Region.

  • Im dritten Monat belaufen sich die Backup-Kosten auf 315 GB pro Monat * Preis für kontinuierliches Backup pro GB für Ihre Region.

  • und so weiter

Die Backup-Kosten sind in der Grafik im Abschnitt Speichergröße und Kostenprognose enthalten.

Kosten für die Wiederherstellung

Wenn Sie ein kontinuierliches Backup mit PITR aktivierter Option erstellen, richten sich die Gebühren für den Wiederherstellungsvorgang nach dem Umfang der Wiederherstellung. Bei jeder Wiederherstellung zahlen Sie auf der Grundlage von Gigabyte wiederhergestellter Daten. Wenn Ihre Tabelle groß ist und Sie die Wiederherstellung mehrmals im Monat durchführen, ist dies kostspielig.

Um die Wiederherstellungskosten abzuschätzen, wird in diesem Beispiel davon ausgegangen, dass Sie einmal pro Monat am Monatsende eine PITR Wiederherstellung durchführen. In dem Beispiel wird die durchschnittliche monatliche Backup-Größe als Größe der Wiederherstellungsdaten für diesen Monat verwendet. Für den ersten Monat beträgt die durchschnittliche Backup-Größe 105 GB, und für die Wiederherstellung am Monatsende würde die Größe der Wiederherstellungsdaten 105 GB betragen. Für den zweiten Monat wären es 210 GBs und so weiter.

Die Wiederherstellungskosten werden im Laufe der Zeit entsprechend Ihrer Datenwachstumsrate steigen.

  • Im ersten Monat belaufen sich die Wiederherstellungskosten für Ihre AWS Region auf 105 GB * Wiederherstellungspreis pro GB. 

  • Im zweiten Monat belaufen sich die Wiederherstellungskosten auf 210 GB* Wiederherstellungspreis pro GB für Ihre Region.

  • Im dritten Monat belaufen sich die Wiederherstellungskosten auf 315 GB* Wiederherstellungspreis pro GB für Ihre Region.

Weitere Informationen finden Sie auf der Registerkarte Speicher, Sicherung und Wiederherstellung in der Excel-Vorlage und in der Grafik im folgenden Abschnitt.

Prognose der Speichergröße und der Kosten

In der Vorlage wird die tatsächliche fakturierbare Speichergröße berechnet, indem das kostenlose Kontingent 25 GB pro Monat für die Standard-Tabellenklasse subtrahiert wird. In dem Blatt erhalten Sie ein Prognosediagramm, das in monatliche Werte unterteilt ist.

Das folgende Beispieldiagramm prognostiziert die monatliche Speichergröße in GB, die fakturierbaren Speicherkosten, die Kosten für On-Demand-Backups und die Wiederherstellungskosten für die nächsten 36 Kalendermonate. Alle Kosten sind angegeben. USD Aus der Grafik wird deutlich, dass die Speicher-, Backup- und Wiederherstellungskosten proportional zur Speichergröße steigen.

Die Speichergröße steigt auf über dreitausend, während die Kosten unter eintausend liegen.

Beachten Sie, dass die in der Grafik verwendeten Preise nur zur Veranschaulichung dienen. Um genaue Preise für Ihren Anwendungsfall zu erstellen, schauen Sie auf der AWS Preisseite nach und verwenden Sie diese Preise in der Excel-Vorlage.

Anlagen

Um auf zusätzliche Inhalte zuzugreifen, die mit diesem Dokument verknüpft sind, entpacken Sie die folgende Datei: attachment.zip