DynamoDB
Özet:
AWS’e özgü bir teknolojidir, yönetilen sunucusuz (serverless) NoSQL veritabanıdır ve milisaniye gecikmeli çalışır.
Kapasite Modları:
Provisioned capacity (önceden tanımlı kapasite)
On-demand capacity (isteğe bağlı otomatik ölçekleme)
ElastiCache yerine anahtar-değer deposu (key/value store) olarak da kullanılabilir (örneğin, oturum verisi saklamak için; TTL (Time to Live) desteğiyle)
Varsayılan olarak yüksek erişilebilirliklidir (High Availability)
Çoklu AZ (Availability Zone) desteği
Okuma ve yazmalar birbirinden ayrıdır
İşlem (transaction) desteği mevcuttur
DAX (DynamoDB Accelerator): Mikro-saniye düzeyinde önbellekli okuma performansı sunar
Güvenlik, kimlik doğrulama ve yetkilendirme işlemleri IAM üzerinden yapılır
Olay işleme (event processing): DynamoDB Streams ile AWS Lambda veya Kinesis Data Streams entegrasyonu yapılabilir
Global Tables özelliği ile aktif-aktif küresel dağıtım mümkündür
Yedekleme:
Otomatik yedekleme: 35 güne kadar
İsteğe bağlı yedekleme desteği
PITR (Point-In-Time Recovery): belirli bir ana geri dönebilir
S3 dışa aktarma / içe aktarma:
PITR zaman aralığında RCU (Read Capacity Unit) kullanmadan S3'e aktarım
WCU (Write Capacity Unit) kullanmadan S3’ten tabloya veri içe aktarımı
Şemaları hızlıca evrimleştirmek için idealdir (schema-less yapı sayesinde esneklik sunar)
Kullanım Senaryosu (Use Case):
Sunucusuz uygulama geliştirme (örneğin: küçük belgeler, yüzlerce KB büyüklüğünde)
Dağıtık, sunucusuz önbellekleme sistemleri
Temel Özellikler
< 10 milisaniye gecikme süresi sağlayan, tam yönetimli NoSQL veritabanı hizmetidir.
Veriler, anahtar-değer (key-value) eşlenikleri biçiminde JSON formatında saklanır.
Birden fazla anahtara göre sorgulama yapmayı sağlayan çoklu indeksleme (multi-key indexing) desteği mevcuttur.
SSD tabanlı yapısı ile veriler, 3 farklı AWS veri merkezinde 3 kopya hâlinde saklanarak yüksek erişilebilirlik ve veri tutarlılığı sağlanır.
Otomatik ölçekleme (autoscaling) desteği bulunur.
Okuma (read) ve yazma (write) kapasite birimlerine göre ayrı ayrı dinamik kapasite ayarlaması (scaling) yapılabilir.
DynamoDB – Global Tables Özelliği
Çok bölgeli (multi-region) mimari sayesinde, hem okuma hem yazma işlemleri farklı AWS bölgeleri üzerinden gerçekleştirilebilir.
DynamoDB Streams özelliği kullanılarak Global Tables senkronizasyonu devreye alınır. Streams sayesinde tabloda yapılan her işlem sırasıyla kayıt altına alınır.
Bu stream kayıtları, başka olayların tetiklenmesinde (örneğin Lambda fonksiyonlarının çalıştırılması gibi) kullanılabilir.

Streams DynamoDB için bir log hizmetidir.
DynamoDB Accelerator (DAX)
DynamoDB Accelerator (DAX) sayesinde in-memory (bellek içi) önbellekleme yapılabilir. Bu sayede okuma işlemlerinde mikrosaniye düzeyinde gecikme sağlanır.
35 güne kadar otomatik yedekleme (backup) desteği sunulur. Ayrıca, gerektiğinde manuel yedekleme işlemleri de yapılabilir.
Veritabanındaki öğelere TTL (Time to Live) değerleri atanabilir. Bu sayede belirli bir süre sonra otomatik olarak silinmesi gereken veriler için zaman temelli yaşam süresi tanımlanabilir.
Last updated