42
Datu bāzes sistēmu tehnoloģiju problēmas, risinājumi un attīstības tendences 1

2 Dbs Problemas Tendences

Embed Size (px)

DESCRIPTION

asdasd

Citation preview

Page 1: 2 Dbs Problemas Tendences

Datu bāzes sistēmu tehnoloģiju problēmas, risinājumi un attīstības tendences

1

Page 2: 2 Dbs Problemas Tendences

Informācijas sistēmas – informācijas tehnoloģiju pamatuzdevums

Sekmīgai darbībai cilvēki izmanto daudz un dažādas informācijas sistēmas. Mūsdienās tās galvenokārt ir datorizētās informācijas sistēmas.

Informācijas sistēma

Informācijas sistēma

2

Datu krātuve

Lietojumi

Page 3: 2 Dbs Problemas Tendences

Informācijas sistēmas pamatelementi

Informācijas sistēma

1999 Oracle8i - terabaiti (1024 gigabaiti)

2001 Oracle9i 500 petabaiti (1024 terabaiti).

2005 Oracle 10g eksabaiti (1024 petabaiti).

3

Lietojum-programmas Datu vadība DatiSakaru

vide

?

Page 4: 2 Dbs Problemas Tendences

Datu loģiskā neatkarība

a) lietojums ir atkarīgs no datu struktūras izmaiņām

Ieraksts

Bloks

b) datu loģiskā neatkarība (lietojuma neatkarība no datu struktūras izmaiņām)

Bloks Ieraksts

Lauks

4

Datu glabāšana

Operētājsistēma

Failu vadībassistēma

Lietojums

Lietojums

Lietojums

fails

Datu glabāšana

Operētāj-sistēma

Failu vadībassistēma

Lietojums

Lietojums

Lietojums

fails !

Page 5: 2 Dbs Problemas Tendences

Datu koplietošanas problēma (pretrunu rašanās)

Kopīgie dati Pretrunas!

t Izmaiņas A faila datos Izmaiņas B faila datos

5

Datu krātuve

A fails B fails

A lietojums

B lietojums

Page 6: 2 Dbs Problemas Tendences

Datu bāzes sistēma (DBS)

Datu bāze + Datu bāzes vadības sistēma = DBS

Bloks Ieraksts

Lauks

Datu bāzes sistēma

6

Datu bāze Operētāj-sistēma

Failu vadībassistēma

Lietojums

Lietojums

Lietojums

Datu bāzes

vadības sistēma

Page 7: 2 Dbs Problemas Tendences

Datu bāzes eksistējošās definīcijas

Collins world English Dictionary Database  is systematized collection of data that can be accessed immediately and manipulated by a data-processing system for a specific purpose.

The American Heritage Science Dictionary Database is a collection of data arranged for ease and speed of search and retrieval by a computer.

Informātikas vārdnīca. Avots Savstarpēji saistītu informacionālu objektu tematisks kopums, kas ar speciālas pārvaldības sistēmas starpniecību organizēts tā, lai nodrošinātu ērtu informācijas izguvi, izdarītu tās atlasi un kārtošanu.

Datu bāze (angliski: “data base” un “data-base” 70-to gadu sākumā, database – vēlāk)

ir ārējā atmiņā noteiktā struktūrā organizēti dati un meta dati, kas nodrošina, ka

datu bāzes vadības sistēma var realizēt datu bāzes tehnoloģijai izvirzītās datu

glabāšanas un apstrādes prasības.

7

Page 8: 2 Dbs Problemas Tendences

Datu bāzes tehnoloģijas vadošie izstrādātāji un

popularizētāji

1. J. Martin – viens no pirmajiem datu bāzes koncepcijas sistematizētājiem.

2. E. F. Codd - relāciju datu bāzes koncepcijas autors (1970.g.).

4. C. J. Date – relāciju datu bāzes teorētiķis un popularizētājs (1975. g. – pirmā grāmata par relāciju datu bāzēm).

