SORU
28 ŞUBAT 2010, Pazar


Nasıl bir performans SQL MongoDB eşdeğer katılabilirim?

Nasıl bir performans SQL MongoDB eşdeğer katılabilirim?

Örneğin iki koleksiyon var ki (kullanıcılar ve yorumlar) ve pid=444 kullanıcının her biri için bilgi ile birlikte tüm yorumları çekmek istiyorum.

comments
  { uid:12345, pid:444, comment="blah" }
  { uid:12345, pid:888, comment="asdf" }
  { uid:99999, pid:444, comment="qwer" }

users
  { uid:12345, name:"john" }
  { uid:99999, name:"mia"  }

Bir şekilde çekmek için, belirli bir alan ile tüm yorumlar (örn. ...bul ({: 444 pıd}) ) ve kullanıcı bilgileri tek seferde her yorum ile ilgili?

Şu anda, ben ilk açıklamalar hangi maçı kriterim, daha sonra sergiyi uid şu sonuç kümesi, kullanıcı nesneleri birleştirme ve onlarla yorumun sonuçlar. Yapıyorum gibi görünüyor yanlış.

CEVAP
8 ŞUBAT 2011, Salı


Mongodb resmi sitesinde bu sayfa adresleritam olarakbu soru:

http://docs.mongodb.org/ecosystem/tutorial/model-data-for-ruby-on-rails/

Hikayeler bizim listesini görüntülemek için, haberi paylaşan kullanıcının adını göstermek için ihtiyacımız olacak. Eğer ilişkisel bir veritabanı kullanarak olsaydık katılın kullanıcıları ve mağazalar gerçekleştirmek ve tek bir sorguda tüm nesneleri alabiliriz. Ama MongoDB katıldı desteklemiyor ve bu yüzden, zaman zaman, denormalization bit gerektirir. Burada, bu önbelleğe alma anlamına gelir 'kullanıcı adı' özniteliği.

İlişkisel titiz bazı evrensel hukuku ihlal olsaydık olarak zaten huzursuz hissediyor olabilir. Ama diyelim MongoDB koleksiyonları ilişkisel tablolar için değil eşdeğerdir unutmayın ki; her benzersiz bir tasarım hedefi hizmet vermektedir. Normalleştirilmiş bir tablo veri atomik, yalıtılmış bir yığın sağlar. Bir belge, ancak, daha yakından bir bütün olarak bir nesneyi temsil eder. Sosyal bir haber sitesi olması durumunda, bir kullanıcı adı hikaye yayınlanmadan içkin olduğu söylenebilir.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • jagadambarecords

    jagadambarec

    13 AĞUSTOS 2008
  • MrOctopi

    MrOctopi

    6 Aralık 2010
  • whatever

    whatever

    30 EYLÜL 2005