SORU
2 AĞUSTOS 2010, PAZARTESİ


EC2 sunucu veya BÖLÜM SimpleDB üzerinde MongoDB?

Senaryo daha mantıklı - MongoDB yüklü birkaç EC2 örneklerini ev sahibi, ya da daha ziyade Amazon SimpleDB bu Java eklentisi kullanın ne yapar?

MongoDB ile birkaç EC2 örneği olan örneği kendim ayarlama sorunu var.

SimpleDB kullanırken Amazonlar veri yapısı içine beni kilitlemek gibi bir sorun var?

Farklılıkları geliştirme-bilge ne var? Ben sadece benim hizmet katmanları DAO geçiş mümkün olmamalı, ya da MongoDB veya BÖLÜM SimpleDB için yazılır?

CEVAP
2 AĞUSTOS 2010, PAZARTESİ


SimpleDB ölçülebilirlik bazı sınırlamalar vardır. Sadece sharding ölçekli ve cassandra, mongodb veya daha yüksek gecikme süresi, üretilen iş bir sınırı var ve daha diğer seçenekleri daha uygun. Ölçülebilirlik manuel (shard var).

Daha geniş Sorgu Seçenekleri gerekir ve yüksek okuma oranına sahip ve çok fazla veri yoksa mongodb daha iyi olur. Ama dayanıklılık için, Efendi/köle olarak en az 2 mongodb server örneklerini kullanmak gerekir. Aksi takdirde veri son dakika kaybedebilir. Ölçülebilirlik manuel. Simpledb çok daha hızlı. Autosharding 1.6 sürümü uygulanır.

Cassandra zayıf sorgulama seçenekleri vardır ama postgresql gibi dayanıklıdır. Hızlı mongo olarak daha yüksek veri boyutu. Yazma işlemi cassandra okuma işlemleri daha hızlı olur. Otomatik ateşleme ec2 örnekleri ölçeği olabilir, ama config dosyaları biraz eğer yanlış hatırlamıyorsam () değiştirmek zorunda. Eğer veri terabayt varsa cassandra en iyi bahistir. Hiçbir veri shard gerekiyor, 1 gün dağıtılmış tasarlanmıştır. Tüm verilerin kopyalarını herhangi bir sayı olabilir ve bazı sunucular ölürse otomatik olarak canlı olanlardan sonuçları döndürür ve diğerleri için ölü sunucunun veri dağıtılacak. Hataya dayanıklı olan son derece. Örneğini herhangi bir sayıda diğer seçenekleri daha ölçekte çok daha kolay ekleyebilirsiniz. Güçlü vardır .net ve java istemci seçenekleri. Bağlantı havuzu, Yük Dengeleme, ölü sunucuları işaretliyorlar.

Başka bir seçenek, büyük veri hadoop ama datawarehousing için hadoop kullanabilirsiniz diğerleri gibi gerçek zamanlı değil. Ne cassandra ya mongo hareketleri var, eğer işlemler gerekiyorsa postgresql daha iyi bir seçimdir. Başka bir seçenek Amazon RDS, ama performansı kötü ve fiyat yüksek. Eğer veritabanları ya da veri önbellekleme gerekebilir simpledb istiyorsanız (örn: memcached).

Eğer büyükse eğer verilerinizi mongo tavsiye ederim küçük web uygulamaları için, cassandra daha iyi olur. Mongo ya da cassandra ile bir önbellek katmanı gerek yok, zaten onlar hızlı. Simpledb tavsiye etmem, dediğin gibi de Amazon'a kilitler.

Eğer c#, java ya da scala kullanıyorsanız bir arayüz yazmak ve veri erişim katmanı için mongo, mysql, cassandra ya da başka bir şey için bunu uygulayabilirsiniz. (Örn ovmak,python,php) dinamik dillerde daha kolay. Eğer isterseniz ikisi için bir sağlayıcı yazma ve depolama belki değiştirebilir zamanı sadece bir yapılandırma değişikliği ile mümkün. Mongo,cassandra ve simpledb ile geliştirme daha kolay bir veritabanı ve şema, aynı zamanda istemci kitaplığı/bağlıdır bağlayıcı kullanıyorsun. Basit bir mongo. Diğer dizinler kendini yönetmek için geldin yani cassandra tablo başına sadece bir dizin var, ama cassandra 0.7 sürümü ile ikincil dizinler bildiğim kadarıyla bu mümkün olacaktır. Ayrıca bunlardan herhangi biriyle başlayabilirsiniz ve eğer gerekirse gelecekte değiştirin.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Kim Barbin

    Kim Barbin

    3 Mayıs 2012
  • pucksz

    pucksz

    24 Mart 2006
  • superemposed

    superemposed

    25 Aralık 2007