Amazon DynamoDB (Beta)

DynamoDB ist ein schneller vollständig verwalteter NoSQL-Datenbankservice, mit dessen Hilfe beliebig große Datenmengen einfach und wirtschaftlich gespeichert und abgerufen sowie sämtliche Datenverkehrsanforderungen erfüllt werden können. Alle Datenelemente werden auf Solid State-Laufwerken (SSD) gespeichert und zwischen drei Availability Zones repliziert, um hohe Verfügbarkeit und Datenbeständigkeit zu gewährleisten.

Mit DynamoDB können Sie den administrativen Aufwand von Betrieb und Skalierung hoch verfügbarer verteilter Datenbank-Cluster auslagern und zahlen nur einen geringen Preis für die tatsächlich in Anspruch genommenen Ressourcen.



Kostenfreie erste Schritte

Führen Sie jeden Monat kostenlos bis zu 40 Mio. Vorgänge durch. Details anzeigen »




Unsere Kunden

Washington Post

Mobil

Bietet über 34 Mio. Lesern auf beliebigen Geräten die neuesten Nachrichten

AdRoll

Ad-Serving

AdRoll ermöglicht weltweit täglich mehr als 7 Mrd. Werbemittelkontakte (Ad Impressions)

HasOffers

Ad-Serving

Verfolgt für das Performance Marketing Milliarden von Interaktionen auf Desktop- und Mobilgeräten nach

Scopely

Gaming

Bietet mit nur einigen Entwicklern im Back-End Services für Millionen von Benutzern

WeatherBug

Mobil

Earth Networks hat seinen anspruchsvollen WeatherBug-Service in nur wenigen Wochen auf den Markt gebracht


Diese Seite enthält folgende Informationskategorien. Klicken Sie auf den Link, um zu dem Thema zu gelangen:

Amazon DynamoDB – Funktionalität

So können Sie Amazon DynamoDB nutzen:

  • Verwenden Sie die AWS Management Console oder die Amazon DynamoDB-APIs, um eine Tabelle zu erstellen und Ihre benötigte Anforderungskapazität festzulegen.
  • Verwenden Sie die Amazon DynamoDB-APIs, um Daten zu schreiben und abzurufen.
  • Überwachen Sie den Status und die Leistung Ihrer Amazon DynamoDB-Tabellen mithilfe von Amazon CloudWatch in der AWS Management Console.
  • Sie zahlen für das, was Sie nutzen. Ihre monatliche Rechnung basiert auf der bereitgestellten Anforderungskapazität Ihrer Tabelle und der Menge der gespeicherten Daten.

Servicemerkmale

Skalierbar – Amazon DynamoDB wurde für nahtlose Skalierung von Durchsatz und Speicher entwickelt.

  • Bereitgestellter Durchsatz – Geben Sie beim Erstellen einer Tabelle einfach an, wie viel Anforderungskapazität Sie benötigen. DynamoDB weist Ihrer Tabelle dedizierte Ressourcen zu, um Ihre Leistungserfordernisse zu erfüllen, und partitioniert die Daten automatisch über eine ausreichende Anzahl von Servern, um die gewünschte Anforderungskapazität zu erreichen. Wenn Ihre Durchsatzerfordernisse sich ändern, brauchen Sie nur die Anforderungskapazität Ihrer Tabelle mit der AWS Management Console oder den Amazon DynamoDB-APIs zu aktualisieren. Während der Skalierung erreichen Sie weiterhin die vorherigen Durchsatzraten.
  • Automatische Speicherskalierung – Die Menge der Daten, die Sie in einer DynamoDB-Tabelle speichern können, ist nicht beschränkt, und wenn Sie mit den DynamoDB-APIs für Schreibvorgänge mehr Daten speichern, wird vom Service automatisch mehr Speicher zugewiesen.
  • Vollständig verteilte Shared-Nothing-Architektur – In Amazon DynamoDB erfolgt die Skalierung horizontal. Eine einzelne Tabelle kann nahtlos über Hunderte von Servern skaliert werden.

