You are on page 1of 13

Nerelačné bázy dát

Zdroje údajov pre No SQL databázu


• IoT – Prúd telemetrie zo zariadení je často prúd správ,
• Sociálne siete
• alebo blogové platformy.
• takzvané grafické databázy
• Systémy odporúčaní obsahu
Microsoft Azure a Amazon Web Services majú v súčasnosti štyri typy nerelačných databáz:
kľúčová hodnota, grafy, dokumenty a stĺpce.

• databáza kľúčovej hodnoty V prostrediach Azure a AWS sú teda databázy kľúčových hodnôt reprezentované ako
samostatné služby PaaS (napríklad Azure Table Storage, AWS DynamoDB) a ako PaaS/IaaS (AWS EMR HBase, Azure
HDInsight HBase). Zvážte základné entity, ktoré tvoria databázy kľúčových hodnôt implementované v modeli PaaS.
• databázu grafov. Je ideálny na ukladanie informácií, ktoré modelujú vzťahy medzi subjektmi v reálnom svete. Ako už
bolo uvedené, môžu to byť používatelia v sociálnej sieti prepojení vzťahmi s inými používateľmi. Ako model takejto
tematickej oblasti je graf - matematický objekt pozostávajúci z vrcholov a spojení
• V cloudových prostrediach sú tieto databázy reprezentované Azure (Azure CosmosDB Graph API) a nedávno Amazon
(AWS Neptún). Databázy grafov sú veľmi vhodné na ukladanie informácií v rôznych druhoch sociálnych sietí.
• databáza orientovaná na dokument -Najdôležitejším prvkom je dokument, ktorý ukladá informácie vo formáte JSON.
Množina polí v dokumente môže byť ľubovoľná, ale rovnako ako v prípade databáz kľúčovej hodnoty obsahuje tento
dokument množstvo polí, ktoré sú predvolene povinné a pridané
• dokumentovo orientovaná databáza MongoDB
• Okrem skutočného ukladania informácií vo formáte JSON poskytuje databáza orientovaná na dokument aj prostriedok
na vykonávanie dotazov. Jazykom dotazu môže byť JavaScript, zápis JSON a v niektorých prípadoch SQL (najmä preto
sa v cloudovom prostredí Azure databáza DocumentDB v Azure CosmosDB nazýva SQL API
Microsoft Azure a Amazon Web Services majú v súčasnosti štyri typy nerelačných databáz:
kľúčová hodnota, grafy, dokumenty a stĺpce.

• Nerelačné databázy typu rodiny stĺpcov ukladajú informácie vo forme riedkej matice, v ktorej sa riadky a
stĺpce používajú ako kľúče.
• príkladu so sociálnou sieťou
• Okrem používateľov a obsahu sú dôležitou súčasťou každej siete komentáre, ktoré je možné pridať k obsahu a k iným komentárom.
Možné sú rôzne úrovne komentovania. Napríklad používateľ A komentoval obsah, používateľ B komentoval svoju správu, používateľ
A reagoval na komentár používateľa B, na ktorý dostal komentáre od používateľov D, D, K a zároveň jeho pôvodný komentár
komentoval používateľ J. Je zrejmé, že v tomto prípade graf a ešte viac relačných databáz nie sú veľmi vhodné na prezentáciu
informácií. Je oveľa pohodlnejšie premýšľať o komentároch ako o reťazci prepojených dokumentov JSN alebo ako o jednom veľkom
dokumente JSN. Každá úroveň pridávania poznámok zodpovedá úrovni vnorenia objektov JSON.
• Naša hypotetická virtuálna sieť by teda mohla pozostávať
• z nerelačných databáz kľúčovej hodnoty (na reprezentáciu zdieľaného pásu),
• databázy grafov (na reprezentáciu prepojení medzi používateľmi)
• databázy zameranej na dokument (na ukladanie komentárov k obsahu).
Slovník pojmov
Skratka Vysvetlenie
DB Databáza
SQL Structured Query Language
NoSQL Not Only Structured Query Language
PL/SQL Procedural Language
ACID Atomicity, Consistenci, Isolation, Durability
SRBD Systém riadenia bázy dát
MongoDB Prostredie na spracovanie databázy
ANSI American National Standards Institute
CAP Computer theorem
REP Computer theorem
shell Základné užívateľské rozhrania
HQL Hibernate Query Language
MySQL Systém riadenia dát pomocou relačnej databázy
NewSQL Hybrid SQL a NoSQL databázy
Big Data Pojem zavedený zo zvyšújúcim sa počtom a objemom dát
Úvod

• Trendom tvorby databáz sa stalo používanie tzv. NoSQL databáz. Potrebné v tejto oblasti je tiež
zaujímať sa o implementáciu NoSQL do zložitých full-text vyhľadávačov, v ktorých sa berú do úvahy
synonymické slová, spodobovanie a iné gramatické pravidlá. NoSQL databázy sa taktiež používajú na
riešenie problémov, ak dopredu nie je známa databázová schéma.
• Výhodou využívania tohto prístupu NoSQL databáz môže byť vytvorenie jednoduchosti pre
design, jednoduchšej dostupnosti k dátam a vertikálnej a horizontálnej schopnosti pracovať s
náhlymi zmenami systému alebo dát.
• Vzhľadom na pestré novodobé využívanie NoSQL, vzniklo veľa druhov, ktoré riešia iné ako full-
textové vyhľadávanie. Odlišnosti možno sledovať pri štýle ukladania ale aj pri jeho používaní.
Využívané sú napríklad dokumentové, key-value alebo grafové NoSQL databázy.
• Potrebné je tiež zaoberať sa najčastejšími používanými SQL databázami, ako štandardným jazykom
pre tvorbu databázy. Práca je zameraná na spracovanie dát pomocou NoSQL databáz a SQL databázy.
Databázy využívajú taktiež rôzne jazyky, pomocou ktorých sú tvorené a následne budú využité na
splnenie cieľu našej práce. Medzi využité jazyky na tvorbu databáz môžeme zaradiť PL/SQL alebo
Java alebo dokonca C++.
hlavné výhody
 Flexibilná škálovateľnosť : hlavným rozdielom, pre NoSQL databázy je, že
škálovateľnosť je na rozdiel od SQL databáz horizontálna. Toto poskytuje systému
distribuovať spracované úlohy v rámci clusteru, ktoré sa môžu spájať s ďalšími uzlami.
 Flexibilný dátový model : pre NoSQL je typické, že nemusia mať vopred určenú
databázovú schému. Zmeny v schéme nezohrávajú veľkú prekážku, a pre používateľa
vytvára flexibilnejšie prostredie pre prácu.
 Efektívnosť pre čítanie : tvorba dátovej štruktúry v NoSQL databázach je pre
používateľa efektívnejšia, a tak aj tvorba dotazov v rámci úloh.
 Ekonomické hľadisko : na základe prvej výhody, je ukladanie dát nenáročné na pamäť
a nie je potrebné nákup drahých počítačov.
• Časť hardweru, viaceré hardware môžu byť navzájom prepojené.
ACID – vlastnosti NoSQL databáz
• Transakcia - Skratka Atomicity, Consistenci, Isolation, Durability (ACID)
 Atomicita – každá z transakcií je atomická, čiže nedeliteľná. Transakcia prebehne iba vtedy, ak sú splnené
všetky kroky a všetky prebehli úspešne správne. Pri zlyhaní jednej časti transakcie, neprebehne žiadna
transakcia
 Konzistencia – všetky dáta sú v konzistentnom stave. Dáta sa v databáze nachádzajú v správnom stave
a spĺňajú všetky zadané pravidlá.
 Izolácia – transakcie sa navzájom neovplyvňujú a vykonávajú sa jednotlivo.
 Trvalosť - zmeny v databáze sú, po úspešnej transakcii, uložené natrvalo.
Vybrané NoSQL
• Arango DB
• Mongo DB
• Oracle NoSLQ
Amazon RDS spravuje databázy Aurory
Redis je jednoducho použiteľné databázové úložisko
MongoDB je open source program na správu databáz NoSQL

You might also like