Amazon SimpleDB ve Amazon DinamoDB


Yanıtlar:


179

Bu ilgili SSS ile ele alınmaktadır. S: Amazon DynamoDB ile Amazon SimpleDB arasındaki fark nedir? Hangisini kullanmalıyım? (hash bağlantısı artık çalışmıyor, ancak sayfadaki soruyu bulmak için sayfa içi Bul özelliğini kullanın), paragrafın sonunda en küçük özetle birlikte bir dereceye kadar:

SimpleDB'nin ölçekleme sınırlamaları olsa da, sorgu esnekliği gerektiren daha küçük iş yükleri için uygun olabilir. Amazon SimpleDB tüm öğe özelliklerini otomatik olarak endeksler ve böylece performans ve ölçek pahasına sorgu esnekliğini destekler.

Bu, performans / ölçeklenebilirlik ve basitlik / esneklik arasında bir değiş tokuş, yani daha basit senaryolar için, DynamoDB için uygulamanızı mimarileştirmenin karmaşıklıklarını önlemek için SimpleDB ile çalışmaya başlamak daha kolay olabilir (farklı bir perspektif için aşağıya bakın).

Bağlantılı SSS girişi, Werner Vogel'in Amazon DynamoDB'sine atıfta bulunuyor - İnternet Ölçeği Uygulamaları için Tasarlanmış Hızlı ve Ölçeklenebilir NoSQL Veritabanı Hizmeti , gerçekten Amazon'daki NoSQL Tarihiyle ve özellikle Dinamo ile ilgili ayrıntılı ve bu nedenle şiddetle tavsiye edilen bir okuma ; sorunuzu ele alan daha birçok bilgi içerir, ör.

Geliştiricilerin [Amazon mühendisleri bile] “ayaklarıyla” oy kullandıkları ve Dynamo yerine Amazon S3 ve Amazon SimpleDB gibi bulut tabanlı AWS çözümlerini benimsedikleri için ince kontrolün basitliğini şiddetle tercih ettikleri ortaya çıktı. [ek benim]

Açıkçası DynamoDB bunu ele almak için tanıtıldı ve bu nedenle mevcut NoSQL tekliflerini değiştirmekten ziyade SimpleDB'nin ardılı olarak nitelendirilebilir:

İdeal bir çözümün, orijinal Dinamo tasarımının en iyi bölümlerini (artımlı ölçeklenebilirlik, öngörülebilir yüksek performans) SimpleDB'nin en iyi bölümleriyle (bir bulut hizmetinin yönetim kolaylığı, tutarlılık ve tablo tabanlı bir veri modeli) birleştireceği sonucuna vardık. bir anahtar / değer çifti deposundan daha zengin).

Werner Özeti , DynamoDB'nin şu anda her boyuttaki uygulama için uygun olduğunu önermektedir:

Amazon DynamoDB, tahminen yüksek performansı korumak ve en küçükten en büyük internet ölçekli uygulamalara kadar her ölçekte iş yükü için yüksek maliyet tasarrufu sağlamak üzere tasarlanmıştır.


27

SimpleDB veya DynamoDB kullanın, kullanım durumunuza bağlıdır, bazı durumlarda DynamoDB yerine SimpleDB kullanma deneyimimi paylaştım . Başka bir üründe, farklı verileri saklamak için hem SimpleDB hem de DynamoDB kullandım.



gönderiyi de beğendim. @Mason, SimpleDCB'nin AWS'nin ürün konsolundan nasıl yavaşça kaybolduğuna dair düşünceleriniz nelerdir? Hala SimpleDB kullanıyor musunuz veya taşındınız mı?
David Robbins

1
@DavidRobbins SimpleDB AWS tarafından kullanımdan kaldırılmış olabilir, ancak yine de orada ve verilerime mükemmel bir şekilde uyuyor. Kodumu henüz taşımadım ve yapmayı planlamıyorum. Ancak yeni ürünler için dinamodb veya mysql gibi diğer veritabanlarını seçiyorum.
Mason Zhang

Bağlantı verilen site Sophos tarafından kötü amaçlı yazılım olarak işaretlendi. Dikkatli olun.
IanGilham

1
@IanGilham hatırlatma için teşekkür ederim. Tarama raporunu ( virustotal.com/en/url/… ) tekrar kontrol ediyorum : 1/68 siteyi kötü amaçlı yazılım olarak işaretledi. Bu Sophos için yanlış bir şey olabilir. BTW: Bu site aslında google blogspot tarafından yönetiliyor.
Mason Zhang

18

