Wählen Sie Ihre Cookie-Einstellungen aus

Wir verwenden essentielle Cookies und ähnliche Tools, die für die Bereitstellung unserer Website und Services erforderlich sind. Wir verwenden Performance-Cookies, um anonyme Statistiken zu sammeln, damit wir verstehen können, wie Kunden unsere Website nutzen, und Verbesserungen vornehmen können. Essentielle Cookies können nicht deaktiviert werden, aber Sie können auf „Anpassen“ oder „Ablehnen“ klicken, um Performance-Cookies abzulehnen.

Wenn Sie damit einverstanden sind, verwenden AWS und zugelassene Drittanbieter auch Cookies, um nützliche Features der Website bereitzustellen, Ihre Präferenzen zu speichern und relevante Inhalte, einschließlich relevanter Werbung, anzuzeigen. Um alle nicht notwendigen Cookies zu akzeptieren oder abzulehnen, klicken Sie auf „Akzeptieren“ oder „Ablehnen“. Um detailliertere Entscheidungen zu treffen, klicken Sie auf „Anpassen“.

Wählen Sie einen Datenbankdienst für Ihre Lambda-basierten Anwendungen

Fokusmodus
Wählen Sie einen Datenbankdienst für Ihre Lambda-basierten Anwendungen - AWS Lambda

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.

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.

Viele serverlose Anwendungen müssen Daten speichern und abrufen. AWS bietet mehrere Datenbankoptionen, die mit Lambda-Funktionen funktionieren. Zwei der beliebtesten Optionen sind Amazon DynamoDB, ein NoSQL-Datenbankservice, und Amazon RDS, eine traditionelle relationale Datenbanklösung. In den folgenden Abschnitten werden die wichtigsten Unterschiede zwischen diesen Diensten bei der Verwendung mit Lambda erläutert und Sie bei der Auswahl des richtigen Datenbankdienstes für Ihre serverlose Anwendung unterstützt.

Weitere Informationen über die anderen von AWS angebotenen Datenbankdienste und ein allgemeines Verständnis ihrer Anwendungsfälle und Kompromisse finden Sie unter Auswahl eines Datenbankdienstes. AWS Alle AWS Datenbankdienste sind mit Lambda kompatibel, aber möglicherweise sind nicht alle für Ihren speziellen Anwendungsfall geeignet.

Welche Optionen haben Sie bei der Auswahl eines Datenbankdienstes mit Lambda?

AWS bietet mehrere Datenbankdienste an. Für serverlose Anwendungen sind DynamoDB und Amazon RDS zwei der beliebtesten Optionen.

  • DynamoDB ist ein vollständig verwalteter NoSQL-Datenbankdienst, der für serverlose Anwendungen optimiert ist. Er bietet eine nahtlose Skalierung und eine konsistente Leistung im einstelligen Millisekundenbereich bei jeder Größenordnung.

  • Amazon RDS ist ein verwalteter relationaler Datenbankservice, der mehrere Datenbank-Engines unterstützt, darunter MySQL und PostgreSQL. Er bietet vertraute SQL-Funktionen mit verwalteter Infrastruktur.

Empfehlungen, falls Sie Ihre Anforderungen bereits kennen

Wenn Sie sich über Ihre Anforderungen bereits im Klaren sind, finden Sie hier unsere grundlegenden Empfehlungen:

Wir empfehlen DynamoDB für serverlose Anwendungen, die eine konsistente Leistung mit niedriger Latenz und automatische Skalierung benötigen und keine komplexen Verknüpfungen oder Transaktionen erfordern. Aufgrund seines serverlosen Charakters eignet es sich besonders gut für Lambda-basierte Anwendungen.

Amazon RDS ist die bessere Wahl, wenn Sie komplexe SQL-Abfragen oder Verknüpfungen benötigen oder bestehende Anwendungen haben, die relationale Datenbanken verwenden. Beachten Sie jedoch, dass die Verbindung von Lambda-Funktionen mit Amazon RDS eine zusätzliche Konfiguration erfordert und sich auf die Kaltstartzeiten auswirken kann.

