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

MongoDB vs. Cassandra

Spousta čtení v každém dotazu, méně pravidelných zápisů

Obě databáze fungují dobře při čteních, kde se horká datová sada vejde do paměti. Oba také zdůrazňují datové modely bez spojení (a místo toho podporují denormalizaci) a oba poskytují indexy dokumentů nebo řádků, ačkoli indexy MongoDB jsou v současnosti flexibilnější.

Úložný modul Cassandra poskytuje zápisy v konstantním čase bez ohledu na to, jak velká vaše datová sada roste. Zápisy jsou v MongoDB problematičtější, částečně kvůli úložišti založenému na b-stromu, ale spíše kvůli zamykání s více granularitami.

Pro analýzu poskytuje MongoDB vlastní implementaci map/redukcí; Cassandra poskytuje nativní podporu Hadoop, včetně podpory pro Hive (sklad dat SQL postavený na mapování/redukci Hadoop) a Pig (analytický jazyk specifický pro Hadoop, o kterém si mnozí myslí, že je pro mapování/snížení zátěže vhodnější než SQL). Cassandra také podporuje použití Spark.

Nebojte se "masivní" škálovatelnosti

Pokud se díváte na jeden server, MongoDB je pravděpodobně vhodnější. Pro ty, kteří se více zajímají o škálování, bude architektura Cassandra bez jediného bodu selhání snadněji nastavitelná a spolehlivější. (Globální blokování zápisu MongoDB má také tendenci být bolestivější.) Cassandra také poskytuje mnohem větší kontrolu nad tím, jak vaše replikace funguje, včetně podpory pro více datových center.

Větší starost o jednoduché nastavení, údržbu a kód

Oba jsou triviální na nastavení, s rozumnými výchozími nastaveními pro jeden server. Cassandra je jednodušší nastavit v konfiguraci s více servery, protože se nemusíte starat o žádné uzly se speciální rolí.

Pokud v současné době používáte blob JSON, MongoDB je šíleně dobrá shoda pro váš případ použití, protože k ukládání dat používá BSON. Budete moci mít bohatší a více dotazovatelná data, než byste měli ve své současné databázi. Pro Monga by to bylo nejvýznamnější vítězství.



  1. Vložte soubor json do mongodb

  2. Proč má Redis funkce Pub/Sub?

  3. Agregátní rámec nemůže používat indexy

  4. Redis Cluster - připravena výroba?