Junior
Kokie duomenų bazių tipai egzistuoja?
sobes.tech AI
Atsakymas iš AI
Duomenų bazės klasifikuojamos pagal keletą požymių, pagrindiniai tipai:
-
Santykinės (SQL orientuotos):
- Duomenys saugomi lentelėse su eilutėmis ir stulpeliais.
- Santykiai tarp lentelių nustatomi pirminiais ir išoriniais raktais.
- Naudojama SQL kalba užklausoms.
- Pavyzdžiai: PostgreSQL, MySQL, Oracle, SQL Server.
-
Nesantykinės (NoSQL):
- Skiriasi nuo santykinės lankstesnėmis schemomis ir horizontaliu mastelio keitimu.
- Yra įvairių duomenų modelių:
- Raktas-reikšmė: Redis, Memcached.
- Dokumentų orientuotos: MongoDB, Couchbase.
- Plačios stulpelių: Cassandra, HBase.
- Tinklų: Neo4j, ArangoDB.
-
Atmintyje (In-Memory):
- Duomenys saugomi tiesiogiai RAM atmintyje, siekiant greito prieigos.
- Gali būti tiek santykinės, tiek NoSQL.
- Pavyzdžiai: Redis, Memcached, SAP HANA.
-
Laiko eilutės (Time Series):
- Optimizuotos duomenų saugojimui ir analizei, gaunamai chronologine tvarka.
- Pavyzdžiai: InfluxDB, TimescaleDB.
-
Daugiamodelinės (Multi-model):
- Palaiko kelis duomenų modelius vienu metu (pvz., dokumentų ir tinklų).
- Pavyzdžiai: ArangoDB, OrientDB.
-
Geografinės erdvės (Spatial):
- Optimizuotos duomenų saugojimui ir užklausoms su geografinėmis koordinatėmis.
- Dažnai yra papildiniai santykinėms arba NoSQL duomenų bazėms (pvz., PostGIS PostgreSQL).
-
Pagrindinis-pavaldinis (Master-Slave):
- Architektūros modelis duomenų replikacijai:
- Vienas mazgas (pagrindinis) apdoroja įrašus, kiti (pavaldiniai) – tik skaityti ir sinchronizuoti su pagrindiniu.
- Naudojama skaitymo mastelio didinimui ir atsparumui gedimams.
-
Skaldytos (Sharded):
- Duomenys paskirstyti keliuose nepriklausomuose mazguose.
- Naudojama horizontaliam mastelio keitimui ir didelių duomenų apdorojimui.
Lentelė, lyginanti santykinės ir nesantykinės duomenų bazes:
| Savybė | Santykinės (SQL) | Nesantykinės (NoSQL) |
|---|---|---|
| Schema | Griežta, iš anksto apibrėžta | Lanksti, dinamiška |
| Mastelio keitimas | Vertikalus (sudėtingesnis horizontaliai) | Horizontalus (paprastesnis) |
| Duomenų vientisumas | ACID (dažniausiai) | BASE (dažniau) |
| Duomenų modelis | Lentelės | Raktas-reikšmė, dokumentas, grafas ir kt. |
| Užklausų kalba | SQL | Įvairi (API, specifinė) |