Schnelle, planbare Leistung – Die durchschnittlichen Service-seitigen Latenzen für Amazon DynamoDB liegen normalerweise im einstelligen Millisekundenbereich. Der Service wird auf Solid State-Laufwerken (SSDs) ausgeführt und ist so konzipiert, dass er für jede Größenordnung konsistente, geringe Latenzen aufweist.

Einfache Verwaltung – Amazon DynamoDB ist ein vollständig verwalteter Service – Sie brauchen lediglich eine Datenbanktabelle zu erstellen und überlassen dem Service den Rest. Sie brauchen sich nicht um Bereitstellung, Setup und Konfiguration von Hardware oder Software, um Software-Patching, um den Betrieb eines zuverlässigen, verteilten Datenbank-Clusters oder um die Partitionierung der Daten über mehrere Instanzen während der Skalierung zu kümmern.

Integrierte Fehlertoleranz – Amazon DynamoDB verfügt über eine integrierte Fehlertoleranz. Durch automatische und synchrone Replikation Ihrer Daten über mehrere Availability Zones in einer Region wird hohe Verfügbarkeit und der Schutz Ihrer Daten vor Ausfällen einzelner Computer oder ganzer Standorte gewährleistet.

Flexibilität – Amazon DynamoDB verfügt über kein festes Schema. Jedes Datenelement kann über eine unterschiedliche Anzahl von Attributen verfügen. Unterschiedliche Datentypen (Zeichenfolgen, Zahlen, Binärdaten sowie Sätze) erweitern die Möglichkeiten des Datenmodells.

Starke Konsistenz, atomare Zähler – Im Gegensatz zu vielen nicht relationalen Datenbanken erleichtert Amazon DynamoDB die Entwicklung durch Verwendung von "Strongly Consistent"-Lesevorgängen, um sicherzustellen, dass immer die neuesten Werte gelesen werden. Amazon DynamoDB unterstützt zahlreiche systemeigene Datentypen (Zahlen, Zeichenfolgen, Binärdaten und mehrwertige Attribute). Der Service bietet auch systemeigene Unterstützung atomarer Zähler, wodurch es möglich ist, numerische Attribute mit einem einzigen API-Aufruf zu inkrementieren oder zu dekrementieren.

Kosteneffizienz – Amazon DynamoDB ist auf äußerste Kosteneffizienz für Datenaufkommen jeglicher Größenordnung ausgerichtet. Sie können mit einem kostenlosen Nutzungskontingent beginnen, das über 40 Millionen Datenbankoperationen pro Monat umfasst. Darüber hinaus verbrauchte Ressourcen werden zu niedrigen Stundensätze abgerechnet. Durch die einfache Verwaltung und die günstigen Anforderungspreise bietet DynamoDB, verglichen mit dem Betrieb einer relationalen oder nicht relationalen Datenbank im eigenen Unternehmen, wesentlich niedrigere Gesamtbetriebskosten (TCO) für Ihr Datenaufkommen.

Sicherheit – Amazon DynamoDB setzt bewährte Kryptografiemethoden für die Authentifizierung der Benutzer ein, um den unberechtigten Zugriff auf Daten zu verhindern. Amazon DynamoDB erlaubt zudem die Integration mit AWS Identity and Access Management (IAM), um eine fein abgestimmte Zugriffskontrolle für die Benutzer innerhalb Ihres Unternehmens zu definieren.

Integrierte Überwachung – Amazon DynamoDB zeigt wichtige Betriebskennzahlen für Ihre Tabelle in der AWS Management Console an. Der Service ermöglicht außerdem die Integration mit Amazon CloudWatch, sodass Sie Anforderungsdurchsatz und Latenz für jede Amazon DynamoDB-Tabelle anzeigen und Ihren Ressourcenverbrauch einfach überwachen können.

Elastic MapReduce-Integration – Amazon DynamoDB ermöglicht die Integration mit Amazon Elastic MapReduce (Amazon EMR). Amazon EMR ermöglicht Unternehmen die Durchführung komplexer Analysen großer Datasets unter Verwendung eines gehosteten leistungsbasierten Hadoop-Frameworks in AWS. Mit der Markteinführung von Amazon DynamoDB können Kunden in DynamoDB gespeicherte Datasets mühelos mit Amazon EMR analysieren und die Ergebnisse in Amazon Simple Storage Service (Amazon S3) archivieren. Die ursprünglichen Datasets in DynamoDB bleiben dabei unverändert erhalten. Mit Amazon EMR können Unternehmen auch auf Daten in mehreren Speichern zugreifen (d. h. Amazon DynamoDB, Amazon RDS und Amazon S3), komplexe Analysen über dieses kombinierte Dataset ausführen und die Ergebnisse dieser Arbeit in Amazon S3 speichern.