Was ist bei der Auswahl eines Datenbankdienstes zu beachten

Bei der Auswahl zwischen DynamoDB und Amazon RDS für Ihre Lambda-Anwendungen sollten Sie die folgenden Faktoren berücksichtigen:

  • Verbindungsmanagement und Kaltstarts

  • Muster des Datenzugriffs

  • Komplexität der Abfrage

  • Anforderungen an die Datenkonsistenz

  • Skalierungsmerkmale

  • Kostenmodell

Wenn Sie diese Faktoren verstehen, können Sie die Option auswählen, die den Anforderungen Ihres speziellen Anwendungsfalls am besten entspricht.

  • DynamoDB verwendet eine HTTP-API für alle Operationen. Lambda-Funktionen können sofortige Anfragen stellen, ohne Verbindungen aufrechtzuerhalten, was zu einer besseren Kaltstartleistung führt. Jede Anfrage wird mithilfe von AWS Anmeldeinformationen ohne Verbindungsaufwand authentifiziert.

  • Amazon RDS erfordert die Verwaltung von Verbindungspools, da es herkömmliche Datenbankverbindungen verwendet. Dies kann sich auf Kaltstarts auswirken, da neue Lambda-Instanzen Verbindungen herstellen müssen. Sie müssen Strategien für das Verbindungspooling implementieren und möglicherweise Amazon RDS Proxy verwenden, um Verbindungen effektiv zu verwalten. Beachten Sie, dass für die Verwendung von Amazon RDS Proxy zusätzliche Kosten anfallen.

  • DynamoDB verwendet eine HTTP-API für alle Operationen. Lambda-Funktionen können sofortige Anfragen stellen, ohne Verbindungen aufrechtzuerhalten, was zu einer besseren Kaltstartleistung führt. Jede Anfrage wird mithilfe von AWS Anmeldeinformationen ohne Verbindungsaufwand authentifiziert.

  • Amazon RDS erfordert die Verwaltung von Verbindungspools, da es herkömmliche Datenbankverbindungen verwendet. Dies kann sich auf Kaltstarts auswirken, da neue Lambda-Instanzen Verbindungen herstellen müssen. Sie müssen Strategien für das Verbindungspooling implementieren und möglicherweise Amazon RDS Proxy verwenden, um Verbindungen effektiv zu verwalten. Beachten Sie, dass für die Verwendung von Amazon RDS Proxy zusätzliche Kosten anfallen.

  • DynamoDB funktioniert am besten mit bekannten Zugriffsmustern und Einzeltabellendesigns. Es ist ideal für Lambda-Anwendungen, die einen konsistenten Zugriff auf Daten mit niedriger Latenz benötigen, die auf Primärschlüsseln oder Sekundärindizes basieren.

  • Amazon RDS bietet Flexibilität für komplexe Abfragen und sich ändernde Zugriffsmuster. Es ist besser geeignet, wenn Ihre Lambda-Funktionen einzigartige, maßgeschneiderte Abfragen oder komplexe Verknüpfungen über mehrere Tabellen hinweg ausführen müssen.

  • DynamoDB funktioniert am besten mit bekannten Zugriffsmustern und Einzeltabellendesigns. Es ist ideal für Lambda-Anwendungen, die einen konsistenten Zugriff auf Daten mit niedriger Latenz benötigen, die auf Primärschlüsseln oder Sekundärindizes basieren.

  • Amazon RDS bietet Flexibilität für komplexe Abfragen und sich ändernde Zugriffsmuster. Es ist besser geeignet, wenn Ihre Lambda-Funktionen einzigartige, maßgeschneiderte Abfragen oder komplexe Verknüpfungen über mehrere Tabellen hinweg ausführen müssen.

  • DynamoDB zeichnet sich durch einfache, schlüsselbasierte Operationen und vordefinierte Zugriffsmuster aus. Komplexe Abfragen müssen auf der Grundlage von Indexstrukturen entworfen werden, und Verknüpfungen müssen im Anwendungscode behandelt werden.

  • Amazon RDS unterstützt komplexe SQL-Abfragen mit Joins, Unterabfragen und Aggregationen. Dies kann Ihren Lambda-Funktionscode vereinfachen, wenn komplexe Datenoperationen erforderlich sind.

  • DynamoDB zeichnet sich durch einfache, schlüsselbasierte Operationen und vordefinierte Zugriffsmuster aus. Komplexe Abfragen müssen auf der Grundlage von Indexstrukturen entworfen werden, und Verknüpfungen müssen im Anwendungscode behandelt werden.

  • Amazon RDS unterstützt komplexe SQL-Abfragen mit Joins, Unterabfragen und Aggregationen. Dies kann Ihren Lambda-Funktionscode vereinfachen, wenn komplexe Datenoperationen erforderlich sind.

  • DynamoDB bietet sowohl Optionen für eventuelle als auch starke Konsistenz, wobei starke Konsistenz für Lesevorgänge einzelner Elemente verfügbar ist. Transaktionen werden unterstützt, allerdings mit einigen Einschränkungen.

  • Amazon RDS bietet vollständige ACID-Konformität (Atomicity, Consistency, Isolation, Durability) und unterstützt komplexe Transaktionen. Wenn Ihre Lambda-Funktionen komplexe Transaktionen oder eine hohe Konsistenz über mehrere Datensätze hinweg erfordern, ist Amazon RDS möglicherweise besser geeignet.

  • DynamoDB bietet sowohl Optionen für eventuelle als auch starke Konsistenz, wobei starke Konsistenz für Lesevorgänge einzelner Elemente verfügbar ist. Transaktionen werden unterstützt, allerdings mit einigen Einschränkungen.

  • Amazon RDS bietet vollständige ACID-Konformität (Atomicity, Consistency, Isolation, Durability) und unterstützt komplexe Transaktionen. Wenn Ihre Lambda-Funktionen komplexe Transaktionen oder eine hohe Konsistenz über mehrere Datensätze hinweg erfordern, ist Amazon RDS möglicherweise besser geeignet.

  • DynamoDB skaliert automatisch mit Ihrer Arbeitslast. Es kann plötzliche Verkehrsspitzen von Lambda-Funktionen ohne vorherige Bereitstellung bewältigen. Sie können den On-Demand-Kapazitätsmodus verwenden, um nur für das zu bezahlen, was Sie tatsächlich nutzen. Dies entspricht perfekt dem Skalierungsmodell von Lambda.

  • Amazon RDS verfügt über eine feste Kapazität, die auf der von Ihnen ausgewählten Instance-Größe basiert. Wenn mehrere Lambda-Funktionen versuchen, gleichzeitig eine Verbindung herzustellen, überschreiten Sie möglicherweise Ihr Verbindungskontingent. Sie müssen die Verbindungspools sorgfältig verwalten und möglicherweise eine Wiederholungslogik implementieren.

  • DynamoDB skaliert automatisch mit Ihrer Arbeitslast. Es kann plötzliche Verkehrsspitzen von Lambda-Funktionen ohne vorherige Bereitstellung bewältigen. Sie können den On-Demand-Kapazitätsmodus verwenden, um nur für das zu bezahlen, was Sie tatsächlich nutzen. Dies entspricht perfekt dem Skalierungsmodell von Lambda.

  • Amazon RDS verfügt über eine feste Kapazität, die auf der von Ihnen ausgewählten Instance-Größe basiert. Wenn mehrere Lambda-Funktionen versuchen, gleichzeitig eine Verbindung herzustellen, überschreiten Sie möglicherweise Ihr Verbindungskontingent. Sie müssen die Verbindungspools sorgfältig verwalten und möglicherweise eine Wiederholungslogik implementieren.

  • Die Preisgestaltung von DynamoDB passt gut zu serverlosen Anwendungen. Mit On-Demand-Kapazität zahlen Sie nur für die tatsächlichen Lese- und Schreibvorgänge, die von Ihren Lambda-Funktionen ausgeführt werden. Für Leerlaufzeiten fallen keine Gebühren an.

  • Amazon RDS berechnet für die laufende Instance unabhängig von der Nutzung Gebühren. Dies kann bei sporadischen Workloads, wie sie für serverlose Anwendungen typisch sein können, weniger kosteneffektiv sein. Bei Workloads mit hohem Durchsatz und konsistenter Nutzung kann es jedoch wirtschaftlicher sein.

  • Die Preisgestaltung von DynamoDB passt gut zu serverlosen Anwendungen. Mit On-Demand-Kapazität zahlen Sie nur für die tatsächlichen Lese- und Schreibvorgänge, die von Ihren Lambda-Funktionen ausgeführt werden. Für Leerlaufzeiten fallen keine Gebühren an.

  • Amazon RDS berechnet für die laufende Instance unabhängig von der Nutzung Gebühren. Dies kann bei sporadischen Workloads, wie sie für serverlose Anwendungen typisch sein können, weniger kosteneffektiv sein. Bei Workloads mit hohem Durchsatz und konsistenter Nutzung kann es jedoch wirtschaftlicher sein.

