NoSql document databaze

qelurg

  • ****
  • 378
    • Zobrazit profil
    • E-mail
Re:NoSql document databaze
« Odpověď #15 kdy: 29. 03. 2020, 21:35:43 »
volba technologie je vec vhodnosti, pouzijte technologii co se vam hodi.
klidne si drzte data v RAMce.
Spravna odpoved.
Neměla by být ale databázová vrstva spíš od aplikace oddělená tak, aby naopak nezáleželo na tom, jakou databázi použiju?
Jestli je to filosofická otazka, tak se filosoficky ptam, a proc by na tom melo nezalezet? Jakakoliv netrivialni aplikace a reseni stejne pouziva konkretni vlastnosti konkretni databaze a jejich vymena je netrivialni.


qelurg

  • ****
  • 378
    • Zobrazit profil
    • E-mail
Re:NoSql document databaze
« Odpověď #16 kdy: 29. 03. 2020, 21:37:21 »
volba technologie je vec vhodnosti, pouzijte technologii co se vam hodi.
klidne si drzte data v RAMce.
Spravna odpoved.
Neměla by být ale databázová vrstva spíš od aplikace oddělená tak, aby naopak nezáleželo na tom, jakou databázi použiju?

no samozrejme :-)

Ne, neměla. Každá databáze má svá specifika, svůj vlastní dialekt a je jinak silná v jiných operacích.
Když použijete ORM nebo jiný způsob zuniverzálnění práce s daty, připravíte se o největší sílu databází.

Pokud děláte malou aplikaci s malými daty, stojí za to používat ORM a neřešit to.
Kdykoliv děláte něco většího, je to už koule u nohy a nikdy nic nevyladíte.

Souhlas.

Re:NoSql document databaze
« Odpověď #17 kdy: 29. 03. 2020, 21:49:33 »
volba technologie je vec vhodnosti, pouzijte technologii co se vam hodi.
klidne si drzte data v RAMce.
Spravna odpoved.
Neměla by být ale databázová vrstva spíš od aplikace oddělená tak, aby naopak nezáleželo na tom, jakou databázi použiju?
Jestli je to filosofická otazka, tak se filosoficky ptam, a proc by na tom melo nezalezet? Jakakoliv netrivialni aplikace a reseni stejne pouziva konkretni vlastnosti konkretni databaze a jejich vymena je netrivialni.
A bavíme se o tom, jestli takové aplikace existují (jistě ano), nebo o tom, jestli to v takovém případě dělají správně? (imho nedělají).

Re:NoSql document databaze
« Odpověď #18 kdy: 29. 03. 2020, 21:52:22 »
Neměla by být ale databázová vrstva spíš od aplikace oddělená tak, aby naopak nezáleželo na tom, jakou databázi použiju?
Pokud „databází“ myslíte to, že má být jedno, jestli to bude SQL relační databáze, dokumenová databáze, grafová databáze, XML databáze nebo souborový systém, pak to rozhodně jedno není. Pokud vám tohle je jedno, pak nejspíš žádnou databázi nepotřebujete…

Ve chvíli, kdy relační databáze umožní uložit libovolný dokument (json) do jednoho sloupce, tak v tom okamžiku se na ni můžu dívat jako implementaci dokumentové databáze, a v tomto ohledu jsou ekvivalentní v tom smyslu, že nemůžu říct, která je vhodnější, nebo není. Prostě jsou na tom stejně. Pochopitelně jedna implementace bude rychlejší v tom, jedna pomalejší v onom, ale jako koncept umí totéž. Ale proč bych kvůli změně měl přepisovat aplikaci?
Auto, letadlo i loď jako koncepty také umí totéž – dopravovat náklad z místa na místo. Jenže když začnete vyvíjet s autem, skončíte nakonec s tím, že budete i tu loď a letadlo tahat po zemi.

Myslím, že se na to totiž díváte z opačné strany. Pro aplikaci není důležité, co databáze umožňuje, ale co neumožňuje.Tomu, co neumožňuje, se budete v aplikaci snažit vyhnout. A tím se vaše aplikace přizpůsobí konkrétní databázové technologii – protože bude obcházet to, v čem je slabá, a využívat toho, v čem je silná. Takže klidně můžete ukládat dokumenty do PostgreSQL, ale nezískáte tím žádnou výhodu relační databáze, ale přijdete o výhody dokumentové databáze.