Funktionen

DynamoDB bietet eine reibungslose Skalierung von Durchsatz und Speicherung über die API und eine benutzerfreundliche Verwaltungskonsole, damit Sie Ihre Umgebung an Ihre Anforderungen anpassen können. Viele unserer Kunden haben per Mausklick DynamoDB-Bereitstellungen binnen Minuten erstellt, mit denen jährlich drei Billionen Datenbankanforderungen erfüllt werden können.

DynamoDB-Tabellen haben keine festen Schemas und jedes Element kann unterschiedlich viele Attribute aufweisen. Das Datenmodell unterstützt mehrere Datentypen. Durch lokale sekundäre Indizes können Sie Abfragen flexibler ausführen, ohne dass die Leistung beeinträchtigt wird.

Aufgrund der SSD-Speicherung und automatischen 3-Wege-Replikation sind Leistung, Zuverlässigkeit und Sicherheit vorprogrammiert. Amazon DynamoDB setzt bewährte Kryptografiemethoden für die Authentifizierung der Benutzer ein, um den unberechtigten Zugriff auf Daten zu verhindern.

Weitere Informationen zu den Funktionen und Vorteilen von DynamoDB »


Preise

Für DynamoDB fallen keine Vorauszahlungen an und Sie zahlen nur das, was Sie nutzen. Die Preisgestaltung ist einfach, denn Sie zahlen eine Stundenpauschale basierend auf der reservierten Kapazität. Beim Erstellen oder Aktualisieren Ihrer Amazon DynamoDB-Tabelle geben Sie an, wie viel Kapazität Sie für Lese- und Schreibvorgänge reservieren möchten. DynamoDB verteilt die Daten und den Datenverkehr für die Tabelle automatisch auf eine ausreichende Anzahl von Servern, um Ihre Anforderungen an den Durchsatz zu erfüllen, und sorgt zugleich für eine einheitliche, schnelle Leistung.

Mit unserem monatlichen kostenlosen Kontingent können Sie in DynamoDB einsteigen. DynamoDB-Kunden erhalten 100 MB kostenlosen Speicher, sowie bis zu 5 Schreibvorgänge pro Sekunde und 10 Lesevorgänge pro Sekunde laufende Durchsatzkapazität. Sie können diesen kostenlosen Speicher und Durchsatz für monatlich bis zu 40 Mio. kostenlose "Eventually Consistent"-Lesevorgänge bzw. 25 Mio. "Strictly Consistent"-Lesevorgänge nutzen.

Preisdetails zu Amazon DynamoDB anzeigen »


Erste Schritte mit Amazon DynamoDB

Bei Amazon ist DynamoDB mittlerweile erste Wahl bei allen Verarbeitungslasten, die nicht die Flexibilität einer relationalen Datenbank wie Oracle oder MySQL erfordern. Kunden berichten uns, dass Sie diese Vorgehensweise übernehmen, insbesondere in den Bereichen digitale Werbung, Gaming in sozialen Netzwerken und vernetzte Geräteanwendungen, in denen eine hohe Verfügbarkeit, nahtlose Skalierbarkeit, zuverlässige Leistung und kurze Latenz entscheidend sind.

Wenn Sie Ihre Anwendungen für Amazon DynamoDB entwickeln, können Sie klein anfangen und Ihre Anforderungskapazität für eine Tabelle erweitern, sobald Ihr Bedarf steigt, und zwar, ohne dass es dabei zu Ausfallzeiten kommt und ohne dass Sie eine einzige Codezeile schreiben oder ändern müssen. Amazon DynamoDB bietet für jede Größenordnung eine vollständig verwaltete Umgebung.