Erste Schritte mit dem von Ihnen ausgewählten Datenbankdienst

Nachdem Sie sich mit den Kriterien für die Auswahl zwischen DynamoDB und Amazon RDS und den wichtigsten Unterschieden zwischen ihnen vertraut gemacht haben, können Sie die Option auswählen, die Ihren Anforderungen am besten entspricht, und die folgenden Ressourcen nutzen, um mit der Verwendung zu beginnen.

DynamoDB
Nutzen Sie die folgenden Ressourcen, um mit DynamoDB zu beginnen
  • Eine Einführung in den DynamoDB-Dienst finden Sie unter Was ist DynamoDB? im Amazon DynamoDB DynamoDB-Entwicklerhandbuch.

  • Folgen Sie dem Tutorial „Lambda mit API Gateway verwenden“, um ein Beispiel für die Verwendung einer Lambda-Funktion zur Ausführung von CRUD-Vorgängen in einer DynamoDB-Tabelle als Antwort auf eine API-Anfrage zu sehen.

  • Lesen Sie Programming with DynamoDB und die AWS SDKs im Amazon DynamoDB Developer Guide, um mehr darüber zu erfahren, wie Sie von Ihrer Lambda-Funktion aus auf DynamoDB zugreifen können, indem Sie eine der AWS SDKs

Amazon RDS
Nutzen Sie die folgenden Ressourcen, um mit Amazon RDS zu beginnen
Nutzen Sie die folgenden Ressourcen, um mit DynamoDB zu beginnen
  • Eine Einführung in den DynamoDB-Dienst finden Sie unter Was ist DynamoDB? im Amazon DynamoDB DynamoDB-Entwicklerhandbuch.

  • Folgen Sie dem Tutorial „Lambda mit API Gateway verwenden“, um ein Beispiel für die Verwendung einer Lambda-Funktion zur Ausführung von CRUD-Vorgängen in einer DynamoDB-Tabelle als Antwort auf eine API-Anfrage zu sehen.

  • Lesen Sie Programming with DynamoDB und die AWS SDKs im Amazon DynamoDB Developer Guide, um mehr darüber zu erfahren, wie Sie von Ihrer Lambda-Funktion aus auf DynamoDB zugreifen können, indem Sie eine der AWS SDKs

Nächstes Thema:

S3

Vorheriges Thema:

RDS
DatenschutzNutzungsbedingungen für die WebsiteCookie-Einstellungen
© 2025, Amazon Web Services, Inc. oder Tochtergesellschaften. Alle Rechte vorbehalten.