More actions
Vytvorená stránka „SRDB - Systém Riadenia Bázy Dát (DBMS), princíp klient-server architektúry SQL serverov, distribuované databázy. {{Pojmová mapa}} . {{Téma|Oblast=Kategória:Dátová veda|Poradie=60}} Kategória:Dátová veda“ |
Bez shrnutí editace |
||
(2 medziľahlé úpravy od rovnakého používateľa nie sú zobrazené.) | |||
Riadok 1: | Riadok 1: | ||
SRBD - Systém Riadenia Bázy Dát (DBMS), princíp klient-server architektúry SQL serverov, distribuované databázy. | |||
{{Pojmová mapa}} | {{Pojmová mapa}} | ||
. | == SRBD (Systém Riadenia Bázy Dát) == | ||
Systém riadenia bázy dát (''anglicky DBMS - Database Management System'') je softvérový nástroj, ktorý umožňuje vytvárať, spravovať, manipulovať a riadiť databázy. Zaisťuje, že dáta sú: | |||
* Organizované; | |||
* Chránené; | |||
* Konzistentné; | |||
* Prístupné oprávneným používateľom; | |||
Sem patria tradičné databázové systémy ktoré poznáme, napríklad: MySQL, PostgreSQL, Oracle Database, Microsoft SQL Server, MongoDB (NoSQL). | |||
=== Hlavné funkcie SRBD === | |||
# '''Ukladanie a správa dát''': | |||
#* Umožňuje efektívne ukladanie veľkého množstva dát do databázových štruktúr; | |||
# '''Manipulácia s dátami''': | |||
#* Poskytuje príkazy na vkladanie, aktualizáciu, mazanie a vyhľadávanie dát (napr. pomocou SQL); | |||
# '''Riadenie prístupu k dátam''': | |||
#* Definuje oprávnenia a obmedzenia, ktoré chránia dáta pred neoprávneným prístupom; | |||
# '''Konzistencia a integrita dát''': | |||
#* Zabezpečuje správnosť dát prostredníctvom kľúčov, obmedzení a transakcií; | |||
# '''Transakčný manažment''': | |||
#* Implementuje ACID vlastnosti (Atomicita, Konzistentnosť, Izolácia, Trvácnosť); | |||
# '''Zálohovanie a obnova dát''': | |||
#* Umožňuje obnovu databázy v prípade poruchy; | |||
# '''Podpora viacerých používateľov''': | |||
#* Riadi súbežný prístup viacerých používateľov pomocou uzamykacích (''lock'') mechanizmov; | |||
== SQL server a jeho princíp fungovania == | |||
SQL server poskytuje funkcie na ukladanie a manipuláciu s dátami a obvykle funguje na '''klient-server architektúre'''. | |||
=== Klient–Server architektúra === | |||
SQL server využíva model klient-server, ktorý zabezpečuje efektívnu komunikáciu medzi databázou (serverom) a aplikáciami alebo používateľmi (klientmi). | |||
# '''Klient''': | |||
#* Počítač alebo aplikácia, ktorá iniciuje požiadavku na dáta (napr. používateľská aplikácia alebo webová stránka). | |||
#* Príklad požiadavky: "Získaj všetky objednávky zákazníka s ID = 5" | |||
# '''Server''': | |||
#* SQL Server prijíma požiadavky od klientov, spracuje ich a odošle odpoveď. | |||
#* Zabezpečuje všetky funkcie spojené s manipuláciou dát, ako sú: | |||
#** Spúšťanie SQL dotazov; | |||
#** Riadenie transakcií; | |||
#** Zabezpečenie a optimalizácia výkonu; | |||
==== Proces fungovania ==== | |||
# '''Požiadavka od klienta''': | |||
#* Klient (napr. aplikácia) odošle SQL dotaz na server prostredníctvom sieťového spojenia | |||
# '''Spracovanie na serveri''': | |||
#* SQL Server analyzuje dotaz (syntaktická a sémantická kontrola); | |||
#* Optimalizuje dotaz na základe existujúcich indexov a štruktúr; | |||
#* Vykoná požadovanú operáciu (vyhľadávanie, aktualizáciu, vloženie dát); | |||
# '''Odpoveď servera''': | |||
#* Server vráti výsledok požiadavky klientovi (napríklad: zoznam riadkov z tabuľky); | |||
== Distribuované databázy == | |||
Distribuovaná databáza je databáza, ktorej dáta sú rozdelené na viaceré fyzické miesta (servery), ale sú spravované ako jednotný systém. Každý uzol systému je schopný nezávisle spracovať klientské požiadavky. | |||
Distribuované databázy dokážeme '''horizontálne škálovať''' (teda, pridávať nové servery; naopak, pri '''vertikálnom škálovaní''' meníme vlastnosti existujúcich systémov, napríklad že kúpime viacej pamäte RAM). | |||
'''Výhody:''' | |||
* Ak jeden server zlyhá, dáta môžu byť dostupné z iného servera; | |||
* Jednoduchšie zvládnutie rastúceho objemu dát a používateľov; | |||
* Dáta môžu byť uložené bližšie k miestam, kde sú potrebné, čím sa zníži doba odozvy; | |||
* Dáta sú replikované, takže zlyhanie jedného uzla neohrozí celý systém; | |||
'''Nevýhody:''' | |||
* Synchronizácia dát medzi uzlami je náročná; | |||
* Dotazy, ktoré vyžadujú dáta z viacerých uzlov, môžu byť pomalé; | |||
* Rozdelené dáta zvyšujú riziko narušenia bezpečnosti; | |||
'''Použitie:''' | |||
* '''Bankové systémy''' (ukladanie údajov o transakciách na viacerých miestach pre vysokú dostupnosť); | |||
* '''Globálne aplikácie''' (e-commerce platformy, ktoré potrebujú poskytovať služby zákazníkom v rôznych regiónoch); | |||
* '''Cloudové systémy''' (dáta distribuované cez rôzne dátové centrá v cloude (napr. Google, Amazon, Microsoft Azure); | |||
=== Charakteristiky distribuovaných databáz === | |||
# '''Distribúcia dát''' (dáta môžu byť rozdelené geograficky na viacero miest, napríklad: dátové centrá v rôznych mestách); | |||
# '''Transparentnosť''' (používateľ nevidí, že dáta sú rozdelené – všetko vyzerá ako jedna databáza); | |||
# '''Replikácia''' (dáta môžu byť duplikované na viacerých miestach pre zvýšenie dostupnosti a odolnosti); | |||
# '''Škálovateľnosť''' (systémový administrátor môže ľahko pridať nové servery, keď sa zvýši množstvo dát alebo počet používateľov); | |||
== Zhrnutie == | |||
{| class="wikitable" | |||
!'''Pojem''' | |||
!'''Popis''' | |||
|- | |||
|'''[[Architektúra a technológie databáz#SRBD (Systém Riadenia Bázy Dát)|SRBD]]''' | |||
|Softvér na správu a riadenie databáz, ktorý poskytuje funkcie na ukladanie, manipuláciu a zabezpečenie dát. | |||
|- | |||
|'''[[Architektúra a technológie databáz#SQL server a jeho princíp fungovania|SQL server]]''' | |||
|Relačný databázový systém funguje na klient-server architektúre. | |||
|- | |||
|'''[[Architektúra a technológie databáz#Distribuované databázy|Distribuované databázy]]''' | |||
|Databázy s dátami rozdelenými na viaceré servery, ktoré sú spravované ako jeden systém. | |||
|} | |||
{{Téma|Oblast=Kategória:Dátová veda|Poradie=60}} | {{Téma|Oblast=Kategória:Dátová veda|Poradie=60}} | ||
[[Kategória:Dátová veda]] | [[Kategória:Dátová veda]] |
Aktuálna revízia z 09:11, 13. január 2025
SRBD - Systém Riadenia Bázy Dát (DBMS), princíp klient-server architektúry SQL serverov, distribuované databázy.
SRBD (Systém Riadenia Bázy Dát)
Systém riadenia bázy dát (anglicky DBMS - Database Management System) je softvérový nástroj, ktorý umožňuje vytvárať, spravovať, manipulovať a riadiť databázy. Zaisťuje, že dáta sú:
- Organizované;
- Chránené;
- Konzistentné;
- Prístupné oprávneným používateľom;
Sem patria tradičné databázové systémy ktoré poznáme, napríklad: MySQL, PostgreSQL, Oracle Database, Microsoft SQL Server, MongoDB (NoSQL).
Hlavné funkcie SRBD
- Ukladanie a správa dát:
- Umožňuje efektívne ukladanie veľkého množstva dát do databázových štruktúr;
- Manipulácia s dátami:
- Poskytuje príkazy na vkladanie, aktualizáciu, mazanie a vyhľadávanie dát (napr. pomocou SQL);
- Riadenie prístupu k dátam:
- Definuje oprávnenia a obmedzenia, ktoré chránia dáta pred neoprávneným prístupom;
- Konzistencia a integrita dát:
- Zabezpečuje správnosť dát prostredníctvom kľúčov, obmedzení a transakcií;
- Transakčný manažment:
- Implementuje ACID vlastnosti (Atomicita, Konzistentnosť, Izolácia, Trvácnosť);
- Zálohovanie a obnova dát:
- Umožňuje obnovu databázy v prípade poruchy;
- Podpora viacerých používateľov:
- Riadi súbežný prístup viacerých používateľov pomocou uzamykacích (lock) mechanizmov;
SQL server a jeho princíp fungovania
SQL server poskytuje funkcie na ukladanie a manipuláciu s dátami a obvykle funguje na klient-server architektúre.
Klient–Server architektúra
SQL server využíva model klient-server, ktorý zabezpečuje efektívnu komunikáciu medzi databázou (serverom) a aplikáciami alebo používateľmi (klientmi).
- Klient:
- Počítač alebo aplikácia, ktorá iniciuje požiadavku na dáta (napr. používateľská aplikácia alebo webová stránka).
- Príklad požiadavky: "Získaj všetky objednávky zákazníka s ID = 5"
- Server:
- SQL Server prijíma požiadavky od klientov, spracuje ich a odošle odpoveď.
- Zabezpečuje všetky funkcie spojené s manipuláciou dát, ako sú:
- Spúšťanie SQL dotazov;
- Riadenie transakcií;
- Zabezpečenie a optimalizácia výkonu;
Proces fungovania
- Požiadavka od klienta:
- Klient (napr. aplikácia) odošle SQL dotaz na server prostredníctvom sieťového spojenia
- Spracovanie na serveri:
- SQL Server analyzuje dotaz (syntaktická a sémantická kontrola);
- Optimalizuje dotaz na základe existujúcich indexov a štruktúr;
- Vykoná požadovanú operáciu (vyhľadávanie, aktualizáciu, vloženie dát);
- Odpoveď servera:
- Server vráti výsledok požiadavky klientovi (napríklad: zoznam riadkov z tabuľky);
Distribuované databázy
Distribuovaná databáza je databáza, ktorej dáta sú rozdelené na viaceré fyzické miesta (servery), ale sú spravované ako jednotný systém. Každý uzol systému je schopný nezávisle spracovať klientské požiadavky.
Distribuované databázy dokážeme horizontálne škálovať (teda, pridávať nové servery; naopak, pri vertikálnom škálovaní meníme vlastnosti existujúcich systémov, napríklad že kúpime viacej pamäte RAM).
Výhody:
- Ak jeden server zlyhá, dáta môžu byť dostupné z iného servera;
- Jednoduchšie zvládnutie rastúceho objemu dát a používateľov;
- Dáta môžu byť uložené bližšie k miestam, kde sú potrebné, čím sa zníži doba odozvy;
- Dáta sú replikované, takže zlyhanie jedného uzla neohrozí celý systém;
Nevýhody:
- Synchronizácia dát medzi uzlami je náročná;
- Dotazy, ktoré vyžadujú dáta z viacerých uzlov, môžu byť pomalé;
- Rozdelené dáta zvyšujú riziko narušenia bezpečnosti;
Použitie:
- Bankové systémy (ukladanie údajov o transakciách na viacerých miestach pre vysokú dostupnosť);
- Globálne aplikácie (e-commerce platformy, ktoré potrebujú poskytovať služby zákazníkom v rôznych regiónoch);
- Cloudové systémy (dáta distribuované cez rôzne dátové centrá v cloude (napr. Google, Amazon, Microsoft Azure);
Charakteristiky distribuovaných databáz
- Distribúcia dát (dáta môžu byť rozdelené geograficky na viacero miest, napríklad: dátové centrá v rôznych mestách);
- Transparentnosť (používateľ nevidí, že dáta sú rozdelené – všetko vyzerá ako jedna databáza);
- Replikácia (dáta môžu byť duplikované na viacerých miestach pre zvýšenie dostupnosti a odolnosti);
- Škálovateľnosť (systémový administrátor môže ľahko pridať nové servery, keď sa zvýši množstvo dát alebo počet používateľov);
Zhrnutie
Pojem | Popis |
---|---|
SRBD | Softvér na správu a riadenie databáz, ktorý poskytuje funkcie na ukladanie, manipuláciu a zabezpečenie dát. |
SQL server | Relačný databázový systém funguje na klient-server architektúre. |
Distribuované databázy | Databázy s dátami rozdelenými na viaceré servery, ktoré sú spravované ako jeden systém. |