Nach Durcharbeiten unseres Handbuchs "Erste Schritte können Sie den Betrieb mit DynamoDB binnen Minuten aufnehmen. DynamoDB ist direkt mit Amazon S3 und Amazon Redshift integriert. Mithilfe von AWS Data Pipeline können Sie Daten aus Amazon Elastic MapReduce, Amazon RDS und Ihren Amazon EC2-Datenbanken abrufen, sodass Sie über einige wenige einfache Schritte Daten aus mehreren Quellen kombinieren und analysieren können.


Wann sollte ich DynamoDB verwenden?

Wann würde ich Amazon DynamoDB gegenüber einer relationalen Datenbank-Engine vorziehen?

Die webbasierten Anwendungen von heute erstellen und verbrauchen große Datenmengen. Beispielsweise beginnt ein Online-Spiel nur mit wenigen tausend Benutzern und mit einer geringen Datenbankarbeitslast von nur 10 Schreib- und 50 Lesevorgängen pro Sekunde. Wenn das Spiel jedoch erfolgreicher wird, wächst seine Benutzeranzahl möglicherweise schnell auf mehrere Millionen an und erzeugt zehntausende (oder sogar hunderttausende) von Schreib- und Lesevorgängen pro Sekunde. Auch können pro Tag mehrere Terabyte an Daten erzeugt werden. Wenn Sie Ihre Anwendungen für Amazon DynamoDB entwickeln, können Sie klein anfangen und Ihre Anforderungskapazität für eine Tabelle erweitern, sobald Ihr Bedarf steigt, und zwar, ohne dass es dabei zu Ausfallzeiten kommt und ohne dass Sie eine einzige Codezeile schreiben oder ändern müssen. Amazon DynamoDB bietet für jede Größenordnung eine vollständig verwaltete Umgebung.

Amazon DynamoDB befasst sich mit den Kernproblemen von Datenbankskalierbarkeit, -verwaltung, -leistung und -zuverlässigkeit, ist aber keine relationale Datenbank und unterstützt keine komplexen relationalen Abfragen (z. B. "Joins") oder komplexe Transaktionen. Wenn Sie für Ihre Anwendung diese Funktionalität benötigen oder wenn Kompatibilität mit einer vorhandenen relationalen Engine erforderlich ist, wählen Sie Amazon Relational Database Service (RDS). Sie können auch Ihre eigene relationale Datenbank unter Amazon EC2 betreiben. Relationale Datenbank-Engines stellen zwar umfangreiche Features und Funktionen bereit, bei Datenaufkommen mit Skalierungsbedarf wird aber möglicherweise das Verwalten von Partitionierung und Neupartitionierungen Ihrer Daten über mehrere Instanzen hinweg erforderlich. Dies kann eine äußerst komplexe Aufgabe sein. Wenn Sie also für Ihre neue Anwendung mit größerem Skalierungsbedarf rechnen und keine relationalen Funktionen benötigen, ist Amazon DynamoDB wahrscheinlich besser für Sie geeignet.

Auf der Seite Betreiben von Datenbanken mit AWS finden Sie ausführlichere Informationen zu den verschiedenen Datenbankalternativen für Ihre Anwendungen.


Detaillierte Beschreibung

Datenmodell – Attribute, Elemente und Tabellen

In Amazon DynamoDB werden Daten in Tabellen mit Elementen organisiert und jedes Element verfügt über ein oder mehrere Attribute.

Attribute

Ein Attribut ist ein Name/Wert-Paar. Der Name muss eine Zeichenfolge sein, aber der Wert kann eine Zeichenfolge, eine Zahl, eine Binärzahl, ein Zeichenfolgensatz, ein Zahlensatz oder ein Binärzahlensatz sein. Nachfolgend einige Beispiele für Attribute:

        "ImageID" = 1
        "Title" = "flower"
        "Tags" = "flower", "jasmine", "white"
        "Ratings" = 3, 4, 2
    

Element

