View
226
Download
4
Category
Preview:
DESCRIPTION
asdasd
Citation preview
Datu bāzes sistēmu tehnoloģiju problēmas, risinājumi un attīstības tendences
1
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
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
?
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 !
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Sybase IQ Server. Rakstu glabāšana pa kolonām
1. Datu izgūšanas kolonas
2. Datu glabāšana binārā formā
21
XML datu bāzes sistēmas
Izgūšanas valodas:1. XSQL tipa.2. XPath tipa.
22
23
24
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
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
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
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
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
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
"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
Datu analīze datu bāzes serverī (In database analytics)
32
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
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
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
?
Recommended