5. Peter Cheng – relāciju datu bāzes konceptuālās projektēšanas pamatprincipu autors (ER (Entity Relationship) diagrammas autors).

8

Page 9: 2 Dbs Problemas Tendences

Datu bāzes modeļi (trīs līmeņu diagramma)

Lietotājs (IS pasūtītājs),

sistēmanalītiķis

Transformācija

DB projektētājs

Transformācija

DB projektētājs,

DB adminstrators

Realizēšana

9

Datu konceptuālais modelis (pilnīga neatkarība no DB realizācijas)

Datu bāzes loģiskais modelis (izvēlēts datu bāzes vadības sistēmas tips)

Datu bāzes fiziskais modelis (izvēlēta konkrēta datu bāzes vadības sistēma)

Datu bāze

Page 10: 2 Dbs Problemas Tendences

Atmiņas iekārtas datu glabāšanai

1. Kešatmiņa (pirmā (kopā ar mikroprocesoru) un otrā līmeņa).

2. Operatīvā atmiņa (main memory).

3. Virtuālā atmiņa (operatīvā atmiņa + ārējā atmiņa).

4. Pirmā līmeņa ārējās atmiņas iekārtas (secondary storage devices) (diski).

5.Otrā līmeņa ārējās atmiņas iekārtas (tertiary storage devices) (optiskās datu krātuves).

Jaunais AIX P690 serveris ar 128 procesoriem un n terabaitu operatīvo atmiņu

10

Datu bāze

Operētāj-sistēma

Failu vadībassistēma

Page 11: 2 Dbs Problemas Tendences

Atmiņas vienības datu glabāšanai

1. Faili

2. Bloki

3. Raksti:

- ar mainīga garuma laukiem;

- ar daudzvērtīgiem laukiem;

- ar mainīgu formātu;

- liela atmiņas apjoma raksti "lielo" objektu (LOB) glabāšanai

4. Lauki

11

Fails1. bloks 2. bloks

rakstslauks

Datora aparatūra ar elementu izstrādātājfirmu programmu nodrošinājumu (firmware)

Operētājsistēma ar failu vadības sistēmu

Lieli lietojumi ar iekļautām failu vadības sistēmas funkcijām

1. bloksDienesta informācijaBrīva atmiņaDati

Page 12: 2 Dbs Problemas Tendences

Paralēlās darbības datu bāzes sistēmas

1. Procesoru "paralēlismi".

2. Operatīvās atmiņas un ārējās atmiņas "paralēlismi".

3. Algoritmu "paralēlismi".

4. Datu izgūšanas "paralēlismi".

12

Page 13: 2 Dbs Problemas Tendences

Universālās un specializētās datu bāzes sistēmas

Universālās datu bāzes sistēmas

1. Relāciju datu bāzes sistēmas.

2. Objektu datu bāzes sistēmas.

3. Relāciju-objektu datu bāzes sistēmas (object-relational database systems).

Specializētās datu bāzes sistēmas

1. Grafisko datu DB sistēmas.

2. Daudzdimensiju datu DB sistēmas (datu noliktavas).

3. Temporālālo (laika, laika vēstures) datu DB sistēmas.

4. Aktīvās DB sistēmas (aktīvo likumu datu bāzes sistēmas).

5. Deduktīvās DB sistēmas (likumu un izvedumu datu bāzes sistēmas).

6. Vāji strukturizēto datu DB sistēmas (XML datu bāzes sistēmas).

13

Page 14: 2 Dbs Problemas Tendences

Specializēto datu bāzes sistēmu veidošana

1. Jaunu datu tipu izmantošana datu bāzes sistēmās (piemēram, PosgreSQL).

2. Jaunu SQL funkciju izmantošana (piemēram, Oracle Analytical function (OVER tipa vaicājumi), datu noliktavas realizēšanas vaicājumi (GROUP by CUBE, Grouping), hierarhiskie vaicājumi).