Eine Sammlung von Attributen bildet ein Element und das Element wird durch seinen Primärschlüssel identifiziert. Die Attribute eines Elements sind eine Sammlung von Name/Wert-Paaren, in beliebiger Reihenfolge. Ein Element kann über einzelne, mit den Attributen anderer Elemente in der Tabelle nicht in Beziehung stehende Attribute verfügen und die Attribute sind optional (mit Ausnahme des Primärschlüsselattributs). Im Gegensatz zu traditionellen Datenbanken verfügt die Tabelle über kein Schema außer ihrer Abhängigkeit von den Primärschlüsseln. Elemente werden in einer Tabelle gespeichert. Um Elemente in eine Tabelle zu übernehmen, müssen Sie mindestens eines der Attribute als Primärschlüssel festlegen. Jedes Element in einer DynamoDB-Tabelle wird durch den Primärschlüssel eindeutig identifiziert. Im folgenden Diagramm ist "ImageID" das als Primärschlüssel definierte Attribut:

Beachten Sie, dass die Tabelle über einen Namen ("myTable") verfügt, das Element jedoch nicht. Der Primärschlüssel definiert das Element; das Element mit dem Primärschlüssel "ImageID"=1.

Tabellen

Tabellen enthalten Elemente und organisieren Informationen in verschiedene Bereiche. Alle Elemente in der Tabelle verfügen über dasselbe Primärschlüsselschema. Beim Erstellen einer Tabelle weisen Sie den oder die für den Primärschlüssel zu verwendenden Attributnamen zu und jedes Element in der Tabelle muss über einen eindeutigen Primärschlüsselwert verfügen. Um Daten in DynamoDB zu schreiben, erstellen Sie zuerst eine Tabelle und weisen dieser einen Tabellennamen und einen Primärschlüssel zu. In der folgenden größeren Tabelle wird ebenfalls "ImageID" als Primärschlüssel zum Identifizieren von Elementen verwendet.

Tabelle: Meine Bilder
Primärschlüssel Weitere Attribute
ImageID = 1 ImageLocation = https://s3.amazonaws.com/bucket/img_1.jpg Date = 1260653179 Title = flower Tags = Flower, Jasmine Width = 1024 Depth = 768
ImageID = 2 ImageLocation = https://s3.amazonaws.com/bucket/img_2.jpg Date = 1252617979 Rated = 3, 4, 2 Tags = Work, Seattle, Office Width = 1024 Depth = 768
ImageID = 3 ImageLocation = https://s3.amazonaws.com/bucket/img_3.jpg Date = 1285277179 Price = 10.25 Tags = Seattle, Grocery, Store Author = you Camera = phone
ImageID = 4 ImageLocation = https://s3.amazonaws.com/bucket/img_4.jpg Date = 1282598779 Title = Hawaii Author = Joe Colors = orange, blue, yellow Tags = beach, blanket, ball

Zugriffsmodell und API-Übersicht

Primärschlüssel

In DynamoDB muss jede Tabelle über einen definierten Primärschlüssel verfügen, der für den Zugriff auf Daten verwendet wird. Der Primärschlüssel identifiziert jedes Element eindeutig (z. B. ID =1, ID = 2, ID = 3, etc.). Der Primärschlüssel ist der einzige indizierte Teil einer Tabelle und wird auch für die Hash-Partitionierung Ihrer Daten über mehrere Server hinweg verwendet. Sie legen den Primärschlüssel beim Erstellen einer Tabelle fest.

Mit anderen Worten, jedes Element ist eine Sammlung von Name/Wert-Paaren. Wenn Sie eine Tabelle mit Elementen erstellen, legen Sie ein Name/Wert-Paar als Primärschlüssel fest. Alle Elemente in der Tabelle verfügen über einen Wert für das Primärschlüsselattribut und Amazon DynamoDB stellt sicher, dass der Wert für jedes Element eindeutig ist. Basierend auf dem Primärschlüssel wird ein Index erstellt.

Zusammengesetzter Primärschlüssel für Bereichsabfragen

