Kann DynamoDB Bilder speichern?

Ja, aber nur kleine. DynamoDB kann Bilder als base64-kodierte Binary-Attribute (B) speichern, sofern das gesamte Item unter dem 400-KB-Limit bleibt. AWS empfiehlt, größere Bilder in Amazon S3 abzulegen und in DynamoDB nur die Objekt-Metadaten und eine S3-Referenz zu halten, weil 400 KB für die meisten Mediendateien zu klein sind.

Wie das Speichern kleiner Bilder funktioniert

Kodiere das Bild als base64 und lege es in einem Binary-Attribut ab. DynamoDB rechnet die Rohbyte-Länge auf die 400-KB-Item-Grenze an — ein Thumbnail oder Icon passt also, ein vollständiges Foto meistens nicht.

Das empfohlene Muster

Für alles über 400 KB:

  1. Lade das Bild nach Amazon S3 hoch.
  2. Speichere seinen S3-Key, die Größe, den Content-Type und weitere Metadaten in DynamoDB.
  3. Lies die Metadaten aus DynamoDB und hole dann das Objekt aus S3.

Beachte, dass DynamoDB und S3 keine gemeinsamen Transaktionen haben — deine Anwendung muss verwaiste Objekte im Fehlerfall selbst aufräumen.

Was das Inline-Speichern kostet

Nimm einen Upload pro Sekunde und zehn Aufrufe pro Sekunde, On-Demand in us-east-1, und lass beide Varianten durch unseren Preisrechner laufen:

Pro Monat380-KB-Bild inline119-Byte-Pointer
Writes624,15 $1,64 $
Reads (letztendlich konsistent)156,04 $1,64 $
Requests gesamt780,19 $3,29 $

Derselbe Traffic kostet das 238-Fache, und die Kapazitätsrundung macht das komplett allein. Eine Schreibeinheit deckt 1 KB ab, das Bild rechnet also 380 davon ab, wo der Pointer 1 abrechnet. Reads runden auf 4 KB, jeder letztendlich konsistente Read des Bildes kostet also 47,5 Leseeinheiten gegenüber 0,5.

Der Speicher kommt obendrauf. Ein 380-KB-Upload pro Sekunde ergibt 952 GB pro Monat, also 238,09 $ bei DynamoDBs 0,25 $ pro GB-Monat oder 21,90 $ bei S3 Standard mit 0,023 $ — und die Uploads des Folgemonats legen dasselbe noch einmal drauf.

Das Pointer-Item, das diese Zahlen beschreiben, sieht so aus und misst 119 Bytes:

{
  "pk": "IMG#2026-07-28#a1b2c3",
  "s3Key": "uploads/2026/07/28/a1b2c3.jpg",
  "contentType": "image/jpeg",
  "bytes": 389120,
  "width": 1920,
  "height": 1080,
  "uploadedAt": 1785283200
}

Tiefer einsteigen

Siehe maximale Item-Größe und miss Items mit dem Item-Size-Rechner. Lade DynoTable herunter, um Binary-Attribute zu inspizieren.

Preisquellen

  • Amazon DynamoDB pricing — Tarife für Request Units und Speicher, aus der AWS Price List API in den Rechner synchronisiert.
  • Amazon S3 pricing — S3 Standard Storage, 0,023 $ pro GB-Monat für die ersten 50 TB in us-east-1 (am 2026-07-28 aus der Price List API gelesen).

Referenzen

Zuletzt verifiziert am 2026-07-13 gegen die oben verlinkte offizielle AWS-Dokumentation.

Am 2026-07-28 mit unserem eigenen Preisrechner über die us-east-1-Tarife kalkuliert, die er aus der AWS Price List API synchronisiert. Eingaben: On-Demand, 1 Write/Sekunde, 10 letztendlich konsistente Reads/Sekunde, 380 KB gegen das 119-Byte-Item oben, Free Tier aus.

Mit DynamoDB ohne die Console arbeiten

Ein schneller DynamoDB-Desktop-Client, der das echte SQL ausführt, das DynamoDB nicht kann — JOINs, GROUP BY, Aggregationen — mit visueller Bearbeitung und einem KI-Agenten auf deinen eigenen Bedrock-Schlüsseln.

30 Tage kostenlos testen, keine Kreditkarte — danach der Kostenlos-Tarif ohne Zeitlimit.