Upload
truongkhue
View
225
Download
6
Embed Size (px)
Citation preview
Datu apmaiņa sistēmās ar globālo sistēmu
Globālā sistēma sastāv no divām daļām : 1. vaicajumu apstrādāšanas daļa; 2. shēmu integrācijas daļa.
Shemu integrācijas daļa satur visu datu, kurus lokālās datu bāzes sistēmas ļauj izmantot citiem mezgliem, aprakstu. Šo globālo aprakstu sauc par globālo shēmu jeb integrācijas shēmu un to var izveidot piecos veidos:
1. shēmu apvienošana;2. replikācijas izmantosana;3. vertikālās fragmentācijas izmantošana;4. horizontālās fragmentācijas izmantošana;5. datu agregācija.
ServerisKlienti ServerisKlienti
DB1 DB2
Shēmu integrācijas daļaGlobālais datu apraksts
ApstrādeVaicājumu apstrādāšanas daļa
GLOBĀLĀ SISTĒMA
1. Globālais datu apraksts eksistē un ir centralizēts (atrodas noteiktā atsevišķā mezglā). Tā ir daudzbāzu sistēma ar globālo shēmu.
Klients
ServerisDB1
Klients
Serveris DB2
Globālais datu apraksts
Apstrāde
Globālā sistēma
2. Globālais datu apraksts ir, bet ražīguma palielināšanas dēļ tas ir sadalīts (katram mezglam ir datu apraksts, kas satur visu daudzbāzu sistēmas datus, izņemot šī mezgla datus, aprakstu). Tā ir daudzbāzu sistēma ar decentralizētu globālo sistēmu.
Klients
ServerisDB1
Klients
Serveris DB2
Datu apraksts 1
Datu apraksts 2
Apstrāde
Globālā sistēma
Klients
ServerisDB1
Klients
Serveris DB2
Apstrāde
Globālā sistēma
3. Globālā datu apraksta nav. Šajā gadījumā sastopam daudzbāzu sistēmu, kura ir realizēta ar pieejas valodas funkciju palīdzību (homogēnas/heterogēnas sistēmas ar vienādām pieejas valodām).
Daudzbāzu sistēma ar centralizētu globālu shēmu
Globālas sistemas apstrādes daļu veido sekojoši komponenti:1) sadalītu vaicājumu apstrāde. No lietotāja globāla sistema pieņem vaicājumu,
optimizātors sadala to apakšvaicājumos un pārsuta komadu translatoram, kurš “pārtulko” katru vaicājumu formātā, kuru “saprot” vajadzīga datu bāzes sistēma. Pēc tam noteiktas DBVS izpilda vaicājumus un datu caur datu translatoru, kurš sadarbojas ar integrācijas datu bāzi, tiek atdoti lietotājam.
2) tranzakcijas vadība – tranzakcijas vadība nodrošina divas darbības:a) atjaunošanas vadība – sadalītā sistēmā tranzakcijas izpilde sasāv
no dažu vaicājumu izpildi; šie vaicājumi ienes datu bāzē atjaunojumus, kuri var būt apstiprināti un saglābāsies, ja visi tie bija veiksmīgi ir pabeigti;
b) paralēlisma vadība, kuras pienakums ir vadīt paralēlu vaicājumu apstrādi dažādos sistēmas mezglos.
3) organizācijas DB servisi. Ja daudzbāzu sistēma glābā datus netikai datu bāzēs, bet arī kādos failos, tad globālā sistēma atbalsta servisu, kas ļauj darboties ar failu sistēmām
4) vārdnīcu un uzziņu dienesti, kuros glābās informācija par sistēmas lietotājiem, datu apraksti un cita daudzbāzu sistēmai nepieciešama informācija
Vienkāršota globālā vaicājuma apstrādes shēma
Lietotāja saskarne Vaicājumu optimizātors
Komandu translators
. . .
DBVS 1
DB1
DBVS 2
DB2
. . .
Datu translators
Integrācijas datu bāze
vaicājums
dati
dati
komanda
pārtulkotsapakšvaicājums
apakšvaicājums
pārtulkotsapakšvaicājums
pārtulkotsapakšvaicājums
apakšvaicājums
dati
dati
dati
vaicājums
vaicājums likumi
datidati komanda
Transformējošais procesors
A shēma
B shēma
Transformējošs procesors
Komandu translators
Datu konvertors
Filtrējošais procesors
A shēma
A shēmas apakškopa
Filtrējošs procesors
Komandu filtrs
Datu filtrs
Konstruējošs procesors
A shēma
B shēma
Filtrējošs procesors
Komandu sadalītājs
Datu apvienotājs
C shēma
Izplatīšanas shēma
Piekļūšanas procesors
Komandas
Piekļūšanas procesors
Dati
Datu bāze
Sistēma MERMAID
MERMAID ir daudzbāzu sistēma, kurā mijiedarbībai starp mezgliem kalpo globālā shēma.
DBVS draivers
Distributors
Lietotāja saskarne
Translators SQL (ARIEL) DIL
Kontrolieris
Lietotājs
Kontrolieris Optimizators
Kontrolieris
Translators DIL lokāla pieejas valoda
Vārdnīca
DBVS draivers
Kontrolieris
Translators DIL lokāla pieejas valoda
Datu bāze
GLOBĀLĀ Shēma
Saskarnes kods
DBVS apakšprogramma
Klasa I DBVS
Saskarnes kods
Speciāla saskarne
Klasa II DBVS
Termināla saskarne
Klasa III DBVS
Objektu meklēšanas process
DB DB DB Faili
Sistēmas MERMAID arhitektūra
MERMAID Optimizātors un
Kontrollers
Datu vārdnīcas saskarne
DUMB Terminal lietatāja saskarne
SunWindows lietotāja saskarne
Lietotājs Lietotājs
Tīkla saskarne
Datu vārdnīca UNIX darba
stacijas lietotāju saskarne
X-windows termināla lietotāja saskarne
LietotājsLietotājs
MERMAID SERVERIS
LAN
Daudzbāzu sistēmas ar vienotu pieejas valodu
1989.gadā W.Litwin un viņa kolēģi izstrādāja MSQL valodu, kura ir SQL valodas paplašinājums. MSQL valoda satur visas SQL funkcijas un vēl papildinājumus, kuri nodrošina valodas iespējas mijiedarboties ar sadalītu datu bāzi.Daži no šiem paplašinājumiem ir sekojoši:
1) ar vienas MSQL valodas komandu var izveidot tabulas un izmainīt tās saturu jebkurā datu bāzu sistēmu kopā;
2) sadalītu datu atjaunošana un modifikācija notiek dažādās datu bāzes kopās ar dažādu datu bāzu skaitu;
3) var dinamiski apvienot datus no dažiem avotiem;4) ir iespēja izveidot skatus un uz to pamata virtuālu datu bāzi;5) ir iespēja izveidot palīgobjektus, tādus kā triggeri priekš vaicājumiem un
procedūrām.Valoda MSQL var arī būt par “sadarbības” valodu starp Prolog datu bāzēm. Tāda sistēma ir VIP-MDBS. Speciāli šai sistēmai bija izstrādātas MSQL valodas papildfunkcijas, ar kuras palīdzību sistēma var pārvarēt Prolog datu bāzu un relāciju datu bāzu nesaskaņotību.Tātad daudzbāzu sistēmās, lai piekļūtu datiem var izmantot pieejas valodas funkciju paplašinājumus – speciālu sadalītas datu bāzes pieejas valodas realizāciju. Šis variants tika izstrādāts, lai novērstu trūkumus, kuri bija raksturīgi sistēmām ar globālo shēmu.
Daudzbāzu sistēma MRDSM ar vienotu pieejas valodu
Sistēma MRDSM ir tāda daudzbāzu sistēma, kurā atsevišķo datu bāzu integrācija ir realizēta ar vaicājumu valodu MRDS. Šajā sistēmā nav globālā datu apraksta (globālas shēmas). Globālā sistēma sastāv tikai no vaicājumu apstrādes mehānismiem.
Visa apstrāde notiek MULTIPLE QUERY DECOMPOSER. Vaicājums no lietotāja caur LIETOTĀJA SASKARNI nonak mezglā MULTIPLE QUERY DECOMPOSER, kurš sastādā izpildes plānu. Šis izpildes plāns sastāv no vaicājumiem datu bāzēm un komandām. Pēc tam ELEMENTARY MULTIDATABASE QUERY DECOMPOSER atdala vaicājumus no komandām, izdzēš tās operācijas, kuras nevar izpildīt datu bāzes un pēc tam IZPILDES PLĀNA PROCESSORS atsūta vaicājumus vajadzīgajām datu bāzēm un saņem no datu bāzēm atbildes, kuras tiek uzkrātas WDB. WDB uzkrātos datus IZPILDES PLANA PROCESSORS apstrādā un atsūta LIETOTĀJAM kā rezultātus.
LIETOTĀJS
LIETOTĀJA SASKARNE
MULTIPLE QUERY DECOMPOSER
ELEMENTARY MULTIDATABASE QUERY DECOMPOSER
MULTIDATABASE QUERY DECOMPOSER
IZPILDES PLĀNA PROCESS ORS
DB1 DB2
WDB
Daudzbāzu sistēmu funkcijas
Daudzbāzu sistēma satur n centralizētas datu bāzu sistēmas. Pie daudzbāzu sistēmas funkcijām piedēr:
a) centralizeto sistēmu funkcijas:1) datu glabāšana, saņemšana un atjaunošana;2) kataloga, kas pieejams lietotājam, atbalsts (kataloga glābās datu
elementu apraksts);3) tranzakciju atbalsts;4) paralēlisma vadība;5) atjaunošanas servisi;6) pieejas pie datiem kontrole;7) datu apmaiņas atbalsts;8) instrumentu, kas kontrolē datu un to izmaiņas doto noteikumu
atbilstību, atbalsts;9) programmu no datiem neatkarības atbalsts;10) daži palīgdienesti (importēšana, monitorings, analīze un t.t.).
b) sadalītu sistēmu funkcijas:1) pieeja pie citiem mezgliem un apmaiņa ar datiem;2) kataloga, kas ļauj glābāt datu izvietojuma ziņas, atbalsts;3) sadalītu vaicājumu apstrāde;4) paplašinātas funkcijas paralēlisma vadībai;5) paplašinātas atjaunošanas iespējas.
Daudzbāzu sistēmas shēmu integrācijas problēmas
1. Shēmas attēlošanas pretrunība un konflikti.
2. Objektu līdzību un konfliktu atklāšana.
3. Semantisko zināšanu iegūšanas problēmas.
4. Semantiskās vārdnīcas izveidošanas problēmas.
5. Jēdzienu un to definējumu neskaidrība.
6. Integrācijas kvalitātes nodrošināšana.
1. Shēmas attēlošanas pretrunība
Atsevišķi jēdzieni lietojumsfērā var tikt attēloti izmantojot dažādas
izteiksmes. Starp šīm izteiksmēm var eksistēt dažāda veida attiecības:
1) izteiksmes ir identiskas (tiek izmantotas vienas un tās pašas
konstrukcijas un formulējumi);
2) izteiksmes ir ekvivalentas (tiek izmantotas ekvivalentas konstrukcijas,
tās atbilst vienām un tām pašām izteiksmēm);
3) izteiksmes ir savienojamas ( izteiksmes nav ekvivalentas, bet tās nav
pretrunīgas);
4) izteiksmes ir nesavienojamas (to specifikācijas nav savietojamas).
2. Shēmu konflikti
1. Semantiskie konflikti:
- sinonīmi – vienu jādzienu attēlo divi dažādi vārdi;
- homonīmi – divus dažādus jēdzienus attēlo viens un tas pats vārds;
- cikliska vispārināšana (X ir Y un Y ir Z);
2. Strukturālie konflikti (vieni un tie paši jēdzieni tiek attēloti izmantojot
atšķirīgas modelēšanas konstrukcijas):
- savienojamie konflikti – atšķirīgas konstrukcijas atbilst vienam un
tam pašam jēdzienam;
- nesavienojamie konflikti – viena jēdziena īpašības pretrunīgas otra
jēdziena īpašībām.
3. Objektu līdzību un konfliktu noteikšana
Objektu līdzību un konfliktu atklāšanas process sastāv no sekojošiem
soļiem:
1. izmantoto objektu semantiku identificēšana –objektu vārdi,
atribūti, jēga, saistītie objekti;
2. salīdzināmo objektu semantisko saišu noteikšana – nosaka, kādā
gadījumā divi objekti ir semantiski identiski, savienojami, saistīti
vai nesaistīti.
4. Semantisko zināšanu iegūšanas problēmas
Shēmas satur jēdzienus, kas simboliski attēloti ar vārdiem. Lai šīs
semantikas noskaidrotu ir sekojošas problēmas:
1. cilvēka uztvere ir nepilnīga un neprecīza;
2. reālās psaules jēdzienu attēlojums var būt daudzveidīgs un
pretrunīgs;
3. nosaukumi, kurus izmanto shēmās var būt daudznozīmīgi;
4. nosaukumu un shēmu interpretācija var būt nekorekta un
neveikla;
5. konceptuālā modeļa vienkāršība un uzskatāmība var radīt
semantisko zināšanu iekļaušanas problēmas modelī.
5. Semantiskās vārdnīcas konstruēšanas problēmas
Semantiskā vārdnīca tiek izmantota kā integrācijas vēstures dokuments, kurā
ir ierakstīti dažādie lietotāju apgalvojumi un spriedumi, kas palīdz
turpmākajās integrācijas aktivitātēs. Tādēļ semantiskajai vārdnīcai jābūt
aktīvai, jāattēlo visas izmaiņas un izmantoto likumu kopas.
Semantiskā vārdnīca, kas apraksta zināšanu bāzes integrāciju, satur trīs
struktūru tipus:
1) paplašināto sinonīmu vārdnīcu – fakti, kas definē divus vārdus, kuri
apzīmē vienus un tos pašus vai līdzīgus jēdzienus;
2) taksonomijas struktūra – fakti, kuri definē, ka divi vārdi vienā un tajā
paša vienumā attēlo divus jēdzienus ar vispārināšanas saitēm (is a);
3) likumu bāze – likumi, kuri ir shēmu integrācijas spriedumu pamats ( if
then).
6. Jēdzienu un to attēlošanas neskaidrība
1. Kvalitatīva semantisko līdzību analīze var dot tikai aptuvenu
salīdzināmo objektu iespējamo saišu atdalīsanu.
2. Kvantitatīvie semantisko līdzību mērījumi var uzlabot semantikas
identifikācijas precizitāti un shēmas integrācijas procesa automatizāciju.
7. Integrācijas kvalitāte
Integrējamajai shēmai jāpiemīt sekojošām īpašībām:
1) pabeigtība – lokālo shēmu jēdzieniem, saitēm starp jēdzieniem,
jēdzienu īpašībām un atkarībām jābūt pilnībā saskaņotām ar globālās
shēmas elementiem;
2) saprotamība – jānodrošina atbilstību vienkāršība un aprakstu
kodolīgums;
3) minimāls apjoms – jānovērš liekvārdība un dublēšanās.
8. Shēmu nesaderība
1. Shēmu strukturālās nesaderības:
- datu tipu nesaderība;
- atšķirīgi formāti;
- atšķirīgi bloki;
- sīkas īpatnības.
2. Shēmu semantiskās nesaderības:
- sinonīmi;
- homonīmi;
- kodu lokalizēšana;
- nepilnīga informācija;
- ierakstu kļūdas;
- aizvietotāji;
- asinhronas izmaiņas.
Iemesli, kāpēc nepieciešama vienota datu ieguve no heterogēnām DB [1]
1. Informācija ir jāizgūst no dažādiem datu avotiem, un dati šajos avotos tiek glabāti dažādos
veidos.
2. Datus var būt nepieciešams atspoguļot citādā veidā nekā tie ir glabāti (relāciju dati var
atspoguļot XML dokumentu veidā).
3. Dažāda veida datus var būt nepieciešams atspoguļot vienotā formātā (veikt gan shēmas, gan
datu transformāciju).
Semantiskie konflikti, kas rodas iegūstot datus no vairākiem heterogēniem datu avotiem [2]1. Vērtības – vērtības (value – to – value) konflikti. Šie konflikti rodas, kad datu bāzes (DB) izmanto
dažādus datu attēlošanas veidus vienādiem datiem. Šo konfliktu veidu var iedalīt vēl sīkāk:
a. Datu attēlošanas konflikti. Šie konflikti rodas, kad semantiski saistīto datu vienumi (data items)
tiek attēloti, izmantojot dažādus datu tipus.
b. Datu mērogošanas konflikti. Šie konflikti rodas, kad semantiski saistīto datu vienumi tiek
attēloti dažādās DB, izmantojot dažādas mērvienības.
c. Pretrunīgi (inconsistent) dati. Konflikti rodas, kad vienas realitātes (entity) semantiski saistītiem
atribūtiem, ir atšķirības noteiktās datu vērtībās dažādās DB.
2. Vērtības – atribūta (value – to – atribute) konflikti. Konflikti rodas, kad vienāda informācija ir kā
atribūta vērtība vienā DB un kā atribūta nosaukums citā DB.
3. Vērtības – tabulas (value – to – table) konflikti. Šie konflikti rodas, kad atribūtu vērtības vienā DB
ir izteikti kā tabulas nosaukumi citā DB.
4. Atribūta – atribūta (atribute – to – atribute) konflikti. Konflikti rodas, kad semantiski saistīti datu
vienumi ir nosaukti atšķirīgi vai semantiski nesaistīti datu vienumi ir nosaukti vienādi. Pirmais
gadījums tiek saukts arī par sinonīmiem, bet otrais par homonīmiem.
5. Atribūta – tabulas (atribute – to – table) konflikti. Šie konflikti rodas, kad tabulas atribūta
nosaukums vienā DB sakrīt ar tabulas nosaukumu citā DB.
6. Tabulas – tabulas (table – to – table) konflikti. Konflikti rodas, kad informācijas kopa semantiski
vienādās tabulās vienā DB ir atspoguļotas atšķirīgā tabulas skaitā nekā citā DB. Integrējot relācijas
šajos konfliktos globālās relācijas, parasti tiek ģenerētas NULL vērtības. Šādu parādību (fenomenu)
sauc par datu pazušanu. Šie konfliktu veidi tiek sīkāk sadalīti divās kategorijās:
a. Līdzīgu shēmas struktūru konflikti. Šī kategorija ietver vērtības – vērtības, atribūtu – atribūtu un
tabulas – tabulas konfliktus.
b. Dažādu shēmu konflikti. Kategorija ietver vērtības – atribūta, vērtības – tabulas un atribūta –
tabulas konfliktus.
. attēlā var aplūkot heterogēnās DB arhitektūru [2].
1. att. Heterogēnās sistēmas arhitektūra
Literatūras saraksts1. L. M. Haas R. J. Miller B. Niswonger M. Tork Roth P. M. Schwarz E. L. Wimmers Transforming Heterogeneous Data
with Database Middleware: Beyond Integration – 6 p.
2. V. Rajeswari, K. Varughese Heterogeneous Database Integration for Web Applications – 8 p.