3. Datu bāzes sistēmas paplašinājuma veidošana izmantojot papildus programmu paketes: - IT firmu produktu izmantošana (piemēram, Oracle Spatial); - programmu pakešu izstrāde izmantojot datu bāzes servera programmēšanas valodas (piemēram, PLSQL un Java (Oracle DBVS).

4. Datu bāzes servera kodola paplašinājumu veidošana (piemēram, Oracle cartridges, DB2 data blades).

14

Page 15: 2 Dbs Problemas Tendences

Datu bāzes datu glabāšanas struktūras

1. Virknes failu struktūras

2. Tiešās pieejas failu struktūras

3. Kokveida datu struktūras (HDB)

4. Tīklveida datu struktūras (TDB)

5. Ierobežota tīkla datu struktūras (CODASYL)

6. Tabulveida datu struktūras (RDB)

7. Trīsdimensiju tabulu datu struktūras (Papl.RDB)

8. Objektu struktūras (ODB)

9. Relāciju-objektu struktūras (RODB)

10. Daudzdimensiju struktūras (DN, DV)

11. Daļēji strukturēto datu struktūras

15

Page 16: 2 Dbs Problemas Tendences

Indeksu struktūras

1. Primārais indekss.

2. Sekundārais indekss.

3. Blīvais indekss (dense index).

4. Neblīvais indekss (sparse index).

5. B-koka struktūras indeksi.

6. Daudzdimensiju indeksi:

- vairāku atslēgu indekss (multiple key index);

- kd koka struktūras indekss;

- R koka struktūras indekss;

- indekss ar bitu vērtību izmantošanu (bit-map index).

7. Heš-tabulas (hash table) izmantošana.

8. Tīklveida faila (grid file) izmantošana.

16

Page 17: 2 Dbs Problemas Tendences

Datu pieprasījumu izpildes fiziskā līmeņa algoritmi

Pamatalgoritmi

1. Datu šķirošana.

2. Datu pārskate (scanning).

3. Heš-adresācijas izmantošana.

4. Indeksu izveidošana.

Tipiskie datu apstrādes algoritmi

1. Viengājiena algoritmi (one-pass algorithms) unārām un binārām operācijām.

2. Datu savienošana izmantojot iekļautos ciklus.

3. Divu gājienu algoritmi (two-pass algorithms) izmantojot šķirošanu.

4. Divu gājienu algoritmi (two-pass algorithms) izmantojot heš-adresāciju..

5. Daudzgājienu algoritmi (multipass algorithms).

6. Paralēlas darbības izmantošanas algoritmi.

17

Page 18: 2 Dbs Problemas Tendences

Datu bāzes sistēmas mūsdienu arhitektūra

Datu bāzes sistēma

Datu bāze Datu bāzes vadības sistēma

paplaš. SQL

SQL, OSQL

SQL valodas paplašinājumi (PL/SQL, Transact SQL un citas)Java, C# un citas

18

DB “intelektuālaie” paplašinājumi

Metadati:relāciju, objektu, relāciju-objektu datu glabāšanas struktūru definējumi un datu glabāšanas metadati

Dati

Programmas: procedūras, funkcijas, metodes, trigeri, DB kodola paplašinājumi

DBVS notikumi

DB notikumi DB

adminstrēšana un pieprasījumu apstrāde

Page 19: 2 Dbs Problemas Tendences

Nozīmīgākās datu bāzes vadības sistēmas

Transakciju vadības sistēmas (OnLine Transaction Processing, OLTP):

1. Oracle

2. IBM DB2/mainframe is a fine product, but only if you like IBM mainframes.

3. IBM DB2/open systems

4. Microsoft SQL Server

5. Sybase Adaptive Server Enterprise

6. Progress

7. Intersystems’ Cache’

8. MySQL

9. Ingres

10. PostgreSQL

19

Page 20: 2 Dbs Problemas Tendences

Datu noliktavas (datawarehouse) un datu vitrīnas (data marts)

1. 1991 — Bill Inmon Building the Data Warehouse.

2. 1995 — The Data Warehousing Institute

3. 1996 — Ralph Kimball The Data Warehouse Toolkit.

Populārākās izstrādes

1. SAS

2. Sybase Adaptive Server Enterprise

3. Oracle

4. IBM DB2/open systems

5. Microsoft SQL Server

20

Page 21: 2 Dbs Problemas Tendences

Sybase IQ Server. Rakstu glabāšana pa kolonām

1. Datu izgūšanas kolonas

2. Datu glabāšana binārā formā

21

Page 22: 2 Dbs Problemas Tendences

XML datu bāzes sistēmas

Izgūšanas valodas:1. XSQL tipa.2. XPath tipa.

22

Page 23: 2 Dbs Problemas Tendences

23

Page 24: 2 Dbs Problemas Tendences

24

Page 25: 2 Dbs Problemas Tendences

Aktīvā datu bāzes sistēma

1. Aktīvais likums

2. Aktīvās datu bāzes sistēmas elementi

25

Aktīvā datu bāzes sistēma

Kom

and

u iz

pil

des

p

iep

rasī

jum

uu

ztvē

rējs

Ārējais notikums

DB dminstratora lietojumu komandas

Gala lietotāju (end user) lietojumu

komandas

Notikumudetektors

Notikumubāze

Aktīvo likumu izpildes sistēma

Likumu izpildes vēsture

DBS darbību izpildes sistēma

Aktīvo likumu zināšanu bāze

1. aktīvai likums

2. aktīvai likums

Notikumi

Notikuma identificēšana

Izpildes nosacījuma pārbaude

Darbību izpilde

DB DB

DB

Page 26: 2 Dbs Problemas Tendences

Deduktīvā datu bāzes sistēma

Loģiskās programmēšanas valodas:

1. Prolog2. Lisp3. Datalog

Faktu un likumu glabāšana:

1. Datu bāze

26

Fakti

Likumi

Izveduma mehānisms

Jauni fakti

Page 27: 2 Dbs Problemas Tendences

Loģiskās programmēšanas valodas un DBS kopdarbība

1. Sasaiste – divu autonomu sistēmu interfeisa izveide, lai apmainītos ar datiem (datu bāze loģiskās programmēšanas valodas izpildes vides operatīvā atmiņa). Ābu autonomo sistēmu apvienojums tiek saukts par CPR sistēmām (Coupling Prolog to Relational databases).

a) vājā sasaiste (statiskā sasaiste)– datu apmaiņa notiek neatkarīgi no izveduma realizēšanas procesa, vienā datu apmaiņas procesā tiek izgūti visi nepieciešamie fakti;

