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

NoSQL vs. SQL, když je škálovatelnost irelevantní

Existuje spousta dalších podmínek, o kterých jsem slyšel s nerelačními systémy vs relačními. Dávám přednost této terminologii před sql/no-sql, protože si osobně myslím, že popisuje rozdíly lépe, a několik serverů "no-sql" má doplňky sql, takže každopádně... jaký druh souběžného vzoru nebo izolace transakcí je ve vašem systému vyžadováno. Jedním z údajných rozdílů mezi rel a non-rel dbs je „konzistentní-vždy“, „konzistentní-většinou“ nebo „konzistentní-eventuálně“. Relation dbs ve výchozím nastavení obvykle spadají do kategorie "konzistentní-většinou" as určitou prací a spoustou podmínek zamykání a závodů,;) mohou být "konzistentní-vždy", takže každý vždy hledá nejsprávnější reprezentaci souboru daný údaj. Většina toho, co jsem četl/slyšel o non-rel dbs, je, že jsou hlavně „konzistentní – nakonec“. To znamená, že se může vyskytovat mnoho případů našich dat, takže uživatel „A“ může vidět, že máme v inventáři 92 widgetů, zatímco uživatel „B“ jich může vidět 79 a nemusí být smířeni, dokud někdo skutečně neodejde. vytáhnout věci ze skladu. Dalším problémem je proměnlivost dat, jak často je třeba je aktualizovat? Konkrétní non-rel db, u kterých jsem byl vystaven, mají větší režii na aktualizace, některé z nich musí znovu vygenerovat celou datovou sadu, aby začlenily aktualizace.

Nyní si myslím, že non-rel/nosql jsou skvělé nástroje, pokud skutečně odpovídají vašemu případu použití. Mám několik projektů, které teď hledám. Ale musíte se při rozhodování podívat na všechny kompromisy, jinak se to prostě změní ve více řízený vývoj.



  1. Ovladač MongoDB PHP Driver a kontrola kompatibility MongoDB

  2. Jak se připojit k vašim MongoDB nasazením pomocí Robo 3T GUI

  3. Co znamená dokumentace MongoDB, když říká, že ObjectID jsou pravděpodobně jedinečná?

  4. Návrh tabulky MongoDB a výkon dotazů