Úvod do dátových modelov NoSQL

Než začneme s dátovými modelmi, najprv pochopme, čo znamená NoSQL. NoSQL znamená nielen SQL, čo znamená, že budeme získavať a ukladať údaje z nerelačných databáz. Teraz sa pozrime, aký dátový model je? Dátový model definuje logickú štruktúru DBMS. To v podstate znamená, že nám hovorí, ako sú údaje navzájom prepojené, vzťahy medzi rôznymi entitami a ako sú spracovávané. Techniky modelovania údajov sa líšia v relačných aj nerelačných databázach. Hlavný rozdiel spočíva v tom, že dátové modely NoSQL majú viac dotazov špecifických pre aplikáciu v porovnaní s SQL.

Syntax s parametrami

Syntax na písanie dotazu NoSQL je uvedená s príkladom. V tomto príklade získame meno a vek všetkých zamestnancov s vymenovaním za manažéra.

(
"object": "employee",
"q": (
"designation" : " Manager"
),
"fields": ("name", "age") )

Vo vyššie uvedenom príklade sme použili formulár JSON na napísanie dotazu „object“ kľúčové slovo sa používa na priradenie názvu tabuľky, kľúčové slovo „q“ sa použije ako podmienka WHERE. V našom prípade, keď sa na určenie musí uplatniť podmienka, pretože chceme iba zamestnancov, ktorých určenie je vedúci. Kľúčom „pole“ sú názvy stĺpcov, ktoré chceme načítať na základe podmienky v „q“. V našom prípade sú stĺpce meno a vek.

Vyššie uvedený dotaz NoSQL, ak je prevedený na SQL, bude vyzerať takto:

SELECT name, age
FROM employee
WHERE designation =' manager';

Najkratší dopyt, ktorý môžeme napísať, je normálny výberový dotaz v NoSQL:

(
"object": "String",
"q": "Expression"
)

Vyššie uvedený dotaz je normálny výberový dotaz.

Typy dátových modelov NoSQL

Teraz sa poďme dozvedieť o rôznych typoch dátových modelov NoSQL.

Všeobecne existujú v NoSQL štyri rôzne typy dátových modelov. Sú nasledujúce a budeme o nich diskutovať jeden po druhom.

  • Ukladanie kľúč-hodnota
  • Obchod založený na dokumentoch
  • Stĺpcový obchod
  • Obchod založený na grafe

Teraz ich prejdeme jeden po druhom.

1. Ukladanie kľúč - hodnota

  • Ako už názov napovedá, úložisko kľúč - hodnota jednoducho používa hodnotu kľúča na ukladanie údajov do databázy. Kľúč v páre kľúč - hodnota musí byť jedinečný. Pravidlá stanovené pre to, aký kľúč môže byť dĺžka pre veľkosť kľúča, závisia od databázy k databáze. Napríklad v Redis je maximálna veľkosť pre Key 512mb. Platný kľúč je dokonca aj prázdny reťazec.
  • Veľkosť kľúča je tu dôležitá, pretože dlhý kľúč môže spôsobiť problémy s výkonom, zatiaľ čo príliš krátky kľúč môže spôsobiť problémy s čitateľnosťou. Hodnota v páre kľúč - hodnota môže byť čokoľvek od reťazca po obrázok. Tu môžete zadať aj typ údajov hodnoty.
  • Databázový model kľúč - hodnota môže byť užitočný na ukladanie údajov o elektronickom obchode, ako sú kategórie produktov, podrobnosti o produktoch atď. Tieto sa vo veľkej miere používajú v analytike veľkých údajov. Môžeme dokonca uložiť úplné adresy URL, pretože názov URL môže byť kľúč a skutočná adresa URL ako hodnota. Príkladmi databáz, ktoré používajú páry kľúč - hodnota, sú Oracle NoSQL databáza a Redis.

2. NoSQL obchod založený na dokumentoch

  • V tomto type databázy sa záznam a súvisiace údaje ukladajú do jedného dokumentu. Tento model teda nie je úplne neštruktúrovaný, ale je to druh pološtruktúrovaných údajov.
  • Rozdiel medzi párom dokumentu a hodnoty kľúča je v tom, že v úložisku typu dokumentu je to, že pri ukladaní údajov v dokumentoch je k dispozícii nejaký druh kódovania. Môže to byť kódovanie XML alebo JSON.
  • Nižšie uvedený príklad zobrazuje dokument, ktorý je možné uložiť do databázy dokumentov, ale s odlišným kódovaním. Pozrime sa na príklad XML.


Srikanth Engineer
Febuary

Srikanth Engineer
Febuary

  • Rozdiel medzi konvenčnými databázami a databázami založenými na dokumentoch spočíva v tom, že údaje sa neukladajú v tabuľkách ako konvenčné databázy, ale ukladajú sa v dokumentoch.
  • Príklady databáz využívajúcich vyššie uvedený dátový model sú MongoDB a Couchbase. Tieto typy databáz sa rozsiahle používajú najmä pri analýze veľkých údajov.

3. Stĺpcový obchod

  • V tomto type databázy sa dôraz kladie skôr na stĺpce ako na riadky, pretože údaje sa ukladajú v stĺpcoch namiesto riadkov, čo je prípad väčšiny relačných databáz. Pretože dáta sú uložené v bunkách zoskupených do stĺpcov, takže všetko čítanie a zápis sa vykonáva pomocou stĺpcov, nie riadkov.
  • Vzniká zaujímavá otázka: prečo používať radšej stĺpce ako riadky? Odpoveď na túto otázku je, že keď ukladáte údaje do stĺpcov, môžete urobiť rýchle vyhľadávanie a rýchle načítanie a agregáciu, pretože ukladá všetky bunky stĺpca ako súvislý záznam, ktorý potom umožňuje rýchlejší prístup.
  • Napríklad, ak chceme dotazovať tituly z miliónov článkov, bude ľahké sa dostať do stĺpcového dátového modelu, ako pri jednej položke disku získame tituly článku ľahko, zatiaľ čo v relačných databázach sa musí prekonať na každé miesto a získajte tituly. Príklady databáz skladov založených na stĺpcoch sú HBase, Big Table, Cassandra.

4. Graficky založený obchod

  • Ako už názov napovedá, namiesto grafov alebo stĺpcov sa používa grafické znázornenie. Dôležitou črtou tohto typu dátového modelu je prítomnosť uzlov a hrán. Napríklad dva uzly sú spojené s niektorými vzťahmi a vzťah je tu znázornený hranami.
  • Pomocou tohto dátového modelu NoSQL založeného na grafe môžete tiež efektívne transformovať údaje z jedného modelu do druhého. Existujú dve bežne používané databázy založené na grafoch, ktoré sú InfoGrid a Infinite Graph. InfoGrid tiež ponúka dva druhy grafových databáz, ako sú MeshBase a NetMeshbase, ktoré si používatelia môžu vybrať, závisí od požiadaviek používateľa.

záver

V tomto článku sme diskutovali o databáze NoSQL a rôznych typoch modelov NoSQL a diskutovali sme o nich jednotlivo. Rôzne typy databáz dostupných v každom type dátového modelu. Popularita databázy NoSQL rastie s každým ďalším dňom z dôvodu jej rýchlosti a efektívnosti.

Odporúčané články

Toto je príručka k údajovým modelom NoSQL. Tu diskutujeme typy dátových modelov NoSQL a syntax s parametrami a vysvetlením. Viac informácií nájdete aj v ďalších navrhovaných článkoch -

  1. Výhody NoSQL
  2. Je MongoDB NoSQL
  3. Čo je technológia Big Data Technology?
  4. Čo je to Analýza údajov