Uvod u NoSQL modele podataka

Prije nego što započnemo s podatkovnim modelima, prvo razumimo što znači NoSQL. NoSQL ne znači da je jedini SQL što znači da ćemo dohvatiti i pohraniti podatke iz nerelacijskih baza podataka. A sad da vidimo što je model podataka? Model podataka definira logičku strukturu DBMS-a. To u osnovi znači da nam govori kako su podaci povezani jedni s drugima, odnosi između različitih entiteta i kako se obrađuju. Tehnike modeliranja podataka različite su i za relacijske i za ne-relacijske baze podataka. Glavna razlika je što modeli podataka NoSQL imaju više upita vezanih uz aplikaciju u odnosu na SQL.

Sintaksa sa parametrima

Sintaksa za pisanje NoSQL upita dana je s primjerom. U ovom ćemo primjeru dohvatiti ime i starost svih zaposlenika koji su označeni kao menadžera.

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

U gornjem primjeru koristili smo obrazac JSON za pisanje upita "objekt" ključna riječ koristi se za dodjelu naziva tablice, a ključna riječ "q" koristi se kao uvjet GDJE. U našem slučaju kada se uvjet mora primijeniti nad imenovanjem, jer želimo samo zaposlenike čije je imenovanje menadžer. Ključno "polje" su nazivi stupaca koje želimo dohvatiti na temelju stanja u "q". U našem slučaju stupci su ime i starost.

Gornji NoSQL upit ako se pretvori u SQL izgledat će dolje:

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

Najkraći upit koji možemo napisati je uobičajeni odabir upita u NoSQL-u je sljedeći:

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

Gornji upit je uobičajeni odabir upita.

Vrste NoSQL modela podataka

Sada naučimo o različitim vrstama NoSQL modela podataka.

Općenito, postoje četiri različite vrste podataka u NoSQL-u. Oni su kako slijedi i raspravljat ćemo o njima jedan po jedan.

  • Trgovina ključeva i vrijednosti
  • Trgovina na temelju dokumenata
  • Trgovina na bazi stupaca
  • Trgovina na bazi grafikona

A sada ćemo proći kroz njih jedan po jedan.

1. Trgovina ključ-vrijednost

  • Kao što ime sugerira, trgovina Key-value jednostavno koristi ključnu vrijednost za pohranu podataka u bazu podataka. Ključ u paru ključ-vrijednost mora biti jedinstven. Pravila postavljena za koliko ključ može biti duljina veličine ključa ovisi od baze podataka do baze podataka. Na primjer, u Redisu, maksimalna veličina za Key je 512mb. Čak je i prazni niz važeći ključ.
  • Ovdje je važna veličina ključa jer dugačak tipka može uzrokovati probleme s performansama, dok prekratak ključ može uzrokovati probleme čitljivosti. Vrijednost u paru ključ-vrijednost može biti bilo što, od Stringa do slike. Ovdje možete navesti i vrstu podataka vrijednosti.
  • Model baze podataka ključ-vrijednost može biti koristan za pohranu podataka o e-trgovini kao što su kategorije proizvoda, detalji proizvoda itd. Oni se uveliko koriste u velikoj analizi podataka. Čak možemo pohraniti kompletne URL-ove, jer naziv URL-a može biti ključni, a stvarni URL kao vrijednost. Primjeri baza podataka koji primjenjuju parove Key-Value su Oracle NoSQL baze podataka i Redis.

2. Trgovina NoSQL zasnovana na dokumentima

  • U ovoj vrsti baze podataka zapis i pridruženi podaci pohranjuju se u jednom dokumentu. Dakle, ovaj model nije potpuno nestrukturiran, ali je vrsta polustrukturiranih podataka.
  • Razlika između para dokumenata i ključa vrijednosti je u tome što je u pohrani vrste dokumenta takva vrsta kodiranja za vrijeme pohrane podataka u dokumente, može biti XML kodiranje ili JSON kodiranje.
  • Donji primjer prikazuje dokument koji se može pohraniti u bazu podataka dokumenata, ali s različitim kodiranjem. Pogledajmo primjer XML-a.


Srikanth Engineer
Febuary

Srikanth Engineer
Febuary

  • Razlika između konvencionalnih baza podataka i baza podataka temeljenih na dokumentima je što se ovdje podaci ne pohranjuju u tablice poput uobičajenih baza podataka, već se pohranjuju u dokumentima.
  • Primjeri baza podataka koji koriste gornji model podataka su MongoDB i Couchbase. Ove vrste baza podataka koriste se široko, posebno u analizi velikih podataka.

3. Trgovina na bazi stupaca

  • U ovoj vrsti baze podataka fokus je na stupovima, a ne na redovima jer su podaci pohranjeni u stupcima umjesto redaka, što je slučaj s većinom relacijskih baza podataka. Budući da se podaci pohranjuju u ćelije grupirane u stupce, tako da se sve čitanje-pisanje vrši pomoću stupaca, a ne redaka.
  • Zanimljivo je pitanje: zašto koristiti stupce, a ne redove? Odgovor na ovo pitanje je da kad pohranite podatke u stupce možete brzo pretražiti i brzo pronaći i objediniti jer on pohranjuje sve ćelije stupca kao kontinuirani unos što onda omogućava brži pristup.
  • Primjerice, ako želimo pitati naslove iz milijuna članaka, lako ćemo doći do modela podataka temeljenog na stupcima, jer ćemo s jednim unosom diska lako dobiti naslove članka, dok u relacijskim bazama podataka moraju prijeći do svake lokacije kako biste dobili naslove. Primjeri baza podataka u trgovini na temelju stupca su HBase, Big Table, Cassandra.

4. Trgovina na temelju grafa

  • Kao što ime sugerira, umjesto prikaza tablica ili stupaca koristi se grafički prikaz. Važna značajka ove vrste podataka je prisutnost čvorova i rubova. Na primjer, dva čvora povezana su s nekim odnosima, a odnos je ovdje predstavljen rubovima.
  • Također, možete učinkovito transformirati podatke s jednog modela na drugi pomoću ovog grafičkog modela zasnovanog na NoSQL. Postoje dvije najčešće korištene baze podataka temeljene na grafovima, a to su InfoGrid i Infinite Graph. InfoGrid nudi i dvije vrste grafičkih baza podataka poput MeshBase i NetMeshbase koje korisnici mogu odabrati ovisi o potrebama korisnika.

Zaključak

U ovom smo članku razmotrili bazu podataka NoSQL i različite vrste NoSQL modela i pojedinačno razgovarali o tim modelima. Različite vrste baza podataka dostupne u svakoj vrsti podataka podataka. Popularnost NoSQL baze podataka raste sa svakim danom zbog njegove brzine i učinkovitosti.

Preporučeni članci

Ovo je vodič za NoSQL modele podataka. Ovdje ćemo raspravljati o Tipovima NoSQL podataka modela i sintaksu s parametrima i objašnjenjem. Možete i proći kroz naše druge predložene članke da biste saznali više -

  1. Prednosti NoSQL-a
  2. Je MongoDB NoSQL
  3. Što je tehnologija velikih podataka?
  4. Što je analiza podataka

Kategorija: