Junior
Kādi datu bāzu veidi pastāv?
sobes.tech AI
Atbilde no AI
Datu bāzes klasificē pēc vairākiem raksturlielumiem, galvenie veidi:
-
Relāciju (SQL orientētas):
- Dati tiek glabāti tabulās ar rindām un kolonnām.
- Attiecības starp tabulām tiek noteiktas ar galvenajām un ārējām atslēgām.
- Izmanto SQL valodu vaicājumiem.
- Piemēri: PostgreSQL, MySQL, Oracle, SQL Server.
-
Nerelāciju (NoSQL):
- Atšķiras ar elastīgām shēmām un horizontālu mērogošanu.
- Pastāv dažādi datu modeļi:
- Atslēga-vērtība: Redis, Memcached.
- Dokumentu orientētas: MongoDB, Couchbase.
- Plašas kolonnas: Cassandra, HBase.
- Grafu: Neo4j, ArangoDB.
-
Atmiņā (In-Memory):
- Dati tiek glabāti tieši RAM atmiņā, lai nodrošinātu ātru piekļuvi.
- Var būt gan relāciju, gan NoSQL.
- Piemēri: Redis, Memcached, SAP HANA.
-
Laika rindas (Time Series):
- Optimizētas datu glabāšanai un analīzei, ienākošo datu hronoloģiskā secībā.
- Piemēri: InfluxDB, TimescaleDB.
-
Daudzmodelu (Multi-model):
- Atbalsta vairākus datu modeļus vienlaikus (piemēram, dokumentu un grafu).
- Piemēri: ArangoDB, OrientDB.
-
Ģeoparalēlās (Spatial):
- Optimizētas datu glabāšanai un vaicājumiem ar ģeogrāfiskajām koordinātēm.
- Bieži ir paplašinājumi relāciju vai NoSQL datu bāzēm (piemēram, PostGIS PostgreSQL).
-
Pirmkods-sekundārs (Master-Slave):
- Datu replikācijas arhitektūras modelis:
- Viens mezgls (pirmkods) apstrādā ierakstus, citi (sekundāri) — tikai lasa un sinhronizējas ar pirmkodu.
- Izmanto lasīšanas mērogošanai un kļūdu tolerances nodrošināšanai.
-
Shardētas (Sharded):
- Dati ir sadalīti starp vairākām neatkarīgām mezglēm.
- Izmanto horizontālam mērogojumam un lielu datu apstrādei.
Salīdzināšanas tabula starp relāciju un nerelāciju datu bāzēm:
| Raksturlielums | Relāciju (SQL) | Nerelāciju (NoSQL) |
|---|---|---|
| Shēma | Stingra, iepriekš definēta | Elastīga, dinamiska |
| Mērogošana | Vertikāla (grūtāka horizontāla) | Horizontāla (vienkāršāka) |
| Datu integritāte | ACID (parasti) | BASE (biežāk) |
| Datu modelis | Tabulas | Atslēga-vērtība, dokuments, grafs un t.t. |
| Vaicājuma valoda | SQL | Dažādi (API, specifiski) |