temporālās (laika) datu bāzes lietošana · web viewsegments – visi reāli skaitļi vai...
TRANSCRIPT
Laiks
Laiks gādā, lai viss nenotiktu uzreiz. Džons Vīlers
Laiks ir nenoteikts nepārtraukts pastāvēšanas progress un notikumi, kas notiek šķietami neatgriezeniskā pēctecībā no pagātnes līdz nākotnei. Oksfordas vārdnīcas
Laiku var izstiept un sagrozīt. To iespaido matērija un enerģija. Alberts Einšteins
1
beigas (tB)sākums (ts)
Laiks datu bāzē
Diva veida saites starp datiem:1) semantikas saites. Sasaistīt var tikai to, kam kopā ir kaut kāda
jēga. Vieni dati papildina citus datus. 2) laika saites. Datu sasaistei ir būtiski, vai tie eksistē vienlaicīgi, vai
vieni dati veidojās pirms otriem datiem, vai svarīgs ir datu kopējās eksistēšanas laiks.
Semantiskā saite
Datu bāzes tabulas versijas, tabulas datu izmaiņas laikā
t
2
Laika periodu attiecības datu sasaistē
Tabula PROJEKTI
Periods P1
Tabula DARBINIEKI
P2 Periods P2 P1 t
NUM NOS D_NO D_LIDZ1 CC2 BB3 AA4 DD
ID UZV ALGA P_NUM D_NO D_LIDZ101 Koks 700 1102 Celm
s800 1
103 Zars 750 2104 Lapa 850 2
3
Piemērs. Avīzes pasūtījuma rēķina apmaksa
Mēneši
Avīzes abonēšana
Avīzes iznākšana
Avīzes cena
Avīzes cenas atlaides
1a 2a - 3a 3a 4a - 5a 5a 5aiz1 iz2 iz3 iz4 iz5 iz6 iz7 iz830 30 30 35 35 40 40 30 35 350 0 10 10 0 0 15 15 15 10
Abonēšana No Līdz1a2a3a4a5a
Iznākšana No Līdziz1iz2iz3
Cena No Līdz3035403035
Atlaide No Līdz01001510
4
Laika modeļi
Laika ass (laika vektors) t
Lieto trīs laika modeļus:
1) nepārtrauktais laika modelis (continuous time model). Laiks tiek
skatīts kā izomorfisks (formas ziņā līdzīgs) attiecībā pret reāliem
skaitļiem (racionāliem un irracionāliem). Katrs reāls skaitlis atbilst
laika “punktam” (momentam) laika asī.
2) ierobežota laika modelis (dense time model), kur laiks tiek skatīts
kā izomorfisks attiecībā pret racionāliem skaitļiem (var pierakstīt kā 2
skaitļu dalījumu);
3) diskrēta laika modelis (discrete time model), kur laiks tiek skatīts
kā izomorfisks attiecībā pret veseliem skaitļiem.
Laika modeļi Ierobežota laika modelis
Diskrēta laika modelis
Nepārtraukta laika modelis
5
Laika moments un laika periods
1. Visos trīs laika modeļos punkts tiek saukts par laika momentu
(instant).
2. Laiks starp diviem laika momentiem tiek saukts par laika periodu.
Tas tiek definēts ar diviem laika momentiem: ar laika momentu, kad
sākas periods un laika momentu, kad beidzas periods.Space of seconds, minutes, hours, days, weeks, months or years with an established beginning date and ending date. It's a unit of measurement used to categorize a length of time. Also called timeframe.1
3. Laika moments ir īpašs laika perioda paveids, kuram laika
moments, kad sākas periods, sakrīt ar laika momentu, kad beidzas
periods.
Laika moments = Periods(LS, LB), kur LS = LB
1 http://www.businessdictionary.com/definition/time-period.html
Laika ass (vektors)
Laika moments L1 Laika moments L2
Periods [L1, L2]
6
Laika segments un laika iezīme
Analizējamā laika segments ir ierobežots no abām pusēm.
Segments – visi reāli skaitļi vai punkti, kas atrodas starp diviem dotajiem skaitļiem vai punktiem, tos ieskaitot.
Laiks tiek glabāts fiksētās datu struktūrās sauktās par laika iezīmi
(timestamp). Ja laika vektors būtu neierobežots, tas padarītu šādu
glabāšanas shēmu par nederīgu, jo glabājot datorā laika iezīmei arī
būtu nepieciešams neierobežots atmiņas apgabals (lielums).
Laika vektors jeb laika ass
Pasaules radīšana Pasaules gals
Laika sākums Laika beigas
7
Laika granula
1. Laika segments var būt iedalīts ierobežota skaita mazākos diskrētos
laika segmentos, kurus sauc par granulām.
2. Laika sadalīšana tiek saukta par mērogošanu (scaling). Laika
mērogošana ir dinamiska un tiek piemērota katra vaicājuma
vajadzībām. Piemēram, laika skala var būt sadalīta dienas garuma
granulās vai arī to pašu laika skalu var sadalīt mēnešu vai gadu
garuma granulās.
Laika vektors jeb laika ass
Laika dalīšana dienās
Laika intervāls 1 diena
Laika vektors jeb laika ass
Laika dalīšana mēnešu granulās
Laika intervāls 1 mēnesis
8
Hronons (vismazākā laika granula)
1. Vismazāko laika vienību, kura tiks atbalstīta, sauc par hrononu ( chronon).
2. Ck liel hronons tiks izvēlēts (nanosekunde, stunda, diena, gads, ...), nosaka informācijas sistēmas projektētāja, analizējot lietotāju potenciālos jautājumus.
Laika vektors jeb laika ass
Laika dalīšana vismazākajās granulās - hrononos
Vismazākais laika intervāls 1 hronons
9
Laika momenta modelēšana1. Hronons ir segments uz laika ass, bet laika moments (brīdis, acumirklis) ir
kāds punkts laika asī. Kāda ir attiecība starp hrononu un laika momentu?
2. Varētu pieņemt, ka hrononi un momenti ir vienāda izmēra.
Varētu pieņemt, ka hrononi ir daudz lielāki par mometiem, tas ir, ka katrs
hronons sastāv no liela (iespējams neierobežota) skaita momentu.
3. Ja tiek pieņemts, ka hrononi un momenti ir vienādi, tad mums ir jālieto
diskrēta laika modelis.
4. Ja laika modelis būs ilgstoša laika vai ierobežota laika modelis, tad būtu
nepieciešams neierobežots skaits hrononu, jo jebkurā no šiem diviem modeļiem
ir neierobežots (bezgalīgs) momentu skaits starp jebkuru nenulles garuma laika
ass segmentu (laika periodu). Tas ir tā pat, kā starp jebkuriem diviem punktiem
ir bezgalīgi daudz punktu, vai arī starp diviem skaitļiem uz skaitļu ass ir
bezgalīgi daudz lielākas precizitātes citu skaitļu. Tā pat ir ar punktiem uz laika
ass.
5. Momenta laika iezīmi ierakstot, tiek noteikts, ka laiks atrodas kaut kur
hronona vai granulas laika ietvaros (dienā, gadā, mēnesī utt.). Tiek pieņemts, ka
laika momenta laika iezīme attiecas uz visu granulas perioda garumu.
Laika vektors jeb laika ass
Laiks 15.35
Laika granula - minūte
Laiks 15.36
10
Laika momenta modelēšana (turpinājums)6. Ja mēs pieņemam, ka laika brīdis atrodas kaut kur granulas perioda ietvaros, tad mēs tik pat labi varam pieņemt, ka tas vienmēr ir granulas pirmais laika brīdis, jo neviena laika iezīmes operācijas nelieto laika brīža atrašanās vietu granulā. 7. Laika operācijām nav svarīgi, kāds ir mūsu pieņēmums par laika brīža atrašanās vietu granulā. Tā kā nav nekādu praktisku atšķirību starp diviem pieņēmumiem, pieņēmums, ka laika brīdis attiecas uz granulas pirmo laika brīdi labāk modelē procesu, ar kura palīdzību mēs iegūstam temporālu informāciju.
.
8. Kopsavilkumā, laika brīdis tiek modelēts ar laika iezīmi kopā ar tai piekārtoto (asociēto) laika skalu (piem. Dienas, gada, mēneša, utt.). Laika brīdis, kas tiek modelēts ar laika iezīmi ir kāds laika brīdis granulas perioda garumā, kur granula tiek izvēlēta pēc laika brīdim piesaistītās laika skalas.
Laika vektors jeb laika ass
Laiks 15.35
Laika granula - minūte
Laiks 15.36
Tiek pieņemts, ka laika moments, kuru apzīmē laika iezīme granulas ietvaros, ir pirmais granulas laika moments
11
Perioda modelēšana
1. Perioda laika iezīmei ir piekārtota jeb piesaistīta (asociēta) laika
skala (piem. dienas, gada, mēneša, utt.).
2. Perioda laika iezīme sastāv no divām laika momenta laika iezīmēm
un viena ierobežojuma. Ierobežojums nosaka, ka laika brīža laika
iezīme, kas attiecas uz perioda sākumu ir vienāda vai lielāka (attiecas
uz vēlāku laika brīdi) par laika momenta laika iezīmi (dotajā laika
skalā) ar kuru beidzas periods.
4. Abi laika brīži ar kuru sākas un beidzas periods tiek uzdoti (jeb
attiecas) ar vienu un to pašu laika skalu (piem. dienas, gada, mēneša,
utt.).
Laika vektors
Laika moments L1 Laika moments L2
Periods (L1, L2) Ierobežojums: L1 > L2
12
Transakcijas laiks
Fakts tiek ierakstīts datubāzē
Laika dimensijas
Laikam var būt vairākas dimensijas:
1) reālais laiks (valid time) ir laiks, kad realitātē fakts ir patiess. Reālie
laiki var būt nākotnē, ja ir zināms, ka kāds fakts noteiktā laikā
nākotnē kļūs par patiesu.
2) transakcijas laiks ir laiks laiku, kad fakts kā glabājamie dati tiek
ievietots (ierakstīts) datu bāzē.
Fakts ir patiess modelētā realitātē
Reālais laiks
13
Laika dimensiju ortogonalitāte
1. Reālā laika un transakcijas laika dimensijas ir ortogonālas. Tās ir neatkarīgas viena no otras. Transakciju laikam nav tieša sakara ar reālo laiku.
2. Datu modelis, kurš neuztur nevienu no šiem modeļiem tiek saukts par momentuzņēmuma modeli (snapshot model). 3. Datu modelis, kas uztur tikai reālo laiku (valid time) tiek saukts par reālā laika modeli (valid-time). 4. Datu modelis, kas uztur tikai transakciju laiku (transaction time) tiek saukts par transakciju laika modeli (transaction-time). 5. Datu modeli, kas uztur abus laikus, tiek saukts par bitemporālu datu modeli. 6. Reālais laiks (valid time) var būt kā ierobežots, tā arī neierobežots. 7. Transakciju laiks vienmēr ir ierobežots abos laika ass galos. Parasti transakciju laiks sākas ar brīdi, kad tiek izveidota datu bāze.
Transakcijas laiks0 5 10 15 20 25 30
30
25
20
15
10
5
0
Reālais laiks
14
Atribūtu mainīgums1. Atribūtus var iedalīt pamatojoties uz to kā tie savstarpēji iedarbojas ar laiku:
1) laikā nemainīgs (time-inavariant) atribūts laika gaitā nemainās. Piemēram, tāds atribūts ir tabulas primārās atslēgas lauks (primary key). Katra atslēgas lauka vērtība identificē kādu konkrētu objektu (vai rindu) tabulā. Cita atslēgas lauka vērtība identificē arī citu objektu. Bet ne tikai tabulas primārās atslēgas lauki (primary key), bet arī citi tabulas lauki var būt laikā nemainīgi, piemēram, kādas personas dzimšanas dienas datums. Laikā nemainīgi parasti ir reālie laiki (valid times).
2) laikā mainīgie atribūti. Piemēram, darbinieka alga ir laikā mainīgs atribūts, jo laika gaitā alga var mainīties.
2. Atribūta vērtības var būt ņemtas no temporāla domēna. Šādi temporālie domēni tiek saukti par lietotāja definētu laiku.
Laikā mainīgs
Atribūts
Laikā nemainīgs
piemēram
Darbinieka alga
piemēram
Darbinieka numurs
15
Tiešas un netiešas laika iezīmes
1. Dažos datu modeļos laika un faktu asociācija ir netieša. Savukārt citos
modeļos, šī asociācija ir atspoguļota ar laika iezīmju tipa (timestamp) atribūtu.
2. Transakciju laika piesaiste faktiem tiek nodrošināta ar sistēmas palīdzību,
līdz ar to transakciju laika modernizācijas valodas aplūko temporālos fakta
aspektus netieši.
3. Pretstatā, faktu reālais laiks (valid time) parasti tiek nodrošināts ar lietotāja
palīdzību. Līdz ar to reālā laika datu manipulāciju valodas un bitemporālie datu
modeļi parasti laiku lieto tieši, un ir spiestas piedāvāt izvēli kā lietotājam
vajadzētu noteikt faktu reālā laika (valid time) vērtības.
16
Vērtību ekvivalence un ierakstu apvienošana1. Divi ieraksti tiek saukti pēc vērtībām ekvivalenti (vērtību
ekvivalenti), ja ignorējot speciālu laika iezīmes atribūtu, tie ir vienādi.
2. Relācijas instance ir apvienojoša, ja dublējošies vai secīgi vērtību
ekvivalenti ierakti nav atļauti. Šeit “dublējošs” un “secīgs” tiek
attiecināti uz ieraksta laika iezīmes tipa atribūta vērtībām, kurām ir
jānosaka viens vienīgs hronons vai secīgu hrononu kopa.
Vārds Uzvārds Amats Sākums BeigasJānis Lujāns Grāmatvedis 12-05-2000 28-05-2001
Emīlija Rozentāle Sekretārs 05-06-2002 05-06-2002Jānis Lujāns Grāmatvedis 28-05-2001 14-07-2002Juris Zariņš Šoferis 18-07-2002 18-07-2002
Vārds Uzvārds Amats Sākums BeigasJānis Lujāns Grāmatvedis 12-05-2000 14-07-2002Emīlija Rozentāle Sekretārs 05-06-2002 05-06-2002Juris Zariņš Šoferis 18-07-2002 18-07-2002
Pēc vērtībām vienādi ieraksti tiek apvienoti. Periodi arī tiek apvienoti.
17