Mit einem zusammengesetzten Primärschlüssel können Sie zwei Attribute in einer Tabelle festlegen, die zusammen einen eindeutigen Primärindex bilden. Alle Elemente in der Tabelle müssen über beide Attribute verfügen. Ein Attribut dient als "Hash-Partitionsattribut", das andere als "Bereichsattribut". Angenommen, Sie verfügen über eine Tabelle "Status-Updates" mit einem zusammengesetzten Primärschlüssel aus den Attributen "UserID" (Hash-Attribut, verwendet zur Partitionierung der Arbeitslast über mehrere Server) und "Time" (Bereichsattribut). Sie können nun eine Abfrage ausführen, um Folgendes abzurufen: 1) ein bestimmtes Element, das durch die Kombination der "UserID"- und "Time"-Werte eindeutig identifiziert wird; 2) alle Elemente für einen bestimmten Hash-Bucket – in diesem Fall "UserID"; oder 3) alle Elemente für eine bestimmte UserID innerhalb einer bestimmten Zeitspanne. Bereichsabfragen für "Time" werden nur unterstützt, wenn der Hash-Bucket "UserID" angegeben wird.

DynamoDB-APIs

  • CreateTable – Erstellt eine Tabelle und legt den für den Datenzugriff verwendeten Primärindex fest.
  • UpdateTable – Aktualisiert die Werte des bereitgestellten Durchsatzes für eine bestimmte Tabelle.
  • DeleteTable – Löscht eine Tabelle.
  • DescribeTables – Gibt die Tabellengröße, den Status und Indexinformationen zurück.
  • PutItem – Erstellt ein neues Element oder ersetzt ein altes durch ein neues Element (einschließlich aller Attribute). Wenn in der angegebenen Tabelle bereits ein Element mit demselben Primärschlüssel vorhanden ist, ersetzt das neue Element das vorhandene Element vollständig. Sie können auch Bedingungsoperatoren verwenden, um ein Element nur dann zu ersetzen, wenn dessen Attributwerte bestimmte Bedingungen erfüllen, oder um ein neues Element nur dann einzufügen, wenn es noch nicht vorhanden ist.
  • BatchWriteItem – Dient zum Einfügen, Ersetzen und Löschen mehrerer Elemente aus mehreren Tabellen in einer einzigen Anforderung, aber nicht in einer einzigen Transaktion. Unterstützt Put- oder Delete-Operationen für Stapel von bis zu 25 Elementen, bei einer maximalen Gesamtgröße der Anforderung von 1 MB.
  • UpdateItem – Bearbeitet die Attribute eines vorhandenen Elements. Sie können auch Bedingungsoperatoren verwenden, um eine Aktualisierung nur dann durchzuführen, wenn die Attributwerte eines Elements bestimmte Bedingungen erfüllen.
  • DeleteItem – Löscht ein einzelnes Element in einer Tabelle nach Primärschlüssel. Sie können auch Bedingungsoperatoren verwenden, um ein Element nur dann zu löschen, wenn die Attributwerte eines Elements bestimmte Bedingungen erfüllen.
  • GetItem – Die GetItem-API gibt einen Satz von Attributen für ein Element mit dem angegebenen Primärschlüssel zurück. Die GetItem-API führt standardmäßig einen "Eventually Consistent"-Lesevorgang durch. Wenn die Option "Eventually Consistent Read" für Ihre Anwendung nicht geeignet ist, verwenden Sie "ConsistentRead".
  • BatchGetItem – Die BatchGetItem-API gibt die Attribute für mehrere Elemente aus mehreren Tabellen anhand ihrer Primärschlüssel zurück. Die Größe einer einzelnen Antwort ist auf 1 MB begrenzt, und es werden maximal 100 Elemente zurückgegeben. Unterstützt die strenge und letztendliche Datenkonsistenz.
  • Query – Dient zum Abrufen eines oder mehrerer Elemente basierend auf ihrem Primärschlüssel. Unterstützt die strenge und letztendliche Datenkonsistenz. Diese API wird in Tabellen verwendet, die über einen zusammengesetzten Hash-/Bereichsschlüssel verfügen.
  • Scan – Durchsucht die vollständige Tabelle und ruft ein oder mehrere Elemente und Attribute ab. Sie können Filter für ein oder mehrere Attribute festlegen und so die zurückgegebenen Elemente einschränken. Mit dieser API können Sie somit in einer Tabelle Ad-hoc-Abfragen nach Attributen durchführen, die sich nicht im Primärschlüssel der Tabelle befinden. Da allerdings die gesamte Tabelle ohne Index durchsucht wird, sollten Sie die Scan-API nicht für Anwendungsabfragen verwenden, bei denen eine planbare Leistung erforderlich ist. Der Ergebnissatz einer Scan-API-Anforderung ist "Eventually Consistent". Stellen Sie sich die Scan-API als Iterator vor. Sobald die Gesamtgröße der für eine bestimmte Scan-API-Anforderung durchsuchten Elemente einen Grenzwert von 1 MB überschreitet, wird die Anforderung beendet und die gefundenen Ergebnisse werden zusammen mit "LastEvaluatedKey" (um die Suche in einem folgenden Vorgang fortzusetzen) zurückgegeben.