SimpleDB, bugünlerde Amazon'dan herhangi bir aşk almıyor gibi görünüyor - AWS Konsolunda nerede tedarik edebileceğinizi bulmak bile zor. SimpleDB artık tekrarlanmıyor gibi görünüyor - AWS'de Belge Veritabanı için ilk tercihiniz olarak DynamoDB'yi kullanın.

SimpleDb artık gerçekten "tekrarlanmıyor". Yani gelecekte simpledb için yeni bir gelişme yok. "Bakımlı ve destekli", ancak daha iyi olmayacak.


2
Mükemmel geliştiremezsiniz!
dividebyzero

11

3 temel fark:

  1. indeksleme

    • SimpleDB bir tabloda "HER" alanı için dizin oluşturur.
    • DynamoDB, veritabanını oluşturmadan önce indeksleme alanlarını ayarlamanız gerekir ve değiştirilemez.
  2. Fiyatlandırma:

    • SimpleDB fiyatlandırması, makine saatlerine ve depolama kapasitesine bağlıdır
    • DynamoDB, saniyede Okuma / Yazma kapasitesine göre para talep eder.
  3. Ölçeklenebilirlik:

    • Veri depolama alanı 10 GB'ı aşarsa, SimpleDB manuel bölümlendirme gerektirir.
    • DynamoDB verileri otomatik olarak kaputun altına dağıtır, böylece çok yüksek ölçeklenebilirlik sağlar.

5

Farklılıklardan biri (yukarıdaki makalede @Manz Zhang'ın belirttiği gibi) indekslemede idi. DynamoDB, tablo oluşturulurken sizi dizin oluşturmakla sınırlamak için kullanılır. Ancak, şimdi (2014 başından beri), Küresel İkincil Endeks (GSI) kavramı var. GSI her zaman masada oluşturulabilir. 5 adede kadar desteklenir. Dolayısıyla, endeksleme artık birçok kullanım durumu için engelleme sorunu değildir.

Ayrıca, SimpleDB'nin boyut ve performans sınırlarına sahip olduğunu da bilmelisiniz. (10 GB ve diyelim, 25 istek / sn.)

Belki de en sonunda, DynamoDB, en basit kullanım durumları dışında SimpleDB'nin yerini alacaktır.


0

Basit bir ifadeyle, her iki veri deposu da NoSql'dir.

Aradaki fark ölçeklenebilirlik (ve diğer bazı yönler) üzerindedir, ancak ölçekleme benim görüşüme göre en büyük değeri taşımaktadır. SimpleDB, MongoDB'ye oldukça benzer, ancak ölçeklendirme söz konusu olduğunda bir dizi sınırlamaya sahiptir .

Ancak DynamoDB, küçük bir miktar sağlamanıza ve ihtiyacınız olan birçok Sağlanan Üretimi artırmanıza olanak tanır. Ve gerekli olmadığında ölçeklendirin. (ör. bir promosyon sırasında, Ünlünün yönlendirme kayıtları vb. senaryolarda donanım gereksinimlerinin zamana dayalı bir artışı olur)


0

Basit DB vs Dinamo DB büyük fark olduğuna inanıyorum

  1. Gecikme açısından öngörülebilir performans ve gecikme ve verimden ödün vermeden yüksek hacimleri işleyebilme. DynamoDB bunu bölüm anahtarını kullanarak başarır
  2. Özelleştirilebilen okuma, yazma optimizasyonları
  3. Daha iyi nihai tutarlılık modeli, çünkü tutarlı karma algoritma kullanımı

0

Bunlar iki büyük farktır, farkında olmalısınız

1: SimpleDB has a strict storage limitation of 10 GB. However, DynamoDB has no storage limitations for the data. It is highly scalable in terms of both storage and computation.

2:SimpleDB can handle max up to 25 Write Operations/Second. No such limit in DynamoDB.

0

Bunlar farkında olmanız gereken iki büyük farktır.

DynamoDB ile Neredeyse sınırsız verim ve depolama alanıyla uygulamalar oluşturabilirsiniz .

  • 1: 10 GB'lık SÜREKLİ SAKLAMA SINIRLAMASI

SimpleDB, 10 GB'lık katı bir depolama sınırlamasına sahiptir. Ancak, DynamoDB'nin veriler için depolama sınırlaması yoktur. Hem depolama hem de hesaplama açısından oldukça ölçeklenebilir.

  • 2: MAKSİMUM 25 YAZI ÇALIŞMASI / İKİNCİ

SimpleDB, maksimum 25 Yazma İşlemi / Saniyeye kadar işleyebilir . DynamoDB'de böyle bir sınır yok.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.