sql >> Databáze >  >> NoSQL >> MongoDB

NoSQL - MongoDB vs CouchDB

Viz následující odkazy

Aktualizovat :Našel jsem skvělé srovnání NoSQL databáze.

MongoDB (3.2)

  • Napsáno v:C++
  • Hlavní bod:úložiště dokumentů JSON
  • Licence:AGPL (ovladače:Apache)
  • Protokol:Vlastní, binární (BSON)
  • Hlavní/podřízená replikace (automatické převzetí služeb při selhání se sadami replik)
  • Vestavěné sdílení
  • Dotazy jsou výrazy JavaScript
  • Spouštět libovolné funkce JavaScriptu na straně serveru
  • Má geoprostorové indexování a dotazy
  • Vícenásobné úložiště s různými výkonnostními charakteristikami
  • Výkon oproti funkcím
  • Ověření dokumentu
  • Ukládání deníků
  • Výkonný agregační rámec
  • Na 32bitových systémech omezeno na ~2,5Gb
  • Integrované textové vyhledávání
  • GridFS k ukládání velkých dat + metadat (ve skutečnosti to není FS)
  • Informace o datovém centru

Nejlépe použitelný :Pokud potřebujete dynamické dotazy. Pokud dáváte přednost definování indexů, nikoli mapování/redukování funkcí. Pokud potřebujete dobrý výkon na velké DB. Pokud jste chtěli CouchDB, ale vaše data se příliš mění, zaplňují disky.

Například :U většiny věcí, které byste dělali s MySQL nebo PostgreSQL, ale předdefinované sloupce vás opravdu brzdí.

CouchDB (1.2)

  • Napsáno v:Erlang
  • Hlavní bod:konzistence DB, snadné použití
  • Licence:Apache
  • Protokol:HTTP/REST
  • Obousměrná (!) replikace,
  • nepřetržitě nebo ad hoc,
  • s detekcí konfliktů,
  • tedy replikace master-master. (!)
  • MVCC – operace zápisu neblokují čtení
  • Předchozí verze dokumentů jsou k dispozici
  • Pouze (spolehlivý) design, který umožňuje pouze selhání
  • Čas od času potřebuje zhutnění
  • Zobrazení:vložená mapa/zmenšení
  • Formátování zobrazení:seznamy a pořady
  • Je možné ověření dokumentu na straně serveru
  • Ověření je možné
  • Aktualizace v reálném čase prostřednictvím '_changes' (!)
  • Manipulace s přílohami

Nejlépe použitelný :Pro shromažďování, občas se měnící data, na která se mají spouštět předdefinované dotazy. Místa, kde je verzování důležité.

Například :CRM, CMS systémy. Master-master replikace je obzvláště zajímavá funkce, která umožňuje snadné nasazení na více místech.



  1. Vložení velkého pole objektů do mongodb z nodejs

  2. Udržování otevřeného připojení Redis pomocí BookSleeve

  3. V Nodejs nelze použít odlišný Mongodb

  4. Jak použít proměnnou jako název pole v mongodb-native findAndModify?