Amazon Elastic MapReduce-Integration

Amazon DynamoDB ermöglicht die Integration mit Amazon Elastic MapReduce (Amazon EMR). Amazon EMR ermöglicht Unternehmen die Durchführung komplexer Analysen großer Datasets unter Verwendung eines gehosteten leistungsbasierten Hadoop-Frameworks in AWS. Nachfolgend finden Sie einige Beispiele, wie EMR mit DynamoDB verwendet werden kann:

  1. Kunden können die in DynamoDB gespeicherten Daten mit EMR analysieren und die Ergebnisse der Analyse in S3 speichern, während die Originaldaten in DynamoDB erhalten bleiben.

    Angenommen, Sie verwenden Amazon DynamoDB zum Speichern von Kundenbestellungen. Jetzt können Sie jeden Monat eine neue Tabelle "Bestellungen" anlegen und dann unter Verwendung der EMR-Funktion zur Abfrage mehrerer Tabellen verschiedene Tabellen in DynamoDB verknüpfen, um z. B. die Frage "Welche Bestellungen wurden von einem bestimmten Kunden in den letzten 3 Monaten aufgegeben?" zu beantworten. Anschließend können Sie mit EMR die Ergebnisse dieser Fragen in S3 speichern und später wieder abrufen, ohne die Daten in den Tabellen der monatlichen Kundenbestellungen in DynamoDB anzutasten.

  2. Kunden können die Daten aus DynamoDB mit EMR nach S3 sichern.

    Betrachten wir noch einmal das oben stehende Beispiel mit den Kundenbestellungen. Sobald nicht mehr aktiv in eine Tabelle mit monatlichen Bestellungen geschrieben wird, können Sie diese Tabelle nach S3 sichern und sie dann aus DynamoDB löschen, um von den niedrigeren Speicherkosten von S3 zu profitieren. Die in S3 gespeicherten Daten sind, wie unten beschrieben, weiterhin schnell für Analysen verfügbar.

  3. Mit Amazon EMR können Kunden auch auf Daten in mehreren Speichern zugreifen (d. h. Amazon DynamoDB, Amazon RDS und Amazon S3), komplexe Analysen über dieses kombinierte Dataset ausführen und die Ergebnisse dieser Arbeit in Amazon S3 speichern.

    Wenn Sie Amazon DynamoDB beispielsweise verwenden, um Kundenbestellungen zu speichern, können Sie jeden Monat eine neue Tabelle "Bestellungen" erstellen und jeweils am Ende des Monats die Bestellungen, die über 6 Monate alt sind, mit Amazon EMR in Amazon S3 archivieren. So können Sie Bestellungen, auf die selten zugegriffen wird, in Amazon S3 archivieren, um Kosten zu sparen, und nur die Bestellungen, auf die häufig zugegriffen wird, in DynamoDB verwalten. Sie können mit EMR für Ihre in DynamoDB gespeicherten aktuellen Bestellungen und Ihre in Amazon S3 archivierten Tabellen mit Bestellungen Analysen durchführen, um Abfragen zu beantworten, wie z. B. "Wie viele Bestellungen für Widget X hat Kunde Y in den letzten 48 Monaten aufgegeben?”

Erste Schritte

Zum Einstieg in Amazon DynamoDB können Sie das Handbuch "Erste Schritte" durcharbeiten.


Vorgesehene Verwendung und Einschränkungen

Die Nutzung dieses Service unterliegt der Kundenvereinbarung von Amazon Web Services.

"
©2013, Amazon Web Services, Inc. oder Tochtergesellschaften. Alle Rechte vorbehalten.