b) ciešā sasaiste (dināmiskā sasaiste) - datu apmaiņa notiek izveduma realizēšanas procesā, kad jāiegūst kārtējie konkrētie fakti.

2. Integrācija – jaunas vienotas sistēmas izveide, loģiskās programmēšanas valodas iekļaušana datu bāzes servera programmēšanas valodu kopā.

27

Loģiskās programmēšanas

valodaDatu bāzes sistēma

Loģiskās programmēšanas

valodaDatu bāzes sistēma

Page 28: 2 Dbs Problemas Tendences

Faziloģikas datubāzes (Fuzzy Databases)

1. Piederības funkcija

piederība auksts remdens karsts

temperatūra

2. Faziloģikas datu bāzes sistēmas arhitektūra

Faziloģikas SQL paplašinājums

28

1

0

Translators

Faziloģikas datu bāzes sistēmas paplašinājums

DBVS Datu bāze

Page 29: 2 Dbs Problemas Tendences

NoSQL datu bāzes sistēmas (modern web-scale databases, 2009)

Nālošās paaudzes datu bāzes sistēma:

1) ne relāciju;

2) izkliedētiem datiem;

3) atvērtā koda;

4 ) horizontāla mērogojamība (horizontal scalable, scale out), var viegli pieslēgt

citas sistēmas;

