2010-10-06 9 views
7

'de tanımlanan kriterler Web sitemizin bir içerik yönetim tipi sistemine ihtiyacı var. Örneğin, yöneticiler anında tanıtım sayfaları oluşturmak ister. Sayfa için bazı metin ve resimler ve sayfanın açık olması gereken URL'yi sağlarlar. Bunun için bir veri mağazasına ihtiyacımız var. Veri deposu için kriterler basit ve aşağıda tanımlanmıştır. Ben CouchDB veya MongoDB aşina değilim, ama onlar MySQL için bu daha iyi bir uyum olabilir düşünüyorum, ama daha fazla bilgi için MongoDB ve CouchDB daha fazla bilgi ile birilerini arıyorum.İhtiyaçlarıma en uygun olanı: MongoDB, CouchDB veya MySQL.

1 ile 10 arasında bir ölçekte aşağıdakiler için MongoDB, CouchDB ve MySQL değerlendirirsiniz nasıl: kurulum için

  • Kolay

    • Java istemcisi
    • Parça web sistemi gibi
    • CMS tıklar
    • Mağaza yüklenen dosyalar yük devretme
    • Destek
    • Belgeleme Eğer bu şartlar altında seçsin

    ?

  • +0

    Dosyaları depolamak için gluster (http://www.gluster.org) veya ceph (www.ceph.com) adreslerini kullanmayı düşünebilirsiniz. – JoG

    cevap

    6

    Her biri farklı kullanım alanları için uygundur. Ancak düşük trafikli sitelerde mysql/postgresql daha iyidir.

    Java istemci: hepsi istemcileri

    Parça web tıklama vardır: uygundur gridfs ile Mongo: Mongo ve cassandra Mağaza yüklenmiş dosyalar bu yüksek yazma durumun

    için daha uygundur. cassandra 1 mb'ye bölünmüş her bir sütuna 2 gb'ye kadar saklayabilir. mysql uygun değildir. sadece dosya konumunu saklamak ve dosyayı dosya sisteminde saklamak cassandra ve mysql için tercih edilir.

    Kolay kurulum yerine çalışma için: cassandra en iyisi, ikinci

    Destek Mongo: tüm iyi desteğe sahip, MySQL, Mongo

    Belgeler ikinci büyük topluluktur etti: 1 mysql, 2 Mongo

    Analiz için MongoDB'yi tercih ediyorum (web tıklamaları, sayaçlar, kayıtlar) (64 bit sisteme ihtiyacınız var) ve ana veriler için mysql veya postgresql. Mongo web sitesinde mongo sayfası kullanan şirketler üzerinde, çoğu analitik için mongo kullanıyor görebilirsiniz. Mongo 1.8 sürümünden sonra ana veriler için uygun olabilir. cassandra problemi, zayıf sorgulama yetenekleri (bir cms için uygun değil). ve mysql ile sorun kolay ölçeklenebilir & HA cassandra & mongo olarak değil ve ayrıca mysql özellikle yazıyor. Ben couchdb önermiyorum, en yavaş olanı.

    benim o Drupal gibi raftan bir şey kullanarak daha iyi olurdu kendi çalışırken belirtmek istiyorum "req/sn milyonlarca işlemesi gerekir" Burada gibi

    Serdar Irmak

    0

    Bence bu konuyla ilgili birçok yazı var. Bununla birlikte, mysql ve mongodb üzerine taşındığımdan beri ben de eğleneceğim. Hızlı, çok hızlı ama bu mükemmel anlamına gelmez. Benim tavsiyem, rahat ettiğin şeyi kullan. Eğer mongo ya da kanepe ile uyumlu hale getirmek için kodu yeniden kodlamak daha uzun sürerse, aşina olduğunuz şey buysa, mysql'e yapıştırabilirsiniz. Bu bir skillset olarak almak istediğiniz bir şeyse, o zaman mongodb veya couchdb öğelerini öğrenmek.

    Benim için, birkaç nedenden dolayı mongodb ile gittim, gridfs ve geolocation yoluyla dosya depolama. Evet, mysql kullanabilirdim ama tüm yaygaraların neyle ilgili olduğunu görmek istedim. Söylemeliyim ki, etkileyiciyim ve hala mongo ile rahat olduğumu söyleyebilmem için yollara gidiyorum.

    Listelediklerinizle, mongo'nun ihtiyaçlarınızın çoğuna uyduğunu söyleyebilirim.

    5

    Mongo ile ilgili deneyimlerime dayanarak bazı hızlı cevaplar.

    Java istemci

    Emin değilim, ama o yok ve iyi desteklenmektedir. Lots of docs, hatta birkaç POJO wrappers'u kolaylaştırmak için.

    Parça web O kadar ekler ve güncellemeleri hem teşekkür do "ateş ve unut" gerçekten çok kolay

    8 veya 9. tıklar. MongoDB, verileri analiz etmek ve verileri analiz için SQL'e aktarmak için kolay araçların (Mongo yeterince iyi değilse) yerleşik araçlara sahiptir. sistemi gibi

    CMS

    8 veya 9. Bu bütün web sayfası içeriği depolamak kolaydır. Ekstra sütunları "bağlamak" çok kolay. Bu Mongo's'un "ekmek ve tereyağı".

    Mağaza dosyaları

    burada bir öğrenme eğrisi var

    yüklendi ancak Mongo tasarrufu ve ikili veri hizmet veren her ikisi için özel olarak tasarlanmış bir GridFS sistemine sahiptir.

    Kolay birincil sunucuyu başlatın

    yerine çalışma

    kurmak: senin köle başlatın:

    10gen bir posta listesi vardır ./mongo --bindip 1.2.3.5 --dbpath /my/data/files --slave --source 1.2.3.4

    Destek: http://groups.google.com/group/mongodb-user. Ayrıca destek ödemişler. Yanıt süresi genellikle mükemmel ve harika arasında bir yerdedir.

    Belgeler

    Ortalama. Her şey orada, ama hala biraz dis-organize. Sonunda pek çok yeni gelişmeye uydurun.

    0

    Ben bir şey görmüyorum iyi .CouchDB üzerinde

    +0

    Web sitem şu anda SOAP arayüzü üzerinden arka uç ile iletişim kurar. Web sitesinin CMS kısmının bu bilgilerin bazılarına ihtiyacı olacaktır. Ayrıca oturum verilerini sitenin ana kısmı ile paylaşabilmeli. Adil bir lisansla bunun için bir Java çözümü var mı? – Bradford

    2

    Benim alabilir:

    Java Müşteri: Büyük mı, oldukça kolay ve tam nesne eşleme Ektorp kullanın. Her neyse, tüm API, HTTP üzerinden sadece Json'dur.

    Web tıklamalarını takip edin: Belki redis bunun için daha iyi bir araçtır. CouchDB burada daha iyi bir seçenek değil.

    CMS benzeri sistem: Şablonları, dinamik formları, verileri ve benzerlerini kolayca birleştirip görünümleri kullanarak bunları harmanlayabilmeniz harika.

    Karşıya yüklenen dosyaları kaydetme: couchdb'deki herhangi bir belge aritmetik eklere sahip olabilir, bu nedenle doğal bir uyum sağlar.

    Kolay kurulum yük devretme: Ana/ana çoğaltma yapmak için her zaman okunduğunuzdan emin olun, veritabanı hiçbir zaman yozlaşmayacaktır, bu nedenle başarısızlık durumunda tekrar bir başlangıç ​​kanepesi meselesidir ve durduğu yeri devralır (minimum kesinti süresi) ve çoğaltma değişiklikleri yakalayacaktır.

    Destek: Bir posta listesi ve ücretli destek alın.

    Belgeler: açık kitap http://guide.couchdb.org ve wiki'yi kullanın.