Junior — Middle
Jaké jsou hlavní rozdíly mezi relačními a nerelačními databázemi?
sobes.tech AI
Odpověď od AI
Hlavní rozdíly mezi relačními (SQL) a nerelaciálními (NoSQL) databázemi:
-
Struktura dat:
- Relační databáze ukládají data do tabulek se pevnou schémou (řádky a sloupce).
- Nerelaciální databáze mohou ukládat data ve formě dokumentů, klíč-hodnota, grafů nebo sloupců, často bez přísné schématu.
-
Jazyk dotazů:
- Relační používají SQL pro složité dotazy a spojení.
- Nerelaciální často mají vlastní API nebo jazyky dotazů, jednodušší nebo specializované.
-
Škálovatelnost:
- Relační databáze se obvykle škálují vertikálně (zvyšováním zdrojů jednoho serveru).
- Nerelaciální jsou vhodnější pro horizontální škálování (přidávání serverů).
-
Transakce a konzistence:
- Relační databáze podporují transakce ACID.
- Nerelaciální mohou obětovat přísnou konzistenci pro výkon a škálovatelnost (BASE).
Příklad: MySQL je relační, MongoDB je dokumentově orientovaná NoSQL.