5) bez shēmas (plašas datu struktūru iespējas arī nestrukturētu datu

izmantošana);

6) liels datu apjoms.

29

Page 30: 2 Dbs Problemas Tendences

NoSQL datu bāzes sistēmu realizācijas

1. Lielu kolonu glabāšana (Wide Column Store)Hadoop / HBase, Cassandra, Hypertable,  Cloudera, SciDB.

2. Dokumentu glabāšana (Document Store)C ouchDB , MongoDB, Terrastore, ThruDB, OrientDB, RavenDB.

3. Atslēgas un vērtības tipa "deģenerēta" datu bāzes sistēma (Key Value/Tuple Store)Amazon SimpleDB, Azure Table Storage,   Riak, Chordless, Redis,  Scalaris,   Tokyo Cabinet / Tyrant, MEMBASE, Keyspace.

4. Konsekventas atslēgas vērtību datu bāzes (Eventually Consistent Key Value Store)Amazon Dynamo, Voldemort, Dynomite,  KAI.

5. Grafu datu bāzes (Graph Databases)Neo4J,   Sones, InfoGrid, HyperGraphDB, AllegroGraph, Bigdata, DEX, Infinite Graph, OpenLink Virtuoso (Hybrid DBMS covering the following models: Relational, Document, Graph), VertexDB.

6. Režģa datubāzes (Grid Database Solutions), kopējs režgis izkliedētām DBSGigaSpaces, Hazelcast, Mark Logic Server, EMC Documentum xDBTamino, eXist, Sedna, Xindice, Qizx, Berkeley DB XML.

7. Daudzvērtību datu bāzes (Multivalue Databases)U2 (UniVerse, UniData).

30

Page 31: 2 Dbs Problemas Tendences

"Mākoņu" datu bāzes(Claud Databases)

Mākonis (cloud) - kāda iepriekš nenoteikta tīkla daļa, pa kuru dati tiek pārsūtīti, izmantojot, piem., kādu no protokolu saimes TCP/IP bezsavienojumu protokoliem. Tā kā mākoņi eksistē tāpēc, ka datu apmaiņa bezsavienojuma režīmā var notikt pa daudziem iespējamiem ceļiem, arī tīkls Internet no datu nosūtītāja un datu saņēmēja viedokļa var tikt uzskatīts par mākoni.

31

Page 32: 2 Dbs Problemas Tendences

Datu analīze datu bāzes serverī (In database analytics)

32

Page 33: 2 Dbs Problemas Tendences

Daudzbāzu sistēmas

1. Izkliedētas datu bāzes (distributed databases) sistēmas, sistēmu

heterogenitāte.

2. Multibāzes (multibases), globālā shēma, semantiskās vārdnīcas.

3. Replikāciju veidošana, koordinācija.

33

Page 34: 2 Dbs Problemas Tendences

Datu bāzes projektēšana34

Problēmvide:1) dati;2) funkcijas.

Dati kā primārā informācija.

Datu konceptuālais modelis

Funkcijas kā primārā informācija.

Funkciju hierarhijas modelis

Datu bāzes projektēšana

Datu bāzes projektēšana

Lietojumu projektēšana

CASE tehnoloģija

IDE rīku (JDeveloper, NetBeans, Eclipse, ...) tehnoloģija

Page 35: 2 Dbs Problemas Tendences

Datu konceptuālie modeļi35

Datu konceptuālie modeļi orientēti uz relāciju datu bāzi:

1) ER diagramma;2) EER diagramma;3) OR diagramma;. . .

Datu konceptuālie modeļi orientēti uz objektu datu

bāzi:1) klašu diagramma;2) objektu diagramma;. . .

Relāciju datu bāze

Objektu datu bāze

Relāciju-objektu datu bāze

?