DynamoDB bellek içi mi?
Hayır. DynamoDB bir bellek içi veritabanı değildir — her yazma dayanıklı depolamaya kalıcılaştırılır ve otomatik olarak üç Kullanılabilirlik Alanı genelinde çoğaltılır. Bellek içi hıza ihtiyacınız olduğunda, DynamoDB Accelerator (DAX), nihai tutarlı okumaları tek haneli milisaniyelerden mikrosaniyelere indiren, tamamen yönetilen bir bellek içi önbellek ekler.
Tasarımı gereği dayanıklı
DynamoDB dayanıklı bir operasyonel veritabanıdır: yazmalar dayanıklı ortamda saklanır ve varsayılan olarak üç Kullanılabilirlik Alanı genelinde çoğaltılır; bu da %99,99'luk bir kullanılabilirlik SLA'sını destekler. Bu, verinin RAM'de yaşadığı ve dayanıklılığın isteğe bağlı olduğu saf bir bellek içi depoya göre tam ters bir ödünleşimdir.
Önbelleksiz de hızlıdır
Temel DynamoDB, her ölçekte tutarlı tek haneli milisaniyelik okuma ve yazmalar sunar, çünkü her okuma tarama yapmak yerine doğrudan bir bölüm anahtarını hedefler. Çoğu iş yükünün hiç önbelleğe ihtiyacı olmaz.
Bellek içi olan tek DynamoDB emülatördür
Kafa karışıklığı genellikle bellek içi modu gerçekten bulunan DynamoDB Local ile başlar. Başlatın; başlangıç bloğu bunu söyler:
docker run -p 8000:8000 amazon/dynamodb-local -jar DynamoDBLocal.jar -inMemory -sharedDbInitializing DynamoDB Local with the following configuration:
Port: 8000
InMemory: true
Version: 3.3.0Bir öğe yazın, kapsayıcıyı yeniden başlatın, sonra onu yeniden arayın:
after write: {"total":{"N":"42"},"pk":{"S":"ORDER#1"}}
tables after restart: []
read after restart: ResourceNotFoundException | Cannot do operations on a non-existent tableYalnızca öğe değil, tablo da gitti. O bayrak test emülatörüne aittir. Yönetilen hizmetin eşdeğer bir ayarı yoktur ve onaylanmış bir yazmanın yalnızca RAM'de yaşadığı hiçbir mod yoktur.
DAX: bellek içi katman
Mikrosaniyelerin önemli olduğu yerlerde — gerçek zamanlı teklif verme, oyun lider tabloları, sıcak ürün sayfaları — AWS'nin yanıtı DAX'tir: nihai tutarlı okuma performansını asgari kod değişikliğiyle bir büyüklük mertebesi iyileştiren, DynamoDB uyumlu, write-through, bellek içi bir önbellek. Güçlü tutarlı okumalara ya da yazma yoğun iş yüklerine uygun değildir.
Okumaların parasını ödemek mi, önbellek eklemek mi
DAX sıcak anahtarlarda okuma gecikmesinden tasarruf ettirir; alttaki tabloyu küçültmez ya da yazma dayanıklılığını değiştirmez. Önde DAX olsun olmasın, onaylanan her PutItem yine üç Kullanılabilirlik Bölgesi'nde diske iner. 10 GB'lık bir tabloda, güçlü tutarlı bir Scan us-east-1'de on-demand olarak kabaca 2,5 milyon okuma isteği birimi faturalandırır — bir önbellek kümesini boyutlandırmadan önce kendi deseninizi fiyatlandırma hesaplayıcısıyla ölçün.
DynoTable'da: sorgu önizlemesi Scan ile Query'yi etiketler ve tablo meta verisi izin verdiğinde bir RCU tahmini gösterir; böylece tam bir okumanın maliyetini çalıştırmadan önce görebilirsiniz. Sıradan partition-key Query çağrılarında RCU satırı çıkmaz. Bkz. SQL Workbench — sorgu maliyetini önizleyin.
Daha derine inin
Tutarlılık ödünleşimlerini tutarlılık kılavuzunda anlayın, ters soru için DynamoDB önbellek olarak kullanılabilir mi? sayfasına bakın, okuma maliyetlerini fiyatlandırma hesaplayıcısıyla tahmin edin ve tablolarınızı incelemek için DynoTable'ı indirin.
Kaynaklar
- In-memory acceleration with DynamoDB Accelerator (DAX) — Amazon DynamoDB Developer Guide
- What is Amazon DynamoDB? — Amazon DynamoDB Developer Guide
- DynamoDB read consistency — Amazon DynamoDB Developer Guide
- Setting up DynamoDB local (downloadable version) — Amazon DynamoDB Developer Guide
En son 2026-07-13 tarihinde yukarıda bağlantısı verilen resmi AWS belgelerine karşı doğrulandı.
2026-07-28 tarihinde @aws-sdk/client-dynamodb 3.1095.0 ile Node v24.18.0 üzerinde DynamoDB Local 3.3.0'a karşı yeniden üretildi. Başlangıç bloğu ve üç çıktı satırı birebir alınmıştır.