Konspektai

Paskirstyta duomenų bazė

9.8   (2 atsiliepimai)
Paskirstyta duomenų bazė 1 puslapis
Paskirstyta duomenų bazė 2 puslapis
Paskirstyta duomenų bazė 3 puslapis
Paskirstyta duomenų bazė 4 puslapis
Paskirstyta duomenų bazė 5 puslapis
Paskirstyta duomenų bazė 6 puslapis
Paskirstyta duomenų bazė 7 puslapis
Paskirstyta duomenų bazė 8 puslapis
Paskirstyta duomenų bazė 9 puslapis
Paskirstyta duomenų bazė 10 puslapis
Paskirstyta duomenų bazė 11 puslapis
Paskirstyta duomenų bazė 12 puslapis
Paskirstyta duomenų bazė 13 puslapis
Paskirstyta duomenų bazė 14 puslapis
Paskirstyta duomenų bazė 15 puslapis
Paskirstyta duomenų bazė 16 puslapis
Paskirstyta duomenų bazė 17 puslapis
Paskirstyta duomenų bazė 18 puslapis
Paskirstyta duomenų bazė 19 puslapis
Paskirstyta duomenų bazė 20 puslapis
www.nemoku.lt
www.nemoku.lt
Aukščiau pateiktos peržiūros nuotraukos yra sumažintos kokybės. Norėdami matyti visą darbą, spustelkite peržiūrėti darbą.
Ištrauka

DBVS ir duomenų bazė Sistema, skirta lengvai organizuoti, saugoti ir gauti didelius duomenų kiekius, vadinama duomenų baze. Kitaip tariant, duomenų bazėje yra daugybė organizuotų duomenų (paprastai skaitmenine forma) vienam ar daugiau vartotojų. Duomenų bazės, dažnai sutrumpintos DB, skirstomos pagal jų turinį, pvz., Dokumento tekstą, bibliografinę ir statistinę. Tačiau DBVS (duomenų bazių valdymo sistema) iš tikrųjų yra visa sistema, naudojama skaitmeninėms duomenų bazėms valdyti, leidžianti saugoti duomenų bazės turinį, kurti / prižiūrėti duomenis, paiešką ir kitas funkcijas. Šiandieniniame pasaulyje pati duomenų bazė yra nenaudinga, jei nėra su ja susietos DBVS, kad būtų galima pasiekti jos duomenis. Tačiau vis dažniau terminas Duomenų bazė yra naudojamas kaip duomenų bazių valdymo sistemos trumpinys. Duomenų bazė Duomenų bazės architektūroje gali būti skirtingi abstrakcijos lygiai. Paprastai trys lygiai: išorinis, konceptualus ir vidinis sudaro duomenų bazės architektūrą. Išorinis lygis apibrėžia, kaip vartotojai žiūri duomenis. Vienoje duomenų bazėje gali būti keli rodiniai. Vidinis lygis apibrėžia, kaip duomenys yra fiziškai saugomi. Konceptualus lygmuo yra komunikacijos terpė tarp vidinio ir išorinio lygių. Tai suteikia unikalų duomenų bazės vaizdą, neatsižvelgiant į tai, kaip ji saugoma ar peržiūrima. Yra keletas duomenų bazių tipų, tokių kaip Analitinė duomenų bazė, Duomenų sandėliai ir Paskirstytos duomenų bazės. Duomenų bazės (teisingiau - reliacinės duomenų bazės) sudarytos iš lentelių, jose yra eilučių ir stulpelių, panašiai kaip „Excel“skaičiuoklėse. Kiekvienas stulpelis atitinka atributą, o kiekviena eilutė reiškia vieną įrašą. Pavyzdžiui, duomenų bazėjekurioje saugoma įmonės darbuotojų informacija, stulpeliuose gali būti nurodomas darbuotojo vardas, pavardė, darbuotojo ID ir atlyginimas, o vienoje eilutėje nurodomas vienas darbuotojas. DBVS DBVS, kartais tiesiog vadinama duomenų bazių tvarkytuvu, yra kompiuterinių programų rinkinys, skirtas visų sistemoje (ty standžiajame diske ar tinkle) įdiegtų duomenų bazių valdymui (ty organizavimui, saugojimui ir paieškai). Pasaulyje egzistuoja įvairių tipų duomenų bazių valdymo sistemos, o kai kurios iš jų yra skirtos tinkamam tikslams sukonfigūruotų duomenų bazių valdymui. Populiariausios komercinės duomenų bazių valdymo sistemos yra „Oracle“, DB2 ir „Microsoft Access“. Visi šie produktai suteikia skirtingo lygio privilegijų paskirstymo skirtingiems vartotojams būdus, todėl DBVS gali centralizuotai valdyti vienas administratorius arba paskirti keliems skirtingiems žmonėms. Bet kurioje duomenų bazių valdymo sistemoje yra keturi svarbūs elementai. Jie yra modelio kalba,duomenų struktūros, užklausos kalba ir operacijų mechanizmas. Modeliavimo kalba apibrėžia kiekvienos DBVS talpinamos duomenų bazės kalbą. Šiuo metu yra keli populiarūs metodai, tokie kaip hierarchinis, tinklinis, reliacinis ir objektinis. Duomenų struktūros padeda tvarkyti tokius duomenis kaip atskiri įrašai, failai, laukai ir jų apibrėžimai bei objektai, pvz., Vaizdinė laikmena. Duomenų užklausos kalba palaiko duomenų bazės saugumą stebėdama prisijungimo duomenis, prieigos teises prie skirtingų vartotojų ir protokolus, kaip pridėti duomenis į sistemą. SQL yra populiari užklausų kalba, naudojama reliacinių duomenų bazių valdymo sistemose. Galiausiai mechanizmas, leidžiantis atlikti operacijas, padeda sutapti ir dauginti. Šis mechanizmas užtikrins, kad to paties įrašo nekeis keli vartotojai tuo pačiu metu, taip išlaikant duomenų vientisumą.Be to, DBVS taip pat teikia atsargines kopijas ir kitas galimybes. Skirtumas tarp DBVS ir duomenų bazės Duomenų bazė yra sutvarkytų duomenų rinkinys, o duomenų bazių rinkinį valdanti sistema vadinama duomenų bazių valdymo sistema. Duomenų bazėje saugomi duomenų įrašai, laukai ir langeliai. DBVS yra įrankis, naudojamas manipuliuoti duomenų bazėje esančiais duomenimis. Tačiau duomenų bazės terminas duomenų bazių valdymo sistemoje vis dažniau vartojamas kaip stenografas. Kad būtų paprasčiau atskirti, apsvarstykite operacinę sistemą ir atskirus sistemoje saugomus failus. Kaip ir norint pasiekti ir keisti sistemos failus, jums reikalinga operacinė sistema, taip pat reikia DBVS, kad galėtumėte tvarkyti duomenų bazių sistemoje saugomas duomenų bazes. ////////////////////////////////////////////////////////////////////////////////////////////////////////////// Teorija apie duomenų bazių struktūrą, jos valdymo sistemą, duomenų bazių praktinį pritaikymą įvairiausiose veiklos sferose yra ganėtinai jauna žinių sritis – ji gyvuoja šiek tiek daugiau nei 30 metų, tačiau po pirmųjų eksperementalių duomenų bazių atsiradimo 1950-aisiais metais industrinis pasaulis suprato jų svarbą. Mokslo sritis apie duomenų bazes pradėjo sparčiai vystytis. Šiandien bbe duomenų bazių sunku įsivaizduoti šiuolaikinį informacijos technologijų pasaulį. Jos naudojamos komercijos, valdžios, karinėse ir daugelyje kitų veiklos sferų, nuo aukščiausių valdžios instancijų iki didmeninės ir mažmeninės prekybos parduotuvių. Informacinės sistemos, naudojančios duomenų bazes, leido atsikratyti tokių problemų, kaip duomenų pperteklius, silpna jų kontrolė, problematiškas priėjimas prie saugomos informacijos. Centralizuotose duomenų bazėse lengva realizuoti duomenų pakeitimus, sukurti ryšius tarp atskirų duomenų elementų. Duomenų bazių naudojimas organizacijai suteikė am tikrų privalumų: Visi duomenys surinkti vienoje integruotoje saugykloje, į kurią gali patogiai kreiptis įvairūs vartotojai; Išvengiama daugkartinio tų pačių duomenų įvedimo ir dubliavimo įvairiose programose; Didesnis saugumo laipsnis; Mažesnis perteklinių duomenų kiekis. Mano darbo tikslas – nustatyti duomenų bazių kūrimo technologijų ypatumus. Darbe bus išanalizuoti svarbiausi duomenų planavimo, projektavimo klausimai, duomenų bazių modeliavimo principai, duomenų bazių įdiegimo problematika. Taip pat dėmesys bus skirtas ir problemoms ir nesėkmėms, atsirandančioms kuriant ir naudojant duomenų bazes, o taip pat ir patarimai kaip efektyviausiai pašalinti kilusius keblumus. Duomenų bazės – tai nauja informacinių technologijų atšaka, sukurta einamiesiems duomenų saugojimo iir naudojimo uždaviniams spręsti. Kuriant vieningą duomenų bazę atsižvelgiama į organizacijos funkcinių sričių įvairovę, ji užtikrina vidinių ir išorinių ryšių palaikymą tarp įvairių funkcinės veiklos sričių. Šiuolaikinės organizacijos susiduria su žiauria konkurencija ne tik tarp savo šalies įmonių, bet ir tarptautiniu mastu. Todėl bet kurios organizacijoje naudojamos informacinės sistemos svarbiausias tikslas turėtų būti duomenų pavertimas informacija ir žiniomis, nes tik informacija ir žinios suteikia organizacijai konkurencinį pranašumą. Informacija ir žinios – tai organizacijos kompetencijos pagrindas, tai tie ištekliai, kurios organizacija nnaudoja gamindama aukštos kokybės prekes bei paslaugas ir kurių negali, arba beveik negali dubliuoti jokia kita konkurentinė organizacija. Kaupti duomenis ir iš jų gauti informaciją bei žinias stengiasi kiekviena organizacija. Būtent duomenų bazės leidžia sukaupti milžiniškus duomenų kiekius ir garantuoja lengvą priėjimą prie jų. Kaip sukurti duomenų bazę, kurią būtų galima sėkmingai įdiegti skirtingos paskirties organizacijose, kokios duomenų bazių projektavimo pasirinkimo galimybės, kaip pasirinkti tinkamus projektavimo etapus, šios ir kitos problemos, reikalaujančios gilesnio nagrinėjimo, bus analizuojamos mano darbe. 1. DUOMENŲ BAZĖS SAMPRATA 1. 1. Duomenų bazės sąvoka, pagrindinės funkcijos Duomenų baze galima vadinti kartu saugomų ir tarpusavyje susijusių duomenų visumą, kuriems apdoroti pasitelkiamos programos. Duomenų bazė – tai duomenų hierarchijos aukščiausias lygmuo. Tai specialių būdu organizuotas integruotų duomenų visuos saugojimas, kuris vartotojui užtikrina patogią sąveiką ir greitą bei lengvą prieigą prie sukauptų duomenų. Kitaip tariant, duomenų bazė – tai ne kas kita, kaip dideli kompiuterio atminties įrenginiuose saugomi logiškai tarpusavyje susietų duomenų masyvų rinkiniai, iš kurių lengvai ir greitai iškviečiami bei pateikiami norimu pavidalu valdomi duomenys, panaudojant programinę įrangą. Kai kalbama apie visumą duomenų bazę sudarančių ir kartu veikiančių elementų, ji suvokiama kaip automatizuota sistema, kurią sudaro duomenys, programinė ir techninė įranga, papildomos priemonės, tokios, kaip kalbos priemonės, programavimo, duomenų aprašymo, uužklausų priemonės, metodinės priemonės, pavyzdžiui, rekomendacijos ir instrukcijos apie duomenų bazės sukūrimą ir funkcionavimą, taipogi ir kiti personalo atstovai, kurių pagrindinė užduotis – duomenų bazės darbo kontrolė, ir visa užtikrina duomenų kaupimą, saugojimą, atnaujinimą, paiešką bei pateikimą vartotojui. Duomenų bazė – tai dinaminis objektas, kur saugomų duomenų reikšmės yra keičiamos, norint atspindėti realią tam tikros dalykinės srities padėtį. Duomenų bazė gali būti išdėstyta viename kompiuteryje, taip vadinama, vietinė duomenų bazė, arba paskirstyta keliuose, sujungtuose į tinklą kompiuteriuose – paskirstyta duomenų bazė. Vietinės duomenų bazės efektyviau išnaudojamos, kai dirba vienas ar keli vartotojai, kai jų veiksmus galima suderinti. Paskirstytų duomenų bazių paskirtis – pateikti lankstesnes, daugelio nutolusių ir išsimėčiusių geografiškai vartotojų aptarnavimo formas, kai dirbama su dideliais duomenų kiekiais. Paskirstytos duomenų bazės sistemos suteikia daugiau galimybių valdant sudėtingus objektus ar procesus, susidedančius iš daugelio grandžių, pavyzdžiui, organizacija, jungiančią tam tikrą filialų skaičių. Viena iš paskirstytų duomenų bazių valdymo priemonių – tai duomenų tiražavimas. Tai procesas, kurio metu pradinės duomenų bazės objektų pakeitimai perkeliami į pačią duomenų bazę, ar jos dalis, esančias skirtinguose paskirstytos sistemos mazguose. Paskirstytų sistemų darbo organizavimas numato vartotojo prieigos prie duomenų apribojimus, nes tokiose sistemose iškyla daugiau pavojų duomenų saugumui. 1. 2. Duomenų bazių valdymo sistemos, jų funkcijos Kai dduomenys saugomi kompiuterio atmintyje, veiksmus su jais galima atlikti tik naudojantis programine įranga. Programinė įranga, skirta darbui su duomenų baze ir pati duomenų bazė vadinama duomenų bazės sistema. Kai kalbama apie kompiuterines sistemas, duomenų bazės sistema suvokiama kaip sistema, kurią sudaro jos vartotojai, asmenys tiesiogiai naudojantys duomenų bazės teikiamomis paslaugomis, bei taikomosios programos, kurios atlieka operacijas su duomenų baze. Pagrindinė duomenų bazės programinės įrangos paskirtis – suteikti vartotojui galimybę naudotis duomenų baze, nesigilinant į technines detales, taip pat traktuoti duomenų bazę kaip aukštesnio lygio objektą nei įrašų failas [9, p. 7]. Tokia programinė įranga vadinama duomenų bazių valdymo sistema. Duomenų bazės valdymo sistema yra tarsi sąsaja tarp vartotojo ir duomenų bazės. Duomenų bazės valdymo sistema turi užtikrinti tikslų duomenų bazės veikimą, pašalinant atsiradusias kliūtis. Būna atvejų, kai duomenų bazėje atsiranda kelios duomenų kopijos, tai atsitinka nes kartais, norint panaudoti tuos pačius duomenis skirtingiems tikslams, prireikia juos dubliuoti. Šiuo atveju, toms kopijoms veltui eikvojama atmintis, prireikus modifikuoti duomenis, tenka kelis kartus naudoti tas pačias atnaujinimo proceso stadijas, o tai gali sukelti prieštaringos informacijos pateikimą. Todėl duomenų bazės valdymo sistema turi pasistengti atsikratyti atsiradusio duomenų dubliavimo, deja, dažniausiai visiškai užtikrinti duomenų nepertekliškumo tiesiog neįmanoma, šiuo atveju, duomenų perteklius yra minimizuojamas. Kita duomenų bazės valdymo sistemos užduotis – užtikrinti veiksmingą duomenų bazės naudojimą. Duomenų baze naudojasi didelis vartotojų skaičius, ne paslaptis, kad atvėrus duomenų failą redagavimui, operacinė sistema neleidžia kitiems vartotojams ne tik į jį rašyti, bet ir skaityti iš jo tol, kol rašymo operacija bus baigta ir failas bus uždarytas. Taigi, duomenų bazės valdymo sistemoje taikomas duomenų izoliavimo metodas – kai vienas duomenų bazės vartotojas keičia bet kurį joje saugomą įrašą, kiti vartotojai tuo pat metu gali peržvelgti ar kkeisti kitus įrašus. Duomenų bazė galės vadintis vientisa tik tuo atveju, jei ji atitiks tam tikras duomenų saugojimo sąlygas ir sugebės išlaikyti tas sąlygas atliekant įvairius pakeitimo veiksmus su duomenimis. Tik taip centralizuotai saugomi duomenys atitinka realaus pasaulio tam tikros – skirtos automatizuoti – dalies taikymo srities modelį [13, p. 3]. Duomenų vientisumas – duomenų tikslumo ir neprieštaravimo vienų kitiems problema. Duomenų bazės valdymo sistemos užduotis – garantuoti duomenų bazės integralumą atliekant pakeitimus joje. Tam, kad užtikrinti duomenų vientisumą, dažniausiai yyra naudojama slaptažodžių sistema bei duomenų dalijimas į atskiras dalis. Be to į duomenų žodynus įrašomos duomenų reikšmių sudėtis ir ribos. Duomenų bazės valdymo sistema privalo tikrinti, kad pakeitus duomenis duomenų bazėje nebūtų pažeistos nustatytos sąlygos, taip pat turi uždrausti iir įspėti vartotoją apie nesankcionuotą duomenų pakeitimą, kurį atlikus, nebus vykdoma kuri nors sąlyga. Kaip bebūtų, bet duomenų reikšmių sudėties apribojimas ir privalomi reikalavimai šiems duomenims yra silpnoji šiuolaikinių duomenų bazių valdymo sistemos dalis. Mes galime sugalvoti daug daugiau apribojimų negu juos gali realizuoti duomenų bazės valdymo sistemos. Todėl atsiranda būtinybė rašyti programas, kurios tikrintų, ar atitinka įvedami duomenys nustatytiems apribojimams. Rūpintis tokių programų rašymu turi būti pavesta duomenų bazės administratoriui. Ne mažiau svarbi duomenų bazės valdymo sistemos funkcija – duomenų nepriklausomumo užtikrinimas. Kitaip tariant, duomenų bazės valdymo sistema turi pasirūpinti tuo, kad taikomosios duomenų apdorojimo programos nesikeistų modifikuojant duomenų saugojimo i organizavimo būdą. Svarbu tai, kad įmanomas kiek fizinis, tiek ir loginis duomenų organizavimas. Šiuo atveju, fizinis duomenų organizavimas nnurodo skirtingus duomenų fizinio išdėstymo būdus kompiuterio atmintyje, o loginis – duomenų struktūros vaizdavimą, reikalingą vartotojams. Organizacijos turimų duomenų sujungimo į vieningą, visiems prieinamą sistemą idėja turi tiek savo pranašumų, tiek trūkumų. Akivaizdus bendras duomenų bazės naudojimo privalumas rizikingas neteisingu duomenų bazės panaudojimu bei duomenų pakeitimu ar sugadinimu iš neatsakingų ir neturinčių įgaliojimų naudotis duomenų baze vartotojų pusės. Duomenų bazės administratorius ruošia duomenų bazės valdymo sistemos kontrolės priemones ir procedūras, kurios galės užkirsti galimybes neteisingai naudotis duomenimis, o be tto, leis apibrėžti kiekvienam vartotojui ar jų grupei teises į duomenų vartojimą. Duomenų bazės valdymo sistema kontroliuoja priėjimo lygį bei fiksuoja duomenų panaudojimo arba papildymo statistiką. Duomenų bazės administratorius atsako už slaptažodžių bei nustatyto priėjimo lygio suteikimą. Tokiu būdu duomenų bazės administratorius sumažina galimybes ir riziką, kad viena vartotojų grupė gali sunaikinti kitos vartotojų grupės duomenis. Duomenų bazės valdymo sistema turi atlikti ir daug kitų svarbių funkcijų, tarp kurių gali išskirti tokias, kaip duomenų bazės struktūros aprašymas ir įdiegimas, duomenų bazės pildymas duomenimis ir redagavimas, navigacija duomenų bazėje, taikomųjų vartotojų programų ir ataskaitų kūrimas ir dar daugelį kitų, daugiau ar mažiau reikšmingų funkcijų. 2. DUOMENŲ BAZĖS PROJEKTAVIMAS 2. 1. Duomenų bazių modelių tipai Kaip vieną iš svarbiausių duomenų bazės valdymo sistemos funkcijų galima paminėti jos kaip savotiškos sąsajos tarp vartotojo ir duomenų bazės vaidmens atlikimas. Duomenų bazės valdymo sistema suteikia galimybę vartotojui kreiptis į duomenų bazę loginėmis sąvokomis, o ne fizinių veiksnių, tokių, kaip operacinė sistema ar bet kokia kita aparatūra, pagalba. Tų loginių sąvokų rinkinys sudaro duomenų bazės modelį. Duomenų modelis – tai ne kas kita kaip būdas struktūrizuoti duomenis. Svarbiausia loginio duomenų modelio paskirtis – sisteminti įvairiausių rūšių duomenis ir išryškinti jų savybes pagal tam tikrus požymius – ddažniausiai pagal turinį, struktūrą, apimtį, ryšius ir dinamiką, be to, dėmesys turi būti skiriamas ir į tai, kad būtų tenkinami įvairių kategorijų vartotojų informaciniai poreikiai. Loginis duomenų modelis kuriamas etapais, kol galiusiai pasirenkamas optimalus variantas, žinoma, atsižvelgiant ir į ribojančius veiksnius. Loginio duomenų modelio kūrimo proceso metu, pirmiausia išaiškinami tam tikros dalykinės srities objektai, procesai, kurie gali būti reikalingi duomenų bazės vartotojui. Pavyzdžiui, tokiais objektais gali būti investoriai, indėlininkai, tiekėjai, pirkėjai, prekės ir pan. Šiuo atveju, kiekvienam objektui atrenkamas jį apibūdinančių savybių, tokių kaip rekvizitas, atributas ar laukas, rinkinys, pavyzdžiui, indėlininkui – pavardė, vardas, asmens kodas, adresas, indėlio tipas, indėlio suma ir kt. Svarstant, kokie duomenys turėtų sudaryti duomenų bazę, reikia atsižvelgti ne tik į dalykinę sritį, aptarnaujamų problemų ratą, bet ir į darbo su tam tikrais duomenimis intensyvumą, duomenų dinamiką, koregavimo dažnumą, duomenų tarpusavio ryšius bei sąveiką su kitais veiksniais. Praktiškai ne visi vartotojai gali būti suinteresuoti visu duomenų modeliu, o tik tam tikra jo dalimi. Kuriant loginį duomenų modelį, pasirenkamas vienas iš trijų modeliavimo būdų: hierarchinis, tinklinis arba reliacinis. Hierarchinio modelio struktūra yra medžio tipo, ji išreiškia vertikalius hierarchijos ryšius, t. y. žemesnieji lygiai pavaldūs aukščiau esantiems. Tinklinis modelis sudėtingesnis ir skiriasi nuo hierarchinio tuo, kad turi ir hhorizontalius ryšius, kurie gali būti ir nevienareikšmiai. Duomenys čia pateikiami orientuotais grafais. Reliacinės ir tinklinės duomenų sistemos yra ikireliacinių sistemų pavyzdys. Nors iki šiol tinklinės ir reliacinės sistemos veiksmingai naudojamos specifiniams uždaviniams spręsti, juos baigia išstumti reliacinės sistemos. 2. 2. SQL kalba Sąsajai tarp vartotojo ir duomenų bazės sudaryti vartojama tam tikra formalioji kalba skirta užklausoms pateikti. Vienas pagrindinių užklausų kalbos dialektų, naudojamas daugelyje duomenų bazių, yra SQL. SQL – tai instrumentas, skirtas duomenų, esančių kompiuterinėje duomenų bazėje nuskaitymui ir apdorojimui. Kitaip tariant, SQL (Structured Query Language) – tai struktūrizuota užklausų kalba. SQL kalba buvo sukurta 1970 – ųjų metų pabaigoje IBM korporacijos tyrimų centre. SQL darbo schema pavaizduota 1 pav. 1 pav. SQL užklausų kalbos panaudojimas dirbant su duomenų baze [4]. SQL darbo esmė yra ta, kad vartotojas šios užklausų kalbos pagalba kreipiasi į duomenų bazės valdymo sistemą, kuri apdoroja užklausą, randa reikalingus duomenis ir galiausiai pateikia juos vartotojui. Kitaip ši procedūra vadinama duomenų bazės užklausa, iš čia ir kilęs ir pavadinimas – struktūrizuota užklausų kalba. Tačiau dabar SQL panaudojama ne tik užklausų sudarymui, taip pat ji naudojama visų funkcinių galimybių, kurias vartotojui suteikia duomenų bazės valdymo sistema, realizavimui, o būtent: Duomenų organizavimas, jo esmė yra ta, kad SQL suteikia vartotojui galimybę keisti duomenų pateikimo struktūrą ir nustatyti santykius tarp duomenų bazės elementų. Duomenų nuskaitymas. SQL suteikia vartotojui galimybę gauti duomenis esančius DB ir jais naudotis. Duomenų apdorojimas. SQL pagalba galima keisti duomenų bazės turinį, t.y. įvesti naujus duomenis, trinti nebereikalingus, atnaujinti senus. Priėjimo prie duomenų valdymas. SQL pagalba galima apsaugoti duomenis nuo nesankcionuoto vartojimo, apriboti vienų ar kitų vartotojų galimybes dirbant su duomenų baze. Kolektyvinis darbas su duomenų baze. SQL suteikia galimybę keliems vartotojams vienu metu naudotis ta pačia duomenų baze netrukdant vienas kitam. Duomenų bazės aapsauga. SQL padeda užtikrinti duomenų bazės vientisumą apsaugodama ją nuo sugriovimo dėl įvairių nesuderintų pakeitimų duomenų bazėje. Iš esmės SQL kalba vartojama reliacinėms operacijoms aprašyti. Šioje kalboje išskiriamos trys sakinių grupės: duomenų apibrėžimo sakiniai, kitaip dar vadinami duomenų apibrėžimo kalba DDL; duomenų apdorojimo sakiniai DML ir duomenų valdymo sakiniai DCL, taigi SQL = DDL+DML+DCL [9, p. 10]. Kaip bebūtu, reiktu pažymėti, kad SQL yra nepilnavertė kalba kaip pavyzdžiui COBOL, FORTRAN ar C++. Visų pirma, SQL neturi operatoriaus IF sąlygos patikrinimui; GGOTO – perėjimų ir nuorodų organizavimui; DO arba FOR – ciklų sudarymui. SQL yra taip vadinama duomenų bazės pokalbe, kuri turi apie 30 operatorių skirtų valdyti duomenų bazę. SQL operatoriai įsiterpia į bazinę kalbą ir suteikia vartotojams galimybę naudotis duomenų bbaze. Nežiūrint į ne visai tikslų apibrėžimą, šiuo metu SQL yra vienintelė standartinė kalba skirta dirbti su reliacinėmis duomenų bazėmis. Pačios SQL negalima pavadinti nei duomenų bazės valdymo sistema, nei atskiru programiniu produktu. SQL yra neatsiejama duomenų bazės valdymo sistemos dalis, tai tarsi instrumentas, kurio pagalba realizuojamas vartotojo ryšys su duomenų bazės valdymo sistema. Vienų žodžių, pagrindiniai SQL apibrėžimai būtų šie – SQL tai: Interaktyvi užklausų kalba; Duomenų bazių programavimo kalba; Duomenų bazių administravimo kalba; Priedų klientas/serveris sudarymo kalba; Paskirstytų duomenų bazių kalba; Duomenų bazių šliuzas. Tokiu būdu, SQL tapo galingu instrumentu manipuliuojant reliacinėse duomenų bazėse esančia informaciją. Be to, SQL gali būti apibūdinta kaip lengvai suprantama ir universali programinė duomenų valdymo priemonė. SQL kalba turi daugybe privalumų, tarp jų galima išskirti tai, kad SSQL nepriklauso nuo konkrečių duomenų bazės valdymo sistemų, ji yra standartizuota, gali būti perkelta iš vienų kompiuterinių sistemų į kitas, turi aukšto lygio struktūrą, suteikia galimybę dinamiškai keisti ir plėsti duomenų bazės struktūrą tuo pat metu naudojantis jos turiniu ir pan. Kaip jau buvo pažymėta anksčiau, SQL naudojama apie 30 operatorių. Kiekvienas jų “prašo” duomenų bazės valdymo sistemą atlikti tam tikrą užduotį, pavyzdžiui, sukurti lentelę, nuskaityti duomenis, įvesti į ją papildomų duomenų ir pan. Visi SQL operatoriai turi vienodą struktūrą. KKiekvienas SQL operatorius prasideda veiksmažodžiu, t.y. pagrindiniu žodžiu, kuris nusako atliekamą veiksmą (INSERT, DELETE, CREATE ir COMMIT). Po to eina vienas ar keli sakiniai, kurie nusako duomenis su kuriais dirba operatorius arba patikslina operatoriaus atliekamą veiksmą. Kiekvienas sakinys prasideda pagrindiniu žodžiu, pavyzdžiui, WHERE, FROM, INTO ir HAVING. Vieni sakiniai operatoriuje yra būtini, kiti – ne. Pabrėžtina, kad konkreti sakinio struktūra ir turinys gali keistis. Iš pagrindinių SQL operatorių galima išskirti šiuos: SELECT – nuskaito duomenis iš DB [4]. SELECT [ALL | DISTINCT] {Atrenkamų objektų sąrašas | * } INTO Bazinių – kintamųjų – sąrašas FROM Nuorodų – į – lenteles – sąrašas [WHERE Paieškos – sąlyga] INSERT – įterpia duomenis į DB [4]. INSERT INTO lentelės pavadinimas [stulpelių – sąrašas] VALUES   {(įterpiamų – elementų – sąrašas) | užklausos specifikacija} DELETE – trina duomenis iš DB [4]. DELETE FROM lentelė WHERE Paieškos – sąlyga UPDATE – atnaujina pasenusius DB duomenis [4]. UPDATE Lentelė SET Išraiškų – nuorodų – sąrašas WHERE Paieškos sąlyga Tarp kitų galima išskirti duomenų tvarkymo, priėjimo prie duomenų valdymo, transakcijų valdymo ir programinio SQL operatorius. 2. 3. Reliacinis duomenų bazės modelis Reliacinį, kitaip dar vadinamą sąryšinį, modelį 1970 metais pasiūlė E. F. Kodas (Codd). Visi iki to momento egzistavę priėjimai prie įrašų sujungimo iš skirtingų failų naudojo fizines rodykles arba aadresus diske. Pavyzdžiui, tarkime, kad vienoje iš tų senų sistemų mums prireikė sujungti įrašą A su įrašu B. Tam mums reikės prie įrašo A prijungti laukelį, kuriame bus patalpintas įrašo adresas diske. Tas pridėtinis laukelis, arba fizinė rodyklė, visada rodys iš įrašo A į įrašą B. Kodas gi įrodė teoriškai ir praktiškai, kad toks duomenų bazės tipas žymiai apriboja vartotojų galimybes manipuliuoti duomenimis. Be to, tokios duomenų bazės labai jautriai reaguoja į pakeitimus fizinėje aplinkoje. Kai į kompiuterinę sistemą buvo įdiegiamas naujas diskasukis arba buvo keičiami duomenų saugojimo adresai, papildomai buvo reikalinga pakeisti tam tikrus failus. Jeigu prie įrašo formato faile buvo prijungiami nauji laukai, tai buvo neišvengiamas visų failų įrašų fizinių adresų keitimas. Šiuo atveju, programuotojų ir vartotojų galimybės buvo smarkiai apribotos susiduriant su fizinėmis problemomis ir nebuvo galima atlikti tam tikras operacijas su duomenimis taip, kaip tai būtų leidusi loginė struktūra. Būtent reliacinis duomenų bazės modelis, paremtas duomenų loginiu ryšiu, sugebėjo įveikti šias problemas. Tai leido vartotojui visiškai nesirūpinti duomenų fizine struktūra. Reliacinio modelio ašį sudaro lentelė. Matematikoje lentelę atitinka santykis. Santykis, šiuo atveju, išreiškiamas lentele, kurioje duomenys pateikiami dvimačiu masyvu, sudarytu iš horizontalių eilučių ir vertikalių stulpelių. Toliau reliacinis modelis bus nagrinėjamas remiantis pateikta supaprastinta reliacine dduomenų baze „Statybinės firmos darbininkai“: Darbininkai Darb. Nr. Pavardė Specialybė Vad. Nr. 0258 Markus Tinkuotojas 0123 0359 Šnepkus Stalius 0521 0270 Čėrkus Dažytojas 0889 0691 Lesnickas Suvirintojas 1254 0562 Vėlavičius Santechnikas 5670 0458 Andrijauskas Mūrininkas 3679 Paskyrimas Darb. Nr. Pastato Nr. Darbo pr. Dienų sk. 0258 35 08. 30 14 0359 125 10. 25 5 0270 125 08. 00 7 0691 113 10. 30 5 0562 14 9. 25 20 0458 41 12. 00 14 0270 14 10. 00 14 0691 187 11. 30 10   Pastatas Pastato Nr. Tipas Adresas 35 Parduotuvė Pilies 4 125 Gyvenamasis Vydūno 7 187 Gyvenamasis Žirmūnų 36 113 Ofisas Gedimino 10 14 Kotedžas Fabijoniškių 1A 41 Sandėlys Upės 12C   Specialybė Tipas Užm. Per sav. Val. per sav. Tinkuotojas 125 Lt 35 Stalius 220 Lt 25 Dažytojas 100 Lt 22 Suvirintojas 200 Lt 20 Santechnikas 150 Lt 26 Mūrininkas 210 Lt 40 Šioje duomenų bazėje kiekvienas reliacijos stulpelis vadinamas reliacijos atributu. Atitinkamai, stulpelio pavadinimas atlieka atributo vardo funkciją. Toliau bus naudojami terminai atributas ir atributo vardas vietoj terminų stulpelis ir stulpelio pavadinimas. Mūsų pavyzdyje lentelės „Darbininkai“ atributų vardai yra šie: {Darb. Nr}, {Pavardė}, {Specialybė}, {Vad. Nr.}. Reikia pabrėžti, kad reliacijos atributų skaičius kitaip vadinamas reliacijos laipsniu. Taigi, lentelės „Darbininkai“ reliacijos laipsnis bus lygus keturiems. Kadangi duomenų bazės vartotojas nekreipia dėmesio į atributų eilės tvarką reliacijoje, tai ši tvarka laikoma neesminė. Iš to seka, kad bet kokia reliacijos atributų pora negali turėti vienodų vardų. Reliacijos eilutės vadinamos kortežais. Pabrėžiama, kad nėra nustatytos kortežų išdėstymo tvarkos, todėl jokie du kortežai negali turėti vienodų reikšmių rinkinių. Rinkinys visų galimų reikšmių, kurios gali būti priskirtos atributams, vadinamas atributo sritimi. Dvi atributų sritys gali sutapti tik tuo atveju, jeigu jos turi tas pačias reikšmes. Pavyzdžiui, atributai Pavardė ir Specialybė iš lentelės „Darbininkai“ turi skirtingas atributų sritis, nors kiekvieno jų reikšmės yra simbolių eilutės. Du atributai su ta pačia sritimi nebūtinai turi turėti vienodus vardus. Pavyzdžiui, atributai {Vad. Nr.} ir {Darb. Nr.} turi tą pačią sritį, į kurią įeina numeriai, kurie atlieka darbuotojų identifikacijos vaidmenį. Visų leistinų atributo reikšmių aibė reliacijoje vadinama domenu. TTuščioji reikšmė (žymima NULL) priskiriama atributui eilėje, kai ano reikšmė nežinoma arba neturi prasmės. Tarkime, kad kažkokiu konkrečiu atveju atributas yra nepanaudojamas. Pavyzdžiui, kai kurie darbininkai iš lentelės „Darbininkai“ neturi vadovų. Tokiu atveju, atributo {Vad. Nr.} reikšmė jiems neegzistuoja. Be to, kai mes įvedinėjame duomenis į reliacijos eilutę, mes galime ir nežinoti vienos ar net kelių tos eilutės atributų reikšmių. Abiem atvejais mes nieko neįvedinėjam ir eilutė į duomenų bazę įvedama su tuščiomis tų atributų reikšmėmis. Tuščia reikšmė – tai nne tarpas ir ne nulis, šiuo atveju atributas nepanaudojamas, arba reikšmė paprasčiausiai šiuo metu nežinoma, ir gali būti įvesta vėliau. Lentelės „Darbininkai“ eilutėje patalpinta visa reikalinga informacija apie konkretų darbininką. Mes teigsime, kad kiekvienas tarnautojas pateiktas viena ir tik viena llentelės „Darbininkai“ eilute. Tokiu atveju, jeigu kuris nors atributas vienareikšmiškai apibrėžia kiekvieną darbuotoją, mes galime teigti, kad tas pats atributas vienareikšmiškai nusako ir lentelės „Darbininkai“ eilutę. Atkreipdami dėmesį į tai, teigsime, kad atributas {Darb. Nr.} vienareikšmiškai nusako įmonės darbuotoją. Iš to seka teiginys, jog atributo reikšmė vienareikšmiškai nusako lentelės „Darbininkai“ kortežą, o tai reiškia, kad atributas {Darb. Nr.} yra lentelės „Darbininkai“ raktas. Atributų rinkinys, vienareikšmiškai apibrėžiantis bet kurią lentelės kortežą, vadinamas viršrakčiu arba superraktu. Viršraktis tampa lentelės raktu, jeigu jis praranda savo universalumą, pašalinus iš jo bent vieną atributą. Reliacijos raktas – tai minimalus atributų rinkinys, tai minimalus superraktas. Minimalumas suprantamas taip, kad nė vienas raktinių atributų aibės poaibis vienareikšmiškai neapibrėžia reliacijos kortežų. Pavyzdžiui, lentelėje „Darbininkai“ atributų rinkinio {Darb. Nr., PPavardė} reikšmės vienareikšmiškai nusako kiekvieną reliacijos kortežą – tai tos lentelės viršraktis. Tačiau šis atributų rinkinys nėra minimalus, taigi, jis nėra ir raktas. Šitame pavyzdyje atskirai paimtas atributas {Darb. Nr.}yra raktas, kadangi kiekvienas reliacinės lentelės kortežas vienareikšmiškai apibrėžiamas atributo {Darb. Nr.} reikšme. Reliacinėje lentelėje „Paskyrimas“ raktas susideda iš atributų {Darb. Nr.} ir {Pastato Nr.} poros. Atskirai nė vienas iš šių atributų vienareikšmiškai nenusako kiekvienos eilutės, tačiau kartu šie atributai duoda vienareikšmišką nusakymą, kurio ir reikalaujama iš rakto. Raktas vadinamas sudėtiniu rraktu jeigu jį sudaro du ar daugiau atributų. Kiekvienoje iš duotų reliacinių lentelių gali būti daugiau nei vienas atributų rinkinys, kurį galime laikyti raktu. Šie atributų rinkiniai vadinami potencialiais raktais. Pavyzdžiui, Atributas {Pavardė} gali būti potencialiu lentelės „Darbininkai“ raktu. Tokiu atveju mes teigsime, kad pavardės niekada nesikartoja. Jeigu pavardės galės kartotis, tai atributas {Pavardė} nėra potencialus raktas. Kai vienas iš potencialių raktų yra išrenkamas reliacijos raktu, jį galime pavadinti pirminiu raktu. Paprastai pirminiu raktu išrenkamas potencialus raktas, kuriuo lengviausia naudotis įvedinėjant duomenis. Anksčiau pateiktame reliacinės duomenų bazės pavyzdyje skirtingose lentelėse kartais naudojami tie patys atributų vardai, pavyzdžiui, atributas {Pastato Nr.} lentelėse „Pastatas“ ir „Paskyrimas“. Šiam atributui suteikiama išorinio rakto sąvoką. Vienos lentelės atributų rinkinys, kuris tampa raktas kitoje lentelėje, vadinamas išoriniu raktu. Taigi, šiuo atveju, atributas {Pastato Nr.}, kuris atlieka rakto vaidmenį lentelėje „Pastatas“, tuo pat metu yra ir lentelės „Paskyrimas“ išorinis raktas. Išoriniai raktai sudaro svarbius ryšius tarp lentelių. Jų dėka, vienos lentelės duomenis surišami su kitos lentelės duomenimis. Išorinio rakto atributai nebūtinai turi turėti tuos pačius vardus kaip ir rakto atributai, kuriuos jie atitinka. Pavyzdžiui, lentelės „Darbininkai“ atributai {Darb. Nr.} ir {Vad. Nr.} turi skirtingus vardus, nors juos abu sudaro reikšmės iš srities, kurioje yra darbuotojus identifikuojantys nnumeriai. Taigi, {Vad. Nr.} tai ne kas kita kaip reliacinės lentelės „Darbininkai“ išorinis raktas, kuris nurodo į savo pačios lentelės raktą. Kiekvienam darbuotojui atributas {Vad. Nr.} priskiria atitinkantį vadovą, kuris taip pat yra darbuotojas. Tokiu būdu, atributas {Vad. Nr.} turi turėti reikšmę, kuri yra kažkokio kito lentelės „Darbininkai“ kortežo rakto reikšmė . Taigi ,{Vad. Nr.} yra rekursinio išorinio rakto , t.y. išorinio rakto, nurodančio į savo paties reliacinę lentelę pavyzdys. Kuriant reliacinę duomenų bazę turi būti laikomasi apribojančių sąlygų, kurios palaiko duomenų vientisumą. Šios apribojančios sąlygos suteikia teisingoms duomenų reikšmėms duomenų bazėje nustatymui loginį pagrindą, taip pat perspėja apie klaidas, pasitaikančias modifikuojant ir apdorojant duomenis. Tokios galimybės labai vertingos, kadangi pagrindinis duomenų bazės tikslas – suteikti vartotojui tikslią informaciją. Kodo suformuotame reliaciniame modulyje yra keletas apribojančių sąlygų, naudojamų duomenų bazėje sukauptų duomenų tikrinimui. Svarbiausios iš jų: Kategorijų vientisumas; Nuorodų vientisumas; Funkcinės priklausomybės. Reliacinės lentelės eilutės yra konkrečių realaus pasaulio objektų atitikmenys duomenų bazėje [8, p. 7]. Pavyzdžiui, lentelės „Darbininkai“ eilutė pateikia konkretų tarnautoją, lentelės „Pastatas“ eilutė pateikia konkretų pastatą, o lentelės „Paskyrimas“ eilutė pateikia konkretų darbuotojo paskyrimą į konkretų pastatą. Reliacinės lentelės raktas vienareikšmiškai apibrėžia kiekvieną kortežą, tuo pačiu, ir kiekvieną kategorijos elementą. Tokiu būdu, jeigu vartotojai nori manipuliuoti konkrečios eilutės duomenimis, jie tturi žinoti tos eilutės rakto reikšmę. Todėl svarbu, kad elementas nebūtų įrašomas į duomenų bazę iki to momento, kol nebus pilnai nustatytos jo raktinių atributų reikšmės. Taigi, raktas ar rakto dalis negali turėti tuščios (NULL) reikšmės – tai ir yra kategorijų vientisumo taisyklė. Nuorodų gi vientisumas gali būti paaiškintas taip: norint sujungti vienos lentelės eilutes su eilutėmis iš kitos lentelės, naudojami išoriniai raktai. Pavyzdžiui, atributas {Specialybė} naudojamas lentelėje „Darbininkai“ tam, kad pateiktų vartotojui kiekvieno darbuotojo specialybę, jog būtų galima apskaičiuoti savaitės užmokesčio įmonėje dydį. Todėl reikia pabrėžti, kad kiekvienos eilutės atributo {Specialybė} reikšmės būtų lygios tam tikroms raktinio atributo {Tipas} reikšmėms lentelėje „Specialybė“. Priešingu atveju, išorinis raktas {Specialybė} į nieką nenurodys. Iš čia ir seka nuorodų vientisumo taisyklė – kiekviena netuščia išorinio rakto reikšmė turi būti lygi vienai iš raktinių reikšmių kitoje lentelėje. Funkcinės gi priklausomybės sąvoka naudojama normalizacijos procese. Ji suteikia reliaciniai schemai papildomų apribojimų. Jos pagrindinė idėja – vieno atributo reikšmė korteže vienareikšmiškai nusako kito atributo reikšmę eilutėje. Pavyzdžiui {Darb. Nr.} vienareikšmiškai nusako darbininko pavardę. Šiuo atveju, funkcinė priklausomybė užrašoma taip:{ Darb. Nr.} –> Pavardė. Pažymėjimas ,,–> “ reiškia ,,funkcionaliai nusako “. 2. 4. Reliacinė algebra Kodas įvedė dvi manipuliavimo duomenimis reliacinėje sistemoje kalbas, kurios pasiūlė daug efektyvesnes priemones priėjimui prie duomenų ir jų apdorojimui. Tos kalbos – tai reliacinė algebra ir reliaciniai skaičiavimai. Būtent šios kalbos ir buvo tas pagrindas, kuris sukėlė reliacinę revoliuciją duomenų bazėse. Kodd’as parodė, kad reliacinė algebra ir reliaciniai skaičiavimai logiškai ekvivalentus. Vienu žodžiu, bet kokią užklausą, kurią galima suformuluoti loginių skaičiavimų pagalba, taip pat galima suformuluoti naudojantis reliacine algebra ir atvirkščiai. Pirmiausia, panagrinėsime reliacinę algebra, ji gali būti apibūdinta kaip reliacinių lentelių apdorojimo procedūrinė kalba, kalba, kuri parodo visus uždavinio ssprendimo kelius. Reliacinės algebros operacijos manipuliuoja reliacinėmis lentelėmis, kitaip tariant operacijos panaudoja vieną ar dvi turimas lenteles naujos lentelės sukūrimui. Gauta nauja lentelė gali būti panaudota naujose operacijose. Taip galima eksperimentuoti daliniais sprendimais kol galiausiai nebus pasiekta norimo rezultato. Reliacinę algebrą sudaro devyni elementai: Apjungimas; Susikirtimas; Skirtumas; Sandauga; Išrinkimas; Projekcijų sudarymas; Susijungimas; Dalinimas; Priskyrimas. Lengva pastebėti, kad pirmos keturios operacijos paimtos iš matematinės aibių teorijos ir praktiškai sutampa su aibių teorijos operacijomis, kitos gi operacijos, neskaitant devintos, skirtos tik reliacinio modelio duomenims apdoroti. Galiausiai, devinta operacija standartinė programavimo kalbos ooperacija, suteikianti dydžiui vardą. Toliau panagrinėsim atskiros operacijos funkciją. Apjungimo operacija (žymima È )leidžia kombinuoti duomenis iš dviejų lentelių, kitaip tariant, tai reliacinės algebros operacija, kuri apjungia dvi apjungimui suderintas reliacines lenteles, sudarydama teorinį aibių apjungimą. Reiktų pabrėžti, kad yra sspecialus reikalavimas skirtas apjungimo operacijai, kuris atskiria ją nuo paprasto aibių apjungimo matematikoje. Matematikoje galima apjungti bet kurias dvi aibes. Bet reliacinėje algebroje, prieš taikant apjungimo operaciją dviem reliacinėm lentelėm, reikia įsitikinti, kad jos turi tiksliai tuos pačius atributus. Tai reiškia, kad apjungti galima tik apjungimui suderintas lenteles – t. y. dvi ar daugiau reliacines lenteles, turinčias jų kiekio ir jų srities atžvilgiu ekvivalenčius stulpelius. Susikirtimo operacija sukuria dviejų apjungimui suderintų reliacinių lentelių susikirtimą. teorine aibių prasme(žymima ≤ ; C:=A≤B). Susikirtimo operacija leidžia mums identifikuoti eilutes, jungiančias abi lenteles, atlikę ją gausim naują lentelę į kurią įeis eilutės priklausančios abiem lentelėm. Skirtumo operacija sukuria dviejų apjungimui suderintų reliacinių lentelių teorinį aibių skirtumą. (žymima ,,-“). Skirtumo operacija leidžia mums identifikuoti ttas eilutes, kurios yra vienoje lentelėje, bet kurių nėra kitoje. Sandaugos operacija atlieka dviejų reliacinių lentelių Dekarto sandaugą.(žymima ,,*“). Sandaugos operacija yra labai reikšminga kaip reliacinės algebros lentelių sujungimo operacijos sudedamoji, kuri (sujungimo operacija) yra viena svarbiausių reliacinėje algebroje. Taigi sandauga atliekama: 1. Sujungus atributus abiejų lentelių. 2. Prijungus prie kiekvienos A lentelės eilutės kiekvieną B lentelės eilutę. Išrinkimo operacija – tai reliacinės algebros operacija atrenkanti iš lentelės eilutes pagal pateikta sąlygą. Išrinkimas naudojamas formavimui naujos reliacinės lentelės, į kurią įeina tik ttos eilutės, kurios tenkina pateiktą sąlygą.(žymima: SELECT (lentelės pavadinimas: sąlyga)). Kaip sąlygą galim naudoti šias operacijas: = , , =; taip pat ir logines operacijas: and, or, not. Projekcijų sudarymas – tai reliacinės algebros operacija, sudaranti naują lentelę atmetant stulpelius iš esamos lentelės. Projekcija – tai reliacinė lentelė, gauta projekcijos sudarymo rezultate. Jei išrinkimo operaciją galim įsivaizduoti kaip išbraukimą, atmetimą nereikalingų eilučių, tai projekcijų sudarymo operaciją kaip atmetimą nereikalingų stulpelių. Skirtingai nuo kitų RA-ros operacijų, ši operacija nereikalauja jokio specialaus simbolio ar raktinio žodžio. Tam, kad sudaryti projekciją tereikia nurodyti lentelės pavadinimą, o po jo laužtiniuose skliaustuose išvardinti stulpelius, kuriuos norėtume palikti [6]. Sujungimo operacija naudojama siekiant surišti duomenis tarp lentelių vienu iš kelių sujungimo būdų, kurie yra vykdomi keliais etapais. Dalinimas tai reliacinės algebros operacija, kuri sudaro naują lentelę, išrenkant eilutes vieno lentelės, atitinkančias kiekvienai eilutei kitos lentelės. Galiausiai, paskutinė, priskyrimo operacija atlieka vardo suteikimo lentelei funkcija (žymima „=“). 2. 5. Reliaciniai skaičiavimai Reliaciniai skaičiavimai gali būti paaiškinami kaip neprocedūrinė kalba, skirta užklausų sudarymui reliacinėse duomenų bazėse. Reliacinių skaičiavimų pavadinimas atsiranda iš predikatų skaičiavimų loginėje matematikoje. Reliaciniuose skaičiavimuose naudojamos bulio operacijos (ir, arba, ne), egzistavimo ir apibendrinantys kvantorai, atitinkamai reiškiantys tai, kad tam tikro tipo elementas egzistuoja aarba sąlyga teisinga kiekvienam tam tikro tipo elementui [7]. Norint suprasti reliacinių skaičiavimų esmę reikia panagrinėti užklausos pavyzdį. Sudarykime užklausą: kas iš informacijos vadybininkų dirba Vilniuje? Reliaciniuose skaičiavimuose ši užklausa realizuojama sekančiai:{ r.VADYB_PAVARDĖ : r IN VADYBININKAS and r.OFISAS = „Vilnius“ }. Čia pateiktas sprendimas iliustruoja beveik visus elementus reliacinių skaičiavimų elementus. Panagrinėsime realizavimo struktūrą. Pirmoji dalis iki dvitaškio yra tikslinis sąrašas, likusi gi dalis yra apibendrinta išraiška. Išskirstysime sprendimą dalimis ir paaiškinsime: 1. Figūriniai skliausteliai ( {} ), kuriuose pateikta išraiška, reiškia, kad užklausos rezultatas bus kažkokia aibė. O kas būtent įeina į tą aibę, vaizduoja išraiška skliausteliuose. 2. r – tai kintamasis, kuris aprašo kiekvieną eilutę. Lentelė, iš kurios imamas r, vaizduojama išraiška „r IN VADYBININKAS“, kuri reiškia lentelės VADYBININKAS r eilutę. 3. r.VADYB_PAVARDĖ – atributo VADYB_PAVARDĖ reikšmė eilutėje r. 4. Dvitaškio ( : ) paskirtis – atskirti tikslinį sąrašą ir sąlygas. Tikslinis sąrašas šiuo atveju yra r.VADYB_PAVARDĖ, o apsprendžianti išraiška r IN VADYBININKAS ir r.OFISAS = „Vilnius“. Dvitaškį galima suprasti kaip “toks, kad”. 5. r.OFISAS = „Vilnius“ reiškia, kad atributo OFISAS reikšmė eilutėje r lygi „Vilnius“. Reliaciniuose skaičiavimuose didelę svarbą turi tikslinis sąrašas ir apsprendžiančios išraiškos. Tikslinis sąrašas nusako atributus sprendimo lentelėje, o aapsprendžiančios išraiškos – tai sąlygos, apribojančios elementų patekimo pavidalą, kitaip tariant, atrenka elementus iš duomenų bazės į sprendimo lentelę. Kiekvienos užklausos sprendimas yra reliacinė lentelė, kuri yra užduodama tiksliniu sąrašu ir tam tikra sąlyga. Tikslinis sąrašas sąlygoja sprendimų lentelės atributus. Ankščiau pateiktame pavyzdyje tiksliniu sąrašu buvo r.VADYB_PAVARDĖ kas reiškia, kad sprendimų lentelė turi tik vieną atributą, t.y. informacijos vadybininko pavardę. Reikšmės, įeinančios į sprendimų lentelę, paimtos iš tų eilučių, kurios tenkina sąlygą. Pateiktame pavyzdyje vadybininko pavardė buvo paimta iš eilutės r ir įrašyta į sprendimo lentelę, jei eilutė r tenkina sąlygą r IN VADYBININKAS AND r.OFISAS = „Vilnius“. Sistema peržiūri visas lentelės VADYBININKAS eilutes. Pirmai eilutei laikinai priskiriamas vardas r ir tikrinama ar sąlyga tenkinama. Šiuo atveju, kadangi r.OFISAS = „Vilnius“, sąlyga tenkinama, todėl r.VADYB_PAVARDĖ (Ivanauskas) įrašoma į sprendimų lentelę. Vėliau sistema pereina į kitą eilutę, jai priskiria vardą r ir vėl tikrina sąlygą. Kai sąlyga yra netenkinama, išraiška neteisinga, todėl tos eilutės „atstovas“ neįrašomas į sprendimų lentelę. Procesas kartojamas kiekvienai lentelės VADYBININKAS eilutei, kol galiausiai proceso rezultatai pateikiami lentelės pavidalu. Daugumai užklausų tikslinis sąrašas susidės iš vieno atributo. Vis dėlto, tikslinis sąrašas gali susidaryti ir iš kelių atributų, tereikia išvardinti visus atributus, atskiriant juos kableliais: {r.VADYBININKO_ID, r.VADYB_PAVARDĖ, r.MENEDŽERIO_ID, r.OFISAS :r IN VADYBININKAS AND r.OFISAS = “Vilnius” } ir pan.    Pateiktų paaiškinimai leidžia suprasti, kaip išrinkimo operacijos ir reliacinės algebros projektavimas palaikomi reliaciniuose skaičiavimuose. Apjungimo, susikirtimo, skirtumo ir sandaugos operacijas taip pat galima pateikti reliacinių skaičiavimų konstrukcijomis. Kadangi skaičiavimuose nenaudojamos algebros žingsninės procedūros, tai priskyrimo operacija nereikalinga. Tokiu būdu, liko dvi Reliacinės algebros operacijos – tai sujungimo ir dalinimo operacijos. Šioms operacijoms atlikti būtina pasitelkti kvantorais. Šiuo atveju egzistavimo kvantoras bus reikalingas sujungimo operacijai atlikti, o apibendrinantis kvantoras – dalinimui . Taigi, ppradėsim nuo egzistavimo kvantoro. Pagal savo apibūdinimą, kvantoras reiškia kokį nors kažkokio dalyko kiekį. Egzistavimo gi kvantoras – tai reliacinių skaičiavimų išraiška, kuri reiškia bent vienos eilutės, tenkinančios duotą sąlygą, egzistavimą. Reliaciniuose skaičiavimuose egzistavimo kvantoras naudojamas užduoti sąlygą, kad apibrėžto tipo eilutė lentelėje egzistuoja. Vienu žodžių, panagrinėsime egzistavimo kvantoro funkcijas, atsižvelgiant į konkretų atvejį. Taigi, sudarykime užklausa: išvardinti vardus vartotojų, pasinaudojusių paslauga 0618? Kaip ir anksčiau nagrinėtose operacijose, šio uždavinio sprendinys bus lentelė, kurioje bus kai kurių vartotojų vardai. Šią llentelę, sudarys vienas stulpelis, nes tikslinis sąrašas r.VART_VARDAS sudarytas iš vieno atributo, kur r – tai eilutė iš lentelės VARTOTOJAS. Taigi, mes sudarėme tikslinį sąrašą, tačiau dar neatkreipėm dėmesio į apsprendžiančią išraišką? Kad vartotojas pakliūtų į sprendimų lentelę, jis turi aatitikti duotą sąlygą, t.y. vartotojas naudojosi paslauga 0618. Kitaip tariant, jei kliento ID sutinkamas tam tikroje lentelės PASLAUGOS eilutėje su PASLAUGOS_ID = 0618, tai tas klientas bus įtrauktas į spendimų lentelę. Tokiu būdu, gauname sąlyga: lentelėje PASLAUGOS egzistuoja bent viena eilutė, turinti vartotojo ID ir PASL_ID =0618. Taigi galiausiai reliaciniuose skaičiavimuose gaunama sąlyga: ( s.VARTOTOJO_ID = r.VARTOTOJO_ID and s.PASLAUGOS_ID = 0618 ). Tokia išraiška skaitoma: „lentelėje PASLAUGOS egzistuoja eilutė s tokia, kad „s.VARTOTOJO_ID = r.VARTOTOJO_ID ir s.PASLAUGOS_ID =0618“. Pabrėžtina, kad ta išraiška apibrėžia eilutę r. Jei išraiška teisinga, t.y. eilutei r egzistuoja tokia eilutė s, tai r.VART_VARDAS įterpiamas į sprendimo lentelę, ir atvirkščiai, jei išraiška klaidinga, t.y. tokia eilutė s neegzistuoja – tai r.VART_VARDAS neįrašomas į sprendimo lentelę. Galutinis sprendimas rreliaciniuose skaičiavimuose atrodys taip: (r.VARTOTOJO_VARDAS : IN VARTOTOJAS and exists s IN PARDAVIMAS s.VARTOTOJO_ID = r.VARTOTOJO_ID and s.PASLAUGOS_ID = 0618). Apibendrinantis gi kvantoras reiškia, kad kažkokia sąlyga taikytina kiekvienai tam tikro tipo eilutei. Jis yra reliacinės algebros dalinimo operacijos atitikmuo. Taigi sudarykime užklausą: kuris pardavėjas pardavė kiekvieną automobilį? Ši užklausa yra sudėtingesnė, nes reikalauja dviejų sujungimų, čia atsižvelgiama ir į klientus pirkusius automobilį pas atitinkamą pardavėją. Sprendimas atrodys sekančiai: ( r.KLIENT_VARDAS : r IN KLIENTAS and there exists p IN AAUTOMOBILIAI exists s IN PARDAVIMAS); ( r.PARDAV_ID = s. PARDAV_ID and s. AUTOMOBILIO_ID = p. AUTOMOBILIO_ID ). Sprendinio rezultatas bus lentelė, į kurią bus įrašytas pardavėjo vardas. Pardavėjo vardas iš eilutės r lentelės PARADAVIMAS įrašomas į sprendimo lentelę, jeigu sąlyga teisinga eilutei r. Kiekvienai lentelės AUTOMOBILIS eilutei p turi egzistuoti eilutė s lentelėje PARDAVIMAS, tenkinanti sąlygą. Kiekvienoje iš eilučių lentelėje PARDAVIMAS, PARDAVĖJO_ID priklauso kažkokiam pardavėjui ir kiekviena pardavimo eilučių atitinka vieną iš keturių galimų prekių. Taigi, tas pardavėjas ir bus pardavęs kiekvieną prekę. 2. 6. Duomenų bazės normalizavimas, norminės formos Duomenų bazės normalizaciją galima apibūdinti kaip įvairių taisyklių taikymą, siekiant supaprastinti sąryšius. Ji padeda suvesti reliacines lenteles iki standartinio pavidalo, taip pat padeda išvengti problemų, kurios atsiranda dėl neteisingo duomenų bazės projektavimo, o būtent duomenų perteklių, duomenų vientisumo užtikrinimas, duomenų atnaujinimo, pašalinimo ir įvedimo anomalijas. Norint suprasti kylančias duomenų bazės kūrimo procese problemas reikia išnagrinėti konkretų pavyzdį. Tegul turime atvejį, kai reliacinis duomenų bazės modelis buvo sukurtas ne koncepcinio modelio pagalba, o informacijos, tiesiogiai gautos iš potencialių vartotojų, pagrindu. Reliacinė lentelė „Priskirtas darbuotojas“ atrodys taip: „Priskirtas darbuotojas“ ID-Darbuotojo Pavardė Specialybė ID-Vadovo ID-Pastato Data Alga 1010 A.Ivanauskas Suvirintojas 512 14 04. 15 650 1010 A.Ivanauskas Suvirintojas 236 25 03. 17 650 1581 M. Žukauskas Dažytojas 512 14 05. 25 600 1581 M. Žukauskas Dažytojas 457 58 06. 21 600 1581 M. Žukauskas Dažytojas 218 69 07. 11 600 1581 M. Žukauskas Dažytojas 123 12 03. 14 600 1471 J. Sakalauskas Santechnikas 218 69 04. 21 700 Akivaizdu, kad reliacinė lentelė ssuprojektuota nesėkmingai. Keturiuose kortežuose, atitinkančiuose darbuotojui kurio numeris 1581, kartojasi ta pati pavardė, bei specialybė. Šiuo atveju, duomenų perteklius atsirado dėl to, kad vienas darbininkas paskirtas darbui keliuose pastatuose. Duomenų perteklius sunaudoja laisvą vietą, ir gali sukelti ir duomenų vientisumo pažeidimus. Pavyzdžiui, Žukausko specialybė būtų įvesta neteisingai ir ištaisyta tik pirmame korteže, tada tarp kortežų, turinčių informaciją apie Žukauską atsirastų neatitikimas – atnaujinimo anomalija. Sekanti problema, su kuria įmanoma susidurti tai pašalinimo anomaliją. Pavyzdžiui, pastate, kuriame dirba Ivanauskas pasibaigė darbai ir iš lentelės norima pašalinti visas eilutes turinčias informaciją apie užbaigtą pastatą, bet tada informacija apie Ivanausko ID, pavardę ir specialybę bus prarasta. Jeigu norime įvesti naują darbuotoją (pvz. Aleksandravičių, kuriam dar nespėjome paskirti pastatą, ir tuščios reikšmės neliestinos, tai informaciją apie Aleksandravičių įvesti negalėsim, tai sukels įvedimo anomaliją. Norint išvengti anomalijų ir užtikrinti duomenų vientisumą, lentelė „Priskirtas darbuotojas“ turi būti išskaidyta. Šiam tikslui naudojamos norminės formos. Normine forma vadinamos sąlygos, kurias turi tenkinti duomenų bazės reliacinė schema, kad duomenų bazė išvengtų tam tikrų nepageidaujamų savybių. Lentelė yra pirmos norminės formos, jei visų jos atributų reikšmės yra atomai. Atomu laikoma reikšmė, kuri nėra nei aibė, nei sąrašas [9, p 37]. Pirmiausia panagrinėsim pirmąją norminę formą, norint aiškiau suprasti jos eesme panagrinėkime lentelę, kuri neatitinka pirmąją norminę formą, tegul tai būna lentelė „Darbuotojas“. Pagal Kodd‘o reliacinės lentelės apibrėžimą, reliacinė lentelė turi tenkinti pirmąją norminę formą. „Darbuotojas“ ID-Darbuotojo Pavardė Specialybė ID-Vadovo ID-Pastato 1010 A.Ivanauskas Suvirintojas 512 14, 126, 24 1581 M. Žukauskas Dažytojas 514 14, 450, 158 ID-Pastato reikšmės nėra atominės, t.y. vienam kortežui ID-Pastato gali turėti kelias reikšmes. Pagal Kodd‘o apibrėžimą lentelė „Darbuotojas“ nėra reliacinė lentelė. Bet lentelė „Priskirtas darbuotojas“ tenkina pirmąją norminę formą, nes mums ID-Pastato reikšmė gali būti laisvai išrinkta nuorodos į atributo ID-Pastato vardą pagalba. Antra ir trečia norminės formos yra apribotos funkcinėmis priklausomybėmis, t. y. kai vieno atributo reikšmė korteže vienareikšmiškai apibrėžia kito atributo reikšmę. ir liečia sąryšius tarp raktinių ir neraktinių atributų [5]. Antra norminę formą apibrėžia, kad kiekvienas neraktinis atributas yra funkcionaliai priklausomas nuo visu raktinių atributų, kitaip tariant, nuo pilno rakto, vienu žodžiu, jis negali būti priklausomas tik nuo vieno iš raktinių atributų. Lentelė „Priskirtas darbuotojas“ turi sudėtinį raktą {ID-Darbuotojo, ID- Pastato}. Atributo {Pavardė} reikšmę vienareikšmiškai apibrėžia atributas {ID-Darbuotojo}, taigi ir funkcionaliai priklauso nuo rakto dalies, o tai sąlygoja antros norminės formos netenkinimą, todėl yra tikimybė, kad gali atsirasti anksčiau minėtos duomenų bazės kūrimo procese atsirandančios problemos. Tam, kad lentelę tenkintų antrąją norminę formą, būtina išskaidyti ją į dvi lenteles. Svarbu paminėti išskaidymo etapus: Pirmiausia reikia sukurti naują lentelę, kurios atributai yra pradinės lentelės atributai, netenkinantys funkcinės priklausomybės sąlygos, tada funkcinės priklausomybės determinantas tampa naujos lentelės raktu. Sekantis žingsnis – Atributo, esančio dešinėje funkcinės priklausomybės pusėje, išbraukimas iš pradinės lentelės. Šie du žingsniai kartojami jeigu yra daugiau funkcinių priklausomybių, kurios pažeidžia antrą norminę formą. Ir galiausiai, jeigu vienas determinantas įeina į kelias funkcines priklausomybes, tai visi nuo jo funkcionaliai priklausantys atributai talpinami kaip neraktiniai atributai į lentelę, kurios raktu bbus determinantas. Trečios norminės formos, kitaip dar Bois‘o – Kodd‘o norminės formos esmė – kiekvienas determinantas yra raktas. Paimkim lentelę „Darbuotojas“, čia funkcinės priklausomybės atrodys taip: ID-Darbuotojo ® Pavardė ID-Darbuotojo ® Specialybė ID-Darbuotojo ® ID-Menedžerio ID-Darbuotojo ® Alga Tačiau reikia paminėti funkcinę priklausomybę Specialybė ® Alga, kuri netenkina trečiąją norminę formą, nes Specialybė yra determinantas, bet nėra raktas. Kad išvengti panašių problemų kaip ir antroje norminėje formoje vėl išskaidysim lentelę, atliekant tokius pat išskaidymo žingsnius kaip ir suvedimo iiki antros norminės formos atveju. Gausime sekančią lentelę „Priskirtas“, kur {ID-Darbuotojo, ID-Pastato, Data}, čia išorinis raktas: ID-Darbuotojo kreipiasi į lentelę Darbuotojas Čia lentelė A {ID-Darbuotojo, Pavardė, Specialybė, ID-Menedžerio} Išorinis raktas: Specialybė kreipiasi į lentelę B Čia lentelė B {Specialybė, AAlga} Šios lentelės tenkina trečiąją norminę formą. Pagal apibrėžimą, jeigu lentelė tenkina trečiąją norminę formą, tai ji tenkina antrąją norminę formą bei pirmąją norminę formą. (Atvirkščias teiginys negalioja). Todėl, tam kad suvesti lentelę iki antros norminės formos ir trečios norminės formos užtenka pasinaudoti trečios norminės formos kriterijumi. Pateikta trečios norminės formos versija vadinama Bois‘o – Kodd‘o normaline forma. Yra ir kitas trečios norminės formos kriterijus, bet jis logiškai yra silpnesni. Šis kriterijus teigia, kad lentelė tenkina trečiąją norminę formą, jeigu ji neturi tranzityvinių priklausomybių, kai neraktinis atributas funkcionaliai priklauso nuo vieno ar daugiau neraktinių atributų [5]. Ketvirtos norminės formos esmė – kai lentelė tenkina trečią norminę formą ir neturi daugiareikšmių priklausomybių, tai galima pasiekti jeigu kiekvieną daugiareikšmį atributą kartu su rraktu, nuo kurio jis priklauso, patalpinti į atskirą lentelę. Yra dar ir penktoji norma, ji buvo sukurta tam, kad išvengti bendrų priklausomybių. Bendros priklausomybės turi teorinę prasmę ir abejotiną praktinę vertę. Todėl penkta norminė forma iš tikrųjų neturi praktinio panaudojimo, todėl ir neturi didelės reikšmės duomenų bazės kūrimo procese. 2. 7. Konceptualus duomenų bazės modeliavimas Duomenų bazės projektavimo procesas neapsieina be modeliavimo sferos. Duomenų bazės loginė schema – tai visos informacinės sistemos pagrindas. Taigi, projektuojant duomenų bazes reikia tiksliai aprašyti dalykinę sritį. FFormalizuotas dalykinės srities aprašas, kuris suprantamas visiems asmenims, tiesiogiai susijusiems su duomenų bazės projektavimo procesu, vadinamas konceptualinių, kitaip dar semantiniu, modeliu. Du pagrindiniai duomenų modelių kūrimo tikslai:    padėti suprasti duomenų prasmę;    padėti komunikaciją apie informacijos reikalavimus. Duomenų modelis palengvina duomenų prasmės suvokimą. Todėl duomenys modeliuojami, siekiant užtikrinti, kad suvokiama: kiekvieno vartotojo duomenų perspektyva; duomenų natūralioji prigimtis, nepriklausoma nuo jų fizinių reprezentacijos priemonių; duomenų naudojimas konkrečiuose veiksmuose. Konceptualinio projektavimo etapą sudaro konceptualinės duomenų bazės schema. Specifikacijos kuriamos tame lygyje, kuris reikalauja perėjimo prie realizacijos. Šiame etape sukuriami smulkūs vartotojiškų duomenų pateikimo modeliai, fiksuojantys visus elementus bendrųjų duomenų, kurie bus duomenų bazėje. Vienas populiariausių konceptualinių modelių yra 1976 m. P. Čeno pasiūlytas esybių ryšių modelis. Jis gali būti suvokiamas kaip fiziškai egzistuojančių ar lengvai suvokiamų ir skiriamų modeliuojamo pasaulio bendrųjų vaizdų, būtent koncertų ar sąvokų, rinkinių ryšiai. E-R modelis sudaro pagrindą esybių ryšių diagramoms, kurios atitinka konceptualią duomenų bazę , kaip ji yra įsivaizduojama vartotojo. Pagrindiniai esybių ryšių diagramos komponentai yra esybės, ryšiai ir atributai. Esybės – tai gerai skiriami fiziškai ar mintyse egzistuojantys modeliuojamo pasaulio konceptai. Panašios esybės sudaro esybių aibę kurį dažniausiai vadinama tiesiog esybe. Esybės žymimos stačiakampiais, viduje užrašant esybės vardą. Vienu žodžiu, esybė esybių ryšių modelyje atitinka reliacinės aplinkos lentelę, o ne eilutę. Atributai charakterizuoja esybes, arba ryšius. Jie vaizduojami ovalais, kurių viduje rašomas atributo vardas. Ovalai sujungiami su atitinkama esybe. Atributai turi domenus. Domeną sudaro visos galimos atributo reikšmės. Atributai būna: raktiniai, jie vienareikšmiškai atitinka esybės objektą; vienareikšmiai ir daugiareikšmiai; taip pat gali būti skirstomi i paprastus ir sudėtinius. Sudėtiniai atributai – atributai, kurie gali būti toliau skaidomi, gaunant papildomus atributus. Svarbu pažymėti, kad reliaciniame modelyje negali būti sudėtinių atributų. Ryšiai – tai dvinariai junginiai, nusakantys esybių tarpusavio santykį arba sąveiką. Kiekvienas ryšys pavadinamas taip, kad vardas atspindėtų ryšio esmę. Ryšiai žymimi rombais, kuri viduje rašomas ryšio vardas. Rombas jungiamas su esybėmis, tarp kuri ir yra aprašomas ryšys. Ryšio laipsnis parodo ryšyje dalyvaujančių esybių skaičių. Skirstomi unariniai ternariniai ir binariniai ryšiai. Unariniai ryšiai, arba vieno nario ryšiai – tai ryšiai vienos esybės viduje, tokie ryšiai dar vadinami rekursyviais. Binarinis ryšys atsiranda tada, kai jungiamos dvi esybės. Šis ryšys pasitaiko dažniausiai. Ternarinis ryšys jungia tris esybes. Ryšiai tarp keturi ir daugiau esybių yra itin reti. Ryšį R tarp esybių E1, E2, ., En galima suprasti kaip sąryšį matematine prasme. Tuomet ryšys R yra esybių E1, E2, ., En Dekarto sandaugų poaibis. n – ryšio laipsnis: R E1 * E2 * . * En Elementas ((e1, e2, ., en) _ R vadinamas ryšio egzemplioriumi kur ei Ei kiekvienam 1 ≤i ≤n. Galima apibrėžti ir rolės sąvoką . Panagrinėjus ryšį Būtini Kursai matosi, kad reikia tiksliau nurodyti, k kuri esybės ryšyje reiškia: Būtini Kursai Kursas * Kursas Kad charakterizuoti egzempliorių (k , k2) Būtini Kursai, reikalingos rolės: (Prieš:k1 , Po to:k2) Būtini Kursai. Iš čia visiškai aišku, kad kursas k yra būtina sąlyga kursui k2 []. Tarp pagrindinių ryšių rūšių galima išskirti šiuos: i vienas-su-vienu (1:1), vienas-su-daug (1:N) ir daug-su-daug (N:M). Iki šiol buvo laikoma, kad esybės egzistuoja nepriklausomai viena nuo kitos (autonomiškai) ir tarp to paties tipo esybių yra vienareikšmiškai nusakomos raktinių atributų kombinacija. Realiame pasaulyje yra dar ir silpnųjų esybių, kurioms tai negalioja. Silpnoji esybė pasižymi savybėmis: Egzistavimas priklauso nuo kitos (pagrindinės, aukštesnės) esybės Pati esybė vienareikšmiškai identifikuojama tik prie rakto prijungus kitos (pagrindinės) esybės raktą. Silpnosios esybės žymimos dvigubu stačiakampiu. Ryšys su pagrindine esybe taip pat žymimas dvigubu rombu, rombą ir silpnąją esybę jungia dviguba linija. Ryšio tarp silpnosios esybės ir pagrindinės esybės jungiamumas dažniausiai būna 1:N, kartais 1:1. N:M jungiamumo būti negali [9, p. 51]. Generalizavimo ir specializavimo fazės metu išskiriamos bendros panašių esybių savybės, o būtent, atributai ir ryšiai, kuriuose dalyvauja esybės ir priskiriamos atskirai esybei – virštipiui. Galima būtų išskirti du generalizavimo/specializavimo atvejus: Disjunktyvus (nepersidengiantis) specializavimas būna tada, kai potipio aibės yra poromis skirtingos; Pilnas specializavimas, būna tada, kai virštipio esybių aibė neturi tiesioginio egzemplioriaus , t.y. susideda tik iš potipio egzemplioriaus. Panašios esybės, iš kuri buvo išskirtos bendros savybės, vadinamos virštipio potipiais Tos savybės, kurios nėra bendros visiems potipiams, lieka prie to potipio, kuriam iš pradžių ir priklausė. Galimas ir atvirkščias procesas: jei konkrečiame esybių tipe išsiskiria esybių poaibiai, kuri viduje esybės pasižymi tomis pačiomis savybėmis, tačiau ppoaibiai vienas nuo kito skiriasi, tai specializavimo metu pradinė esybė išskaidoma i bendrąją dalį ir specializacijas. Esminė virštipio ir potipio sąryšio savybė – paveldimumas. Jis reiškiasi tuo, kad potipis paveldi visas savo virštipio charakteristikas, būtent atributus ir sąryšius. Taigi konkrečios potipio esybės tuo pačiu yra ir virštipio esybės. Paveldimumas – tai specialus ryšio tipas (“is – a” ryšys) [9, p. 51]. 2. 8. Trijų lygių duomenų bazės architektūros projektavimas Per pastaruosius dešimtmečius failų apdorojimo metodika žymiai pasikeitė. Vienas svarbiausių pasiekimų bbuvo reliacinių duomenų bazių sukūrimas. Daugmaž reliacinės revoliucijos idėja yra paremta loginės struktūros atskyrimu, duomenų, pateiktų vartotojui suprantamu pavidalu, manipuliavimo būdų ir jų fizinio realizavimo. Kaip ir daugelis kitų revoliucinių idėjų, ši idėja iš pradžių iššaukė daug diskusijų, tačiau galutinai ssupratus jos svarba, pagaliau ji yra visur priimta. Šių lygių atskyrimas yra bet kurios ANSI/SRARC (Amerikos standartizavimo institutai) modelį atitinkančios duomenų bazės struktūros esmė. Skirtumas tarp duomenų bazės fizinio ir loginio lygių buvo oficialiai pripažintas tik 1978 metais. Tuomet ANSI/SRARC komitetas pasiūlė apibendrintą duomenų bazių sistemų struktūrą, kuri buvo pavadinta trejų lygių duomenų bazės architektūra. Jos esmė – tai trys abstrakcijos lygiai, kuriuose galima nagrinėti duomenų bazę: koncepcinis, išorinis ir vidinis. Taigi, svarbu atkreipti dėmesį į šiuos lygius duomenų bazės projektavimo kontekste, todėl reikia išnagrinėti, kaip apibrėžiamos vartotojų dalykinės sritys, o būtent išorinis lygis, jų integravimo procesą į vieningą koncepcinę duomenų bazės schemą ir šios schemos realizavimo ypatumus šiuolaikinėse komercinėse duomenų bazių valdymo sistemose. Pabrėžtina, kad šios sistemos yra pusiaukelėje ttarp grynai fizinio ir grynai loginio lygių. Taip pat nepaliksime be nagrinėjimo ir vidinio, kitaip tariant, fizinio duomenų bazės lygio. Pirmiausia, reikia atkreipti dėmesį į pagrindinius duomenų bazės projektavimo žingsnius, jie pavaizduoti 2 pav. 2 pav. Pagrindiniai duomenų bazės projektavimo žingsniai. Reiktu atkreipti dėmesį, kad pirmieji du projektavimo žingsniai, o būtent informacijos rinkimas apie dalykinę sritį ir analizė ir informacijos rinkimas apie probleminę sritį ir analizė, atliekami išoriniame lygyje. Išoriniame lygyje prasideda duomenų bazės planavimas. Jis inicijuojamas aukščiausio lygio vadovybe. VVadovai paskirsto plano parengimo dalyvius, kurie, pagal vadovybės nuosprendį, gauna visas reikalingas sėkmingam plano realizavimui lėšas. Duomenų bazės planavimas pirmiausiai aprėpia informacijos rinkimą apie dalykinę sritį ir analizę, kurią galima apibūdinti kaip žinių, duomenų, nuomonių ir požiūrių apie dalykinės srities struktūrą, joje vykstančius įvykius ir procesus, tų procesų vykdymo tikslus bei būdus ir tuos procesus vykdančių asmenų išsilavinimą, klasifikaciją bei tradicijas rinkimas. Pagrindinis dalykinės srities analizės tikslas – suvokti tą sritį ir sukaupti žinias, reikalingas duomenų bazėms sukurti, o ne parengti vienus ar kirus dokumentus. Dokumentai yra tik pagalbinė priemonė. Sukurti duomenų bazės be analizės neįmanoma. Be to informacijos rinkimo sėkmę lemia šie veiksniai: užsakovo kompetencija ir turima kompiuterizacijos patirtis; užsakovo kompetencija ir turima kompiuterizacijos patirtis; analitikų profesinė patirtis ir jų turimos dalykinės srities žinios; analizėje dalyvaujančių asmenų geba diskutuoti, suvokti kitų asmenų požiūrius ir juos aprobuoti; geras analizės planas ir jo aprūpinimas resursais. Analizės metu surinkti faktai ir nuomonės retai kada būna tarpusavyje suderinti. Kartais tuo pačiu klausimu skirtingų asmenų nuomonės gali būti prieštaringi. Todėl yra integruojami visi skirtingi ir prieštaringi požiūriai ir gaunami objektyvūs vertinimai. Visa surinkta informacija apie dalykinę sritį suklasifikuojama, apibendrinama. Tokiu būdu yra išsprendžiami konfliktai ir randamas kompromisas tarp prieštaringų nuomonių, požiūrių bei vertinimų [8]. Sekantis duomenų bazės pplanavimo žingsnis – tai informacijos rinkimas apie probleminę sritį ir analizė. Šį žingsnį galima apibūdinti kaip informacijos rinkimą apie sprendžiamos organizacijos problemų visumą. Priklausomai nuo organizacijos problemų yra parenkama tam tikra dalykinė sritis, jos objektai. Įveikus šį etapą, artėjama prie koncepcinio duomenų bazės projektavimo lygio. Kaip savarankiška duomenų bazių projektavimo stadija, koncepcinis projektavimas pradėtas skirti tik pastaraisiais metais, tai struktūrinis duomenų bazės lygis, kuriame aprašoma loginė duomenų bazės schema. Atliekant duomenų bazės koncepcinį projektavimą, svarbiausias žingsnis – tai projektuojamosios duomenų bazės koncepcinės schemos sudarymas. Šiame etape išskiriama dar viena grupė neatskiriamų nuo duomenų bazės elementų – tai duomenų bazės administracija. Kadangi duomenų bazė – tai labai vertingas korporatyvinis resursas, ji reikalauja duomenų kontrolės ir apsaugos. Tai ir yra pagrindinis duomenų bazės administracijos uždavinys. Ji koordinuoja koncepcinio projektavimo eigą, apmokina vartotojus, realizuoja duomenų apsaugą ir palaiko jų vientisumą bei prieinamą sistemos veikimą. Dalykinės srities koncepcinis modelis gali būti apibūdintas kaip sąveika sekančių elementų: klasių hierarchijos; ryšių; esybių ryšių ir gyvavimo ciklų; kritinių ryšių; veiklos diagramos; scenarijų; procesų bei srautų. Koncepcinio modelio paskirtis – įsivaizduoti realaus pasaulio problemą objektais, kurie abstraguojami iš dalykinės srities. Pagrindiniai koncepcinio modelio elementai yra objektai ir ryšiai tarp jų. Paprastai koncepciniame modelyje objektai yra aprašomi daiktavardžiais, o rryšiai tarp jų – veiksmažodžiais. Objektai ir ryšiai gana efektyviai padeda aprašyti mus dominančias problemas []. Loginis projektavimas yra jau po duomenų bazės modelio nustatymo, jis taikomas išrinktam modeliui ir yra priklausomas nuo programinės i rangos. Loginis projektavimas tai ne kas kita kaip scheminio projekto pervedimas i vidinį modelį . I loginį reliacinės duomenų bazės modelį eina lentelių , indeksų , virtuali lentelių , tranzakcijų projektavimas. Loginio projektavimo etape yra nustatomos duomenų bazės vartotojų teisės naudotis ja. Šiame etape iškyla daug klausimų: kas galės naudotis lentelėmis ir kokiems vartotojams kokios jų dalys bus prieinamos? Atsakymas i tokius klausymus ir padeda išsiaiškinti atitinkamų priėjimo prie duomenų teisų apibrėžimo. Trumpai tariant, loginis projektavimas perveda nuo programinės įrangos nepriklausomo scheminio modelio i priklausomą modelį , nustatant atitinkamų sričių apibrėžimus, fizinius reikalavimus, kurie leis sistemai funkcionuoti su pasirinktąja kompiuterine aplinka. Paskutinis duomenų bazės projektavimo etapas – fizinis, arba vidinis etapas. Šis etapas – tai struktūrinis duomenų bazės lygis, kuriame atliekama fizinė duomenų bazės realizacija, atliekamas fizinis duomenų bazės projektavimas. Duomenų bazės administracija nagrinėja, kaip duomenų bazės valdymo sistema apdoroja kreipinius į duomenis, išsiaiškina efektyviausius kreipimosi metodus, nusprendžia kokius metodus taikyti, norint saugiai įvesti, ištrinti ar atnaujinti duomenis. Šių trijų lygių realizacija reikalauja iš duomenų bazės “mokėjimą pertvarkyti” iš vieno lygio į kitą. Tam, kad pateikti duomenis koncepciniame ar išoriniame lygiuose sistema turi mokėti pertvarkyti fizinius adresus ir nuorodas į atitinkamus loginius vardus ir ryšius. Toks pertvarkymas gali vykti ir priešinga kryptimi [8]. Nors atliekant tokius pertvarkymus atsiranda žymių sisteminių trukdymų, iš to gaunama ir nauda, nes šie lygiai yra nepriklausomi vienas nuo kito, o tai yra labai svarbu. 3. DUOMENŲ BAZĖS KŪRIMAS 3. 1. Duomenų bazės kūrimo žingsniai Panagrinėję daugelį duomenų bazės projektavimo yypatybių, galiausiai priėjome prie paskutinio duomenų bazės kūrimo ciklo etapo – galutinio duomenų bazės sudarymo. Tačiau, iš pradžių reiktų atkreipti dėmesį į konceptualinių duomenų bazių valdymo schemų kūrimą, duomenų apibrėžimą, jungiamų į duomenų bazę ir programų, atnaujinančių ir apdorojančių duomenų kūrimą. Ši procedūra vadinama gyvybiniu duomenų bazių ciklu . Gyvybinis duomenų bazių ciklas gali būti suprastas, kaip projektavimo, realizacijos ir duomenų bazės palaikymo procesas. Reiktų pabrėžti, kad gyvybinis duomenų bazių ciklas aprašo sistemų gyvavimo ciklą, čia išskiriami sekantys žingsniai: nnagrinėjimas, reikalavimų apibrėžimas, sistemos projektavimas, programavimas ir derinimas, įdiegimas ir paleidimas ir taip pat sistemos darbo įvertinimas ir jos palaikymas. Iškyla klausimas, kaip duomenų bazių kūrimo procesas įsijungia į šį scenarijų. Tam, kad padidinti savo darbo efektyvumą, projektuotojai turi atidžiai pperžiūrėti prielaidas, esančias tradiciniame sistemų gyvavimo cikle, kurio metodai paremti funkcionaliai orientuotu priėjimu. Tai reiškia, kad sistema peržiūrima iš tų funkcijų pusės, kurias ši vykdo, o ne iš duomenų pusės, kuriais ji operuoja. Tokiu būdu, struktūrinė analizė pabrėžia sekamų duomenų judėjimo reikšmes, duomenų pasikeitimo atsekimas, virtimu pasėkoje, jų tikslinimas keliuose lygiuose. Tas taip pat liečia ir struktūrinį projektavimą, kuris žiūri į sistemą, kaip į vientisą funkciją, palaipsniui sudalytų į smulkesnes įvairaus lygio funkcijas [1]. Skiriant daug dėmesio funkcijoms šie metodai mažiau atsižvelgia į duomenis, todėl sistema duoda trumpalaikę naudą, aukodama ilgalaikius vartotojų poreikius, kas yra visiškai nepriimtina. Šie trūkumai iššaukia sunkias funkcionaliai orientuotų sistemų problemas, todėl, kad jų kūrimas reikalautų daug kartų jas koreguoti ir perdarinėti, kad įgyvendinti visas norimas ffunkcijas. Požiūris orientuotas į duomenis, atvirkščiai, pagrindinį dėmesį skiria duomenų, reikalingų įvykdyti tam tikroms funkcijoms, analizei. Čia reiktų pažymėti du privalumus: Duomenų elementai yra žymiai stabilesnė sistemos dalis, negu vykdomos jos funkcijos. Tai surišta su tuo, kad duotą elementų rinkinį galima kombinuoti daugybe būdų, duodant atsakymus į daugelį klausimų. Jeigu mes kiekvieną klausimą analizuosime kaip sistemos vykdomą funkciją, tai lengva parodyti, kad galimų funkcijų kiekis bus žymiai didesnis negu duomenų laukelių skaičius [1]. Teisingos duomenų struktūros schemos duomenų bazės sukūrimas reikalauja ssmulkios vienetų klasės ir ryšių tarp jų sukūrimo. Po to kai duomenų bazės loginė schema peržiūrėta, galima sukurti bent kiek funkcinių sistemų, naudojančių tą schemą. Be tokios schemos duomenų bazė gali būti naudinga tik vienai konkrečiai funkcijai. Tokiu būdu, funkcionaliai orientuotas priėjimas naudingas tik kuriant laikinas sistemas ir turi žymiai mažesnę vertę, ilgalaikiu aspektu [1]. Metodo orientuoto į duomenis naudojimo metu duomenys tampa daugelio funkcionalių sistemų kūrimo pagrindu. Duomenų bazės plano atlikėjas gali nuspręsti, kad organizacijai reikia kelių duomenų bazių vietoj vienos, viską apimančios. Daugelis kompanijų priėjo prie tokių išvadų, kadangi jų vykdomos operacijos yra įvairiapusės. Uždavinys – sukurti naują duomenų bazę, atitinkančią visus reikalavimus, būtų per daug brangus ir, galimas daiktas, ji neatliktų visų reikalavimų. Jiems geriausias sprendimas buvo keleto gerai apibrėžtų tam tikrose srityse duomenų bazių sukūrimas. Žinoma, informacijos mainai tarp šių duomenų bazių pasidaro sudėtingesni, tačiau kompanijos linkusios rinktis pastarąjį variantą. Strateginis duomenų bazių planas siūlo kiekį ir išvaizdą, kurią reikia organizacijai sudaryti tokį, kaip nupiešta plano schemoje. Po to, kai planas yra galutinai įvertinamas, toliau gali būti sprendžiami projektavimo planai ir konkrečių duomenų bazių realizacija, būtent čia pasitarnauja duomenų bazių gyvavimo ciklas.   Išankstinis planavimas – tai svarbus kintamasis strateginio plano kūrimo procese. Kada prasideda rrealizacijos projekto kūrimas, bendras informacinis modelis sukurtas duomenų bazės planavimo procese peržiūrimas ir jei reikia, tai tobulinamas. Planavimo procese kaupiama informaciją, atsakanti į šiuos klausimus: 1. Kiek naudojama taikomųjų programų ir kokias funkcijas jos vykdo. 2. Kokie failai surišti su kiekviena iš šių taikomųjų programų. 3. Kokios naujos programos ir failai atsiranda kūrimo procese.   Sekantis žingsnis – tai įgyvendinamumo patikrinimas, kuris apibrėžia technologinį, operacinį ir ekonominį duomenų bazės plano įgyvendinamumą. Čia svarbu paminėti ataskaitų paruošimą šiais klausimais: 1. Technologinis įgyvendinamumas. Ar yra technologija, reikalinga DB realizuoti? 2. Operacinis įgyvendinamumas. Ar kompanijoje yra personalas, resursai ir ekspertai, reikalingi sėkmingam DB plano įgyvendinimui? 3. Ekonominis naudingumas. Ar galima nustatyti naudą? Ar atsipirks suplanuota sistema?   Toliau žengiame prie reikalavimų nustatymo, į šį etapą įeina duomenų bazės tikslų pasirinkimas, informacinių reikalavimų nustatymas atskiriems padaliniams. Galiausiai, atlikus konceptualinį projektavimą, apie kurį jau buvo kalbama anksčiau, priėjome prie paskutinės duomenų bazės kūrimo stadijos – realizacijos. Realizaciją galima apibūdinti kaip žingsnius, kuriuos reikia įgyvendinti, kad paversti konceptualų modelį į funkcionuojančią duomenų bazę. Duomenų bazės realizacijos procese išsirenkamos duomenų bazių valdymo sistemos. Vėliau smulkus konceptualinis modelis verčiamas į duomenų bazės realizacijos projektą. Kuriami duomenų žodynai, duomenų bazė užpildoma duomenimis. Kuriamos taikomosios programos, apmokomi vartotojai. Galiausiai duomenų bazė vertinama ir tobulinama. Įvertinimas susideda iš vvartotojų apklausos, kad išsiaiškinti, kokie informaciniai poreikiai liko neįvertinti. Jei reikia, yra įnešami pakeitimai. Sukuriamas sistemos palaikymas pakeitimais, koregavimais ir papildymais, naujų duomenų elementų pridėjimas, atsižvelgiant į verslo plėtimąsi [1]. IŠVADOS Šiuolaikiniame pasaulyje organizacijos susiduria su žiauria konkurencija, todėl bet kurios organizacijoje naudojamos informacinės sistemos svarbiausias tikslas turėtų būti duomenų pavertimas informacija ir žiniomis, nes tik informacija ir žinios suteikia organizacijai konkurencinį pranašumą. Kaupti duomenis ir iš jų gauti informaciją bei žinias stengiasi kiekviena organizacija. Būtent duomenų bazės suteikia galimybe sukaupti milžiniškus duomenų kiekius prie kurių garantuojamas lengvas priėjimas. Atsakant į iškeltus tikslus darbe buvo išanalizuoti sekantys dalykai: Apibrėžta duomenų bazių ir jų valdymo sistemų funkcionavimo esmė; Aptarta duomenų bazės SQL užklausų kalbos ypatumai; Išnagrinėti duomenų bazės struktūros modeliai; Apibrėžtas esminiai duomenų bazės projektavimo etapai; Nustatyti duomenų bazės kūrimo ciklo žingsniai. Kai kurios temos buvo išanalizuotos, pateikiant konkrečius pavyzdžius. Duomenų bazės – tai vienas svarbiausių informacijos srauto apdorojimo, saugojimo ir pateikimo elementas, be kurio tiesiog neįmanoma įsivaizduoti šiuolaikinį informacijos technologijų pasaulį., šis darbas – tai dar vienas bandymas susistemintai paaiškinti duomenų bazių kūrimo technologijų ypatumus. //////////////////////////////////////////////////////////////////////////////////////////////////// PASKIRSTYTOS Disperguoti arba, jei ji yra teisinga skambinti, platinti duomenų bazė - tai tokia duomenų bazė, kuri apima kompiuterių sujungtų tinklu, kurių kiekvienas veikia vietinę duomenų bazę skaičių. Visų šių visuma programinės įrangos ir aparatūros sukuria bendra duomenų bazė. Platinama duomenų už atrodyti įprastos vietos duomenų bazėje, jų aparatūros disponavimo nematyti vartotojams. Platinama kontrolės sistema kontroliuoja visas saugojimo mazgai ir teikia duomenų ryšį. Kristofer Deyt, žinomas duomenų ekspertas pasaulio pripažinimą, nustatė dvylika pagrindinius bruožus, kurie turėjo visas Paskirstyta duomenų bazės: 1) vietos autonomijos, 2) nepertraukiamą, 3) nepriklausomų mazgai, 4) skaidri susiskaidymo, 5) iš vietos skaidrumą, 6) perdirbimo specifinius klausimus,, 7) skaidrūs replikacijos, 8) nepriklausomai nuo įrangos, 9), paskirstyta sandorių apdorojimas, 10) tinklo skaidrumas, 11) atskirai nuo operacinės sistemos 12), nepriklausomai nuo pasirinktų duomenų bazių. Apsvarstykite pagrindines savybes, kurios, atsižvelgiant į duomenų, turi visas Paskirstyta duomenų bazės, išsamiau. Vietos savivalda reiškia, kad kiekvienas vienetas savarankiškai valdo savo bazę duomenis. Nepertraukiamas veikimas. Šiuo metu K. data sakė, kad turėtų būti numatyta prieiga prie duomenų nuolat ir nepriklausomai nuo to, ar jie yra bet mazgas. Be to, ji neturėtų būti svarbu, kad bet koks veiksmas atliekamas tuo metu, kai vietinėje duomenų bazėje. Nepriklausomi mazgų. Idealiame sistemos, visi mazgai yra lygūs ir nepriklausomi vienas nuo kito. Kiekvienas duomenų įsikūręs ant mazgo pristato duomenis bendrą erdvę su tomis pačiomis teisėmis. Visi duomenų bazės, kurios sudaro paskirstytos duomenų bazės, autonominį ir apsaugotas nuo nesankcionuoto priėjimo. Skaidri fragmentacija. Ši funkcija reikalauja vidaus duomenų bazės pagalba platinamas vietą duomenų, kad yra vienas faktas. vieta skaidrumas. Vartotojai, kurie prieiga paskirstytų duomenų bazių, turėtų nieko nežino, apie kurią mazgas yra fiziškai galima jai reikalinga informacija. Platinama užklausų apdorojimą. Duomenų bazė turi atlikti platinamas užklausas SQL mėginyje. Skaidri replikacijos. Apskritai, cirkuliacinis - yra pasikeitusių objektų perkėlimo iš vienos duomenų bazės į kitą. Be šios medžiagos kontekste reiškia duomenimis tarp mazgų perkėlimas į būdų, kad būtų užtikrintas šių veiksmų naudotojui nematomumas. Techninė įranga nepriklausomumas reiškia, kad vartai platinami duomenų tinklas gali veikti bet kompiuterinius modelius. Apdorojimo paskirstytų operacijų yra traktuojama kaip būdas atnaujinti paskirstytos duomenų bazę, naudojant komandas UPDATE, DELETE, INSERT, per kurių vykdymas nėra prarastas vientisumą ir nuoseklumą saugomi duomenų bazėje informaciją. Nepriklausoma nuo operacinės sistemos prielaida, kad sistemos komponentai gali būti veikia bet operacinę sistemą. Tinklo skaidrumas reiškia, kad prieiga prie visų paskirstytos duomenų bazės elementų reikia tik tinklo ryšį. Nepriklausomumas nuo duomenų bazę. Tai svarbus bruožas sistemos reikalauja gebėjimo dirbti su visų paskirstytų duomenų bazių iš skirtingų pardavėjų, tarp jų galimybės turėtų būti prieinami paieškai ir atnaujinimus. Kaip matome, K. duomenų apibrėžimas paskirstytos duomenų bazės apibūdina jį kaip struktūros su silpnais obligacijas, susidedanti iš nepriklausomų mazgų, kurie yra vietiniai duomenų bazės. Tai savarankiška LBD ir suteikti prieigą prie paskirstytų duomenų bazių iš skirtingų pardavėjų. Mazgai sudaro ryšį tarp, kad yra Atkartojamu duomenys. Iš paskirstytų duomenų bazėje topologija sudaro geografinių informacinių sistemų ir duomenų replikacijos srautus. /////////////////////////////////////////////////////////////////////////////////////////////////// Skirtumas tarp paskirstytos ir centralizuotos duomenų bazės Paskirta duomenų bazė prieš centralizuotą duomenų bazę Centralizuota duomenų bazė yra duomenų bazė, kurioje duomenys saugomi ir prižiūrimi vienoje vietoje. Tai yra tradicinis duomenų saugojimo didelėse įmonėse metodas. Paskirstyta duomenų bazė yra duomenų bazė, kurioje duomenys kaupiami laikymo įrenginiuose, kurie nėra toje pačioje fizinėje vietoje, tačiau duomenų bazė yra valdoma naudojant centrinę duomenų bazių valdymo sistemą (DBVS).. Kas yra centralizuota duomenų bazė? Centralizuotoje duomenų bazėje visi organizacijos duomenys saugomi vienoje vietoje, pavyzdžiui, pagrindinio kompiuterio ar serverio. Atokiose vietose esantys vartotojai prieigą prie duomenų teikia per plačiajuosčio tinklo (WAN) tinklą, naudodamiesi taikomosiomis programomis, skirtomis prieigai prie duomenų. Centralizuota duomenų bazė (pagrindinis kompiuteris ar serveris) turėtų patenkinti visus į sistemą patenkančius prašymus, todėl lengvai gali tapti kliūtimi. Bet kadangi visi duomenys yra vienoje vietoje, lengviau prižiūrėti ir kurti atsargines duomenų kopijas. Be to, lengviau išlaikyti duomenų vientisumą, nes kai duomenys saugomi centralizuotoje duomenų bazėje, pasenę duomenys kitose vietose nebegalimi.. Kas yra paskirstyta duomenų bazė? Paskirstytoje duomenų bazėje duomenys saugomi atminties įrenginiuose, kurie yra skirtingose ​​fizinėse vietose. Jie nėra prijungti prie bendro procesoriaus, tačiau duomenų bazę valdo centrinė duomenų bazių valdymo sistema. Vartotojai gali pasiekti duomenis paskirstytoje duomenų bazėje naudodamiesi WAN (wide area network). Kad paskirstyta duomenų bazė būtų atnaujinta, joje naudojami replikacijos ir dubliavimo procesai. Replikacijos procesas nustato pakeitimus paskirstytoje duomenų bazėje ir juos taiko, kad įsitikintumėte, jog visos paskirstytos duomenų bazės atrodo vienodai. Atsižvelgiant į platinamų duomenų bazių skaičių, šis procesas gali tapti labai sudėtingas ir atima daug laiko. Kopijavimo procesas identifikuoja vieną duomenų bazę kaip pagrindinę duomenų bazę ir kopijuoja tą duomenų bazę. Šis procesas nėra sudėtingas kaip ir replikacijos procesas, tačiau įsitikinkite, kad visos paskirstytos duomenų bazės turi tuos pačius duomenis. Kuo skiriasi paskirstyta duomenų bazė nuo centralizuotos duomenų bazės?? Nors centralizuota duomenų bazė saugo savo duomenis saugojimo įrenginiuose, kurie yra vienoje vietoje, sujungtoje su vienu centriniu procesoriumi, paskirstytoji duomenų bazių sistema saugo savo duomenis saugojimo įrenginiuose, kurie galbūt yra skirtingose ​​geografinėse vietose ir yra valdomi naudojant centrinę DBVS. Centralizuotą duomenų bazę lengviau prižiūrėti ir nuolat atnaujinti, nes visi duomenys saugomi vienoje vietoje. Be to, lengviau išlaikyti duomenų vientisumą ir išvengti duomenų dubliavimo reikalavimo. Tačiau visas užklausas dėl prieigos prie duomenų tvarko vienas subjektas, pavyzdžiui, vienas pagrindinis kompiuteris, todėl jos lengvai gali tapti kliūtimi. Bet naudojant paskirstytas duomenų bazes, šios kliūties galima išvengti, nes duomenų bazės yra lygiagrečios, todėl krūvis subalansuotas tarp kelių serverių. Tačiau norint atnaujinti duomenis paskirstytoje duomenų bazių sistemoje, reikia atlikti papildomus darbus, todėl padidėja priežiūros ir sudėtingumo išlaidos, be to, tam reikalinga papildoma programinė įranga. Be to, paskirstytų duomenų bazių projektavimas yra sudėtingesnis nei tas pats, kai centralizuotos duomenų bazės. /////////////////////////////////////////////////////////////////////////////////////////////////////// Kas yra paskirstytos duomenų bazės valdymo sistema (ddbms)? - apibrėžimas iš techopedijos - Duomenų bazės - 2021 Apibrėžimas - ką reiškia paskirstytų duomenų bazių valdymo sistema (DDBMS)? Paskirstyta duomenų bazių valdymo sistema (DDBMS) yra kelių, logiškai tarpusavyje susijusių duomenų bazių, paskirstytų tinkle, rinkinys. Jie suteikia mechanizmą, kuris duomenų paskirstymą vartotojams padaro skaidrų. „Techopedia“ paaiškina paskirstytos duomenų bazės valdymo sistemą (DDBMS) DDBMS yra centralizuota programa, valdanti paskirstytą duomenų bazę. Ši duomenų bazės sistema periodiškai sinchronizuoja duomenis ir užtikrina, kad bet kokie vartotojų atlikti duomenų pakeitimai būtų visuotinai atnaujinami duomenų bazėje. DDBMS yra plačiai naudojamas duomenų saugyklose, kur daugybė vartotojų ar duomenų bazių klientų tuo pačiu metu tvarko ir pasiekia didžiulius duomenų kiekius. Ši duomenų bazių sistema naudojama duomenų valdymui tinkluose, konfidencialumui palaikyti ir duomenų vientisumui tvarkyti. Paskirstyta duomenų bazių valdymo sistema yra sukurta nevienalytėms duomenų bazių platformoms, kuriose pagrindinis dėmesys skiriamas nevienalytėms duomenų bazių valdymo sistemoms. ////////////////////////////////////////////////////////////////////////////////////////////////////// Apibrėžimas - ką reiškia paskirstytų duomenų bazių valdymo sistema (DDBMS)? Paskirstyta duomenų bazių valdymo sistema (DDBMS) yra kelių, logiškai tarpusavyje susijusių duomenų bazių, paskirstytų tinkle, rinkinys. Jie suteikia mechanizmą, kuris duomenų paskirstymą vartotojams padaro skaidrų. „Techopedia“ paaiškina paskirstytos duomenų bazės valdymo sistemą (DDBMS) DDBMS yra centralizuota programa, valdanti paskirstytą duomenų bazę. Ši duomenų bazės sistema periodiškai sinchronizuoja duomenis ir užtikrina, kad bet kokie vartotojų atlikti duomenų pakeitimai būtų visuotinai atnaujinami duomenų bazėje. DDBMS yra plačiai naudojamas duomenų saugyklose, kur daugybė vartotojų ar duomenų bazių klientų tuo pačiu metu tvarko ir pasiekia didžiulius duomenų kiekius. Ši duomenų bazių sistema naudojama duomenų valdymui tinkluose, konfidencialumui palaikyti ir duomenų vientisumui tvarkyti. Paskirstyta duomenų bazių valdymo sistema yra sukurta nevienalytėms duomenų bazių platformoms, kuriose pagrindinis dėmesys skiriamas nevienalytėms duomenų bazių valdymo sistemoms. ///////////////////////////////////////////////////////////////////////////////////////////////// Apibrėžimas - ką reiškia paskirstytų duomenų bazių valdymo sistema (DDBMS)? Paskirstyta duomenų bazių valdymo sistema (DDBMS) yra kelių, logiškai tarpusavyje susijusių duomenų bazių, paskirstytų tinkle, rinkinys. Jie suteikia mechanizmą, kuris duomenų paskirstymą vartotojams padaro skaidrų. „Techopedia“ paaiškina paskirstytos duomenų bazės valdymo sistemą (DDBMS) DDBMS yra centralizuota programa, valdanti paskirstytą duomenų bazę. Ši duomenų bazės sistema periodiškai sinchronizuoja duomenis ir užtikrina, kad bet kokie vartotojų atlikti duomenų pakeitimai būtų visuotinai atnaujinami duomenų bazėje. DDBMS yra plačiai naudojamas duomenų saugyklose, kur daugybė vartotojų ar duomenų bazių klientų tuo pačiu metu tvarko ir pasiekia didžiulius duomenų kiekius. Ši duomenų bazių sistema naudojama duomenų valdymui tinkluose, konfidencialumui palaikyti ir duomenų vientisumui tvarkyti. Paskirstyta duomenų bazių valdymo sistema yra sukurta nevienalytėms duomenų bazių platformoms, kuriose pagrindinis dėmesys skiriamas nevienalytėms duomenų bazių valdymo sistemoms. ////////////////////////////////////////////////////////////////////////////////////////////////////////////// Paskirstyta duomenų bazė reiškia duomenų bazę, kuri neapsiriboja viena sistema, bet yra išplitusi keliose svetainėse, t. Y. Keliuose serveriuose arba per serverių tinklą keliose vietose. Tai yra duomenų bazė, susidedanti iš dviejų ar daugiau failų. Be to, paskirstyta duomenų bazių sistema yra keliose svetainėse, kuriose nėra bendrų fizinių komponentų. To gali prireikti, jei skirtingi vartotojai visame pasaulyje turi pasiekti tam tikrą duomenų bazę tame pačiame tinkle arba visiškai skirtinguose tinkluose. Duomenų bazės dalis saugome keliose fizinėse vietose, taip pat paskirstome apdorojimą keliems duomenų bazių serveriams. Mes turime valdyti duomenų bazę taip, kad vartotojams ji būtų panaši į vieną duomenų bazė. Paskirstytos duomenų bazės architektūra Paskirstytos duomenų bazės gali būti vienodos arba nevienalytės. Vienarūšė duomenų bazė Vienarūšės paskirstytos duomenų bazių sistemos vartotojui atrodo kaip viena sistema, jas daug lengviau suprojektuoti ir valdyti. Tačiau norint, kad paskirstytos duomenų bazės sistema būtų vienalytė, duomenų struktūros kiekvienoje vietoje turi būti identiškos arba suderinamos. Duomenų bazės programa, kurią naudojame kiekvienoje vietoje, taip pat turi būti identiška arba suderinama. Vienarūšėje duomenų bazėje visos skirtingos svetainės duomenis saugo vienodai. Tai operacinė sistema, DBVS ir naudojamos duomenų struktūros taip pat yra vienodos visose svetainėse. Tai leidžia juos lengvai valdyti. Nevienalytė duomenų bazė Heterogeniškoje paskirstytoje duomenų bazėje kiekvienoje vietoje aparatinė įranga, operacinės sistemos ar duomenų bazės programos gali būti skirtingos. Skirtingos svetainės gali naudoti skirtingus duomenų modelius ir programinę įrangą. Skirtumas duomenų modelis skardinių perdirbimas vis dėlto užklausos apsunkinti. Tai gali sukelti problemų apdorojant operacijas. Svetainė taip pat gali būti nesuderinama arba visiškai nepažįstama kitų svetainių. Vienos vietos vartotojai gali skaityti duomenis kitoje vietoje, bet jų neįkelti ir modifikuoti. Norint išspręsti šias problemas, heterogeninei duomenų bazei reikalingi skirtingų svetainių vertimai, kad jie galėtų bendrauti. Heterogenines paskirstytas duomenų bazes dažnai sunku naudoti, todėl daugeliui įmonių jos yra ekonomiškai neįmanomos. Paskirstytas duomenų saugojimas Yra du būdai, kaip galima saugoti duomenis skirtingose ​​svetainėse. Šitie yra: Replikacija Duomenų bazių replikacija užtikrina, kad duomenys platinamose duomenų bazėse išliktų naujausiais. Kartojant, visi duomenys yra pertekliai saugomi 2 ar daugiau svetainių. Jei visa duomenų bazė yra saugoma visose svetainėse, mes kalbame apie visiškai nereikalingą duomenų bazę. Replikuodamos sistemos iš tikrųjų saugo duomenų kopijas. Replikuotus duomenis galime suskirstyti į dvi kategorijas: tik skaitomus ir rašomus duomenis. Tik skaitomos atkartotų duomenų versijos leidžia taisyti tik pirmajame svetainės serveryje. Tada duomenys koreguojami kituose tolesniuose serveriuose. Rašomus duomenis galima pakeisti, tačiau pirmasis svetainės serveris nedelsiant pasikeičia. A Turinio Pristatymas tinklas (CDN) pavyzdžiui, internetinėms svetainėms yra pagrįstas šiuo principu. Didelis to privalumas yra tas, kad duomenų prieinamumas skirtingose ​​vietose yra didelis. Tokiu būdu užklausos gali būti apdorojamos lygiagrečiai. Tačiau yra ir trūkumų. Duomenys turi būti nuolat atnaujinami. Bet kokie vienos svetainės pakeitimai turi būti perkelti į visas kitas svetaines, kitaip tai gali sukelti nenuoseklumų. Tai labai apkrauna sistemas ir tinklą. Be to, lygiagretumo patikra tampa daug sudėtingesnė, nes įrašai turi būti užrakinti visose svetainėse, kai prie jų prisijungiama vienu metu. Suskaidymas Taikant šį metodą, duomenys yra fragmentiški, tai yra, suskirstyti į mažesnes dalis. Fragmentai paskirstomi ir saugomi skirtingose ​​vietose, kur jie reikalingi. Fragmentai paskirstomi protingai, leidžiant juos panaudoti atkuriant pirminius duomenis, jei viena iš vietų sumažėja. Taigi duomenų neprarandama.  Suskaidymo pranašumas yra tas, kad mums nereikia daryti duomenų kopijų, o duomenų bazė išlieka nuosekli.  Todėl kai kuriais atvejais naudojamas hibridinis fragmentacijos ir replikacijos metodas. Paskirstyta duomenų bazių valdymo sistema (DDBMS) Centralizuota paskirstytų duomenų bazių valdymo sistema logiškai integruoja duomenis. Toks, kad vartotojas mano, kad visi duomenys yra saugomi toje pačioje svetainėje (su juo). DDBMS yra vienas DBVS kuris tiesiogiai arba periodiškai sinchronizuoja visus duomenis ir užtikrina, kad visi įrašai, atnaujinimai ir ištrynimai, kurie atliekami svetainėje, automatiškai vykdomi kitur saugomuose duomenyse. Tačiau centralizuota duomenų bazė turi tik vieną duomenų bazės failą, esantį vienoje svetainėje ir pasiekiamą per vieną tinklą. Paskirstytų duomenų bazių ypatybės • Jei platinamų duomenų bazių rinkinys yra logiškai susipynę, jie iš esmės sudaro vieną loginę duomenų bazę. • Kiekvienos svetainės serveriai yra prijungti per tinklą, tačiau neturi daugiaprocesorinių funkcijų. • Operacija yra nepriklausoma nuo aparatūros. • Išplatinta duomenų bazė fiziškai saugo duomenis keliose svetainėse ir tvarko juos savarankiškai. • Operacija nepriklauso nuo operacinės sistemos. • Operacija nepriklauso nuo tinklo. • Galiausiai, operacija nepriklauso nuo DBVS. Paprastai paskirstytosios duomenų bazės apima šias funkcijas: • Galimybė dirbti savarankiškai. • Paskirstytas užklausų apdorojimas. • Distributed transaction processing. • Transakcijos skaidrumas. Išplatintos duomenų bazės privalumai Paskirstytos duomenų bazės naudojimas suteikia daug privalumų. • Jei centralizuotoje duomenų bazėje yra gedimų, sistema visiškai sustoja. Tačiau, jei komponentas sugenda paskirstytoje duomenų bazės sistemoje, sistema toliau veiks su mažesniu našumu, kol bus pašalinta klaida. • Paskirstytos duomenų bazių sistemos leidžia mums pasiekti mažesnes prisijungimo išlaidas, kai duomenys yra arčiausiai tos vietos, kuri juos labiausiai naudoja. Tai neįmanoma centralizuotoje sistemoje. • Mes galime moduliškai kurti paskirstytas duomenų bazes. Tai reiškia, kad galime išplėsti sistemas, įtraukdami naujus serverius ir vietinius duomenis į naują svetainę ir prijungdami juos prie paskirstytos sistemos. Programinė įranga ir duomenų bazė kartu sudaro sistemą Paplitusi klaidinga nuomonė, kad paskirstyta duomenų bazė yra susieta atskira failų sistema. Tiesą sakant, tai yra daug sudėtingiau nei tai. Paskirstytos duomenų bazės dažnai yra sudėtingos operacijų apdorojimo sistemos dalis, tačiau nėra operacijų apdorojimo sistemų sinonimas. ////////////////////////////////////////////////////////////////////////////////////////////////// Paskirstyta duomenų bazė ir centralizuota duomenų bazė Centralizuota duomenų bazė yra duomenų bazė, kurioje duomenys saugomi ir tvarkomi vienoje vietoje. Tai yra tradiciniai būdai saugoti duomenis didelėe įmo Paskirstyta duomenų bazė ir centralizuota duomenų bazė Centralizuota duomenų bazė yra duomenų bazė, kurioje duomenys saugomi ir tvarkomi vienoje vietoje. Tai yra tradicinis būdas saugoti duomenis didelėse įmonėse. Paskirstyta duomenų bazė yra duomenų bazė, kurioje duomenys saugomi saugojimo įrenginiuose, kurie nėra toje pačioje fizinėje vietoje, tačiau duomenų bazė valdoma naudojant centrinę duomenų bazių valdymo sistemą (DBVS). Kas yra centralizuota duomenų bazė? Centralizuotoje duomenų bazėje visi organizacijos duomenys yra saugomi vienoje vietoje, pavyzdžiui, pagrindiniame kompiuteryje ar serveryje. Vartotojai atokiose vietovėse prieina duomenis per plačiajuostį tinklą (WAN) naudodamiesi taikomosiomis programų programomis, kad galėtų pasiekti duomenis. Centralizuota duomenų bazė (pagrindinis kompiuteris arba serveris) turėtų galėti patenkinti visas į sistemą gaunamas užklausas, todėl gali lengvai tapti kliūtimi. Bet kadangi visi duomenys yra vienoje vietoje, juos lengviau išlaikyti ir kurti atsargines duomenų kopijas. Be to, lengviau išlaikyti duomenų vientisumą, nes kai duomenys bus saugomi centralizuotoje duomenų bazėje, pasenę duomenys nebebus prieinami kitose vietose. Kas yra paskirstyta duomenų bazė? Išplatintoje duomenų bazėje duomenys saugomi saugojimo įrenginiuose, esančiuose skirtingose ​​fizinėse vietose. Jie nėra prijungti prie bendro procesoriaus, tačiau duomenų bazę valdo centrinė DBVS. Vartotojai prieigą prie duomenų paskirstytoje duomenų bazėje pasiekia WAN. Kad atnaujinta paskirstyta duomenų bazė būtų atnaujinta, ji naudoja replikavimo ir dubliavimo procesus. Replikacijos procesas nustato paskirstytos duomenų bazės pakeitimus ir taiko tuos pakeitimus, kad įsitikintų, jog visos paskirstytos duomenų bazės atrodo vienodos. Priklausomai nuo paskirstytų duomenų bazių skaičiaus, šis procesas gali tapti labai sudėtingas ir užimantis daug laiko. Dubliavimo procesas identifikuoja vieną duomenų bazę kaip pagrindinę duomenų bazę ir dubliuoja tą duomenų bazę. Šis procesas nėra sudėtingas kaip replikavimo procesas, tačiau užtikrina, kad visos paskirstytos duomenų bazės turėtų tuos pačius duomenis. Kuo skiriasi paskirstyta duomenų bazė ir centralizuota duomenų bazė? Nors centralizuota duomenų bazė saugo savo duomenis saugyklose, esančiose vienoje vietoje, sujungtoje su vienu procesoriumi, paskirstyta duomenų bazių sistema saugo savo duomenis saugyklose, kurios galbūt yra skirtingose ​​geografinėse vietose ir valdomos naudojant centrinę DBVS. Centralizuotą duomenų bazę lengviau prižiūrėti ir nuolat atnaujinti, nes visi duomenys saugomi vienoje vietoje. Be to, lengviau išlaikyti duomenų vientisumą ir išvengti reikalavimo dubluotis. Bet visas užklausas, skirtas prieigai prie duomenų, apdoroja vienas subjektas, pvz., Vienas pagrindinis kompiuteris, todėl tai gali lengvai tapti kliūtimi. Tačiau naudojant paskirstytas duomenų bazes, šio trūkumo galima išvengti, nes duomenų bazės yra lygiagrečios, todėl apkrova yra subalansuota tarp kelių serverių. Tačiau norint nuolat atnaujinti duomenis paskirstytoje duomenų bazių sistemoje reikia papildomų darbų, todėl padidėja priežiūros ir sudėtingumo sąnaudos, taip pat šiam tikslui reikalinga papildoma programinė įranga. Be to, paskirstytos duomenų bazės kūrimas yra sudėtingesnis nei tas pats centralizuotai duomenų bazei. ///////////////////////////////////////////////////////////////////// Tikslinga PDBS lyginti su paprastomis DBS. Visi PDBS privalumai yra susiję su DB paskirstymu tinkle. Galima išskirti tokius privalumus: Skaidrus paskirstytų, fragmentuotų ir replikuotų duomenų valdymas – vartotojas bendraudamas su PDBS nemato paskirstymo. Vartotojui PDBS atrodo kaip viena didelė DB tinkle, nors realiai tinkle yra tinklo mazgai su savo PDBS dalimis. Potencialiai didesnis patikimumas dėl paskirstytų transakcijų – vieno mazgo išėjimas iš rikiuotės nesugadina visos sistemos (savaime suprantama, jei PDBS atitinkamai suprojektuota). Potencialiai našesnės (greitesnės) – užklausas galima vykdyti lygiagrečiai skirtinguose tinklo mazguose. Toks lygiagretumas reikalauja kuo didesnės duomenų replikacijos. Lengvesnis ir pigesnis sistemų plėtimas – personaliniai kompiuteriai pigesni nei dideli ir galingi pagrindiniai serveriai (angl. mainframe). Kaip vieną sėkmingiausių tokių paskirstytų sistemų pavyzdį galima būtų paminėti „Google“ paieškos sistemą, realizuotą daugybės personalinių kompiuterių, paskirstytų po visą pasaulį, pagrindu. Potencialūs PDBS privalumai savo ruožtu sukelia ir tų privalumų realizavimo problemas. Visas tokias kylančias problemas galima suskirstyti 5 sprndžiamų problemų grupes: Duomenų organizacija – fragmentacija, paskirstymas, duomenų pertekliškumas (replikacijos). Užklausų vykdymas – vartotojų transakcijų pavertimas į duomenų manipuliavimo instrukcijas, optimizacijos problemos, duomenų persiuntimo ir apdorojimo kaštų mažinimas. Duomenų saugumo kontrolė (semantinė duomenų kontrolė). Egzistuojančio ar planuojamo geografinio duomenų paskirstymo – egzistuojantis duomenų geografinis pasiskirstymas ar paskirstyta organizacijos struktūra verčia rinktis PDBS architektūrą. Našumo reikalavimų – turint vietoje dažniausiai reikalingus duomenis galima juos apdoroti greičiau. Kaštų struktūros – kurie kaštai – duomenų persiuntimo, ar saugojimo – mažesni. Dažniausiai naudojamų duomenų turėjimas vietoje leidžia sutaupyti duomenų persiuntimo brangesniais tolimų ryšių tinklais sąskaita. Duomenų bazių projektavimas sudėtingas procesas, kurio tikslas – nuspręsti kur saugoti duomenis ir programas kompiuteriniame tinkle. Tai kartais apima ir pačio tinklo projektavimą. Išskiriamos dvi PDBS kūrimo strategijos: projektavimas iš viršaus į apačią (angl. Top-Down design) ir projektavimas iš apačios į viršų (angl. Bottom-Up design). Iš viršaus į apačią projektuojama tuomet, kai sistema kuriama nuo pradžios, ar kai turima centralizuota DBS ir ją ruošiamasi paskirstyti, t.y. turimas homogeniškas duomenų modelis analizuojamas ir projektuojant PDBS skirstomas geografiškai. Iš apačios į viršų projektuojama tuomet, kai jau turima kelios išskirstytos duomenų bazių sistemos ir jas norima apjungti į vieną paskirstyta duomenų bazių sistemą. Tuomet duomenų modelis iš pat pradžių sudaromas įvertinant egzistuojančius ribojimus ir tik po to analizuojamas ir optimizuojamas. Paskirstytų duomenų bazių projektavimas turi sėkmingai išspręsti visas skyriaus pradžioje paminėtas problemas. Toliau detalizuojamos šios problemos ir analizuojamos jų sprendimo alternatyvos. Šie klausimai labai panašūs ir dažnai nagrinėjami kartu. Verta pažymėti, kad fragmentų skaičius nebūtinai lygus PDBS mazgų skaičiui. Pagrindinė fragmentacijos užduotis – padalinti duomenis į fragmentus taip, kad vėliau fragmentus būtų galima paskirstyti tarp tinklo mazgų taip, kad vienos užklausos vykdymas vyktų viename mazge. Duomenų fragmentaciją reliacijoje galima vykdyti pagal atributus (vertikali fragmentacija (VF)) arba pagal kortedžus (horizontali fragmentacija (HF)): Paskirstytąją duomenų bazę (PDB) galima apibūdinti kaip „daugialypių logiškai susietų duomenų bazių, paskirstytų kompiuterio tinkle, rinkinį“, o pasiskirstytųjų duomenų bazių valdymo sistemą (PDBVS) – kaip „programinę sistemą, valdančią pasiskirstytąją duomenų bazę, išlaikant paskirstymo skaidrumą vartotojo atžvilgiu“. PDBVS teoriškai pasižymi lankstumu ir galingumu, kurių neturi centralizuota sistema. Apačioje pateikiamas paskirstytosios duomenų bazės konfigūracijos pavyzdys. Čia mes turime kelias geografiškai atskirtas vietas, kiekvienoje kurių veikia galiojančios atskiros duomenų bazių sistemos. Egzistuoja tam tikras diskrečiųjų fizinių duomenų bazių rinkinys, kuris, kartu funkcionuojant atskiriems kompiuteriams, tampa viena stambia virtualia duomenų baze. Kiekviena vietinė duomenų bazė saugo duomenis, labiausiai aktualius ir naudojamus vietos vartotojų, tačiau esant reikalui galima visuomet pasiekti nuotolinę duomenų bazę Pasiskistytosios duomenų bazės turi kelis pranašumus prieš įprastas centralizuotas duomenų bazes: Didesnis pasiekiamumas Duomenų bazės yra patikimesnės, nes mažiau remiamasi vienu centriniu kompiuteriu. Paskirstytoji sistema vieno kompiuterio gedimo atveju gali perleisti bazės dalys yra laikomos atskirose vietose, mažiau tikėtina, kad kils užrakinimo ar nesutarimo problemų, kurios trikdytų prieigą. Didesnė prieigos sparta Kai stambi duomenų bazė yra paskirstoma per kelias vietas, kiekviena sudedamoji duomenų bazė būna mažesnė ir greičiau reaguoja į užklausas. Be to, kiekvienai smulkesnei duomenų bazei užklausas teiks mažesnis vartotojų skaičiaus nei būtų vienos stambios duomenų bazės atveju. Plėtros palengvinimas Paskirstytoje sistemoje lengviau įrengti papildomus procesorius ar padidinti duomenų bazės dydį. Žinoma, šie patobulinimai turi savo kainą. Paskirstytosios duomenų bazės turi kelis trūkumus: Padidėjęs sudėtingumas Paskirstytąją duomenų bazę valdyti daug sudėtingiau nei centralizuotą. DBVS turi sutraukti duomenis iš kelių vietų, sinchronizuoti besidubliuojančius duomenis ir subalansuoti atskiriems mazgams tenkančias apdorojimo apkrovas. Be to, išauga procedūrų sudėtingumas, kadangi keliose atskirose vietose gali dirbti keli duomenų bazių administratoriai. Padidėjęs saugyklos poreikis Kai kuriems paskirstytiesiems modeliams reikia dubliuoti tam tikrus duomenis. Egzistuoja du atskiri paskirstytosios duomenų bazės aspektai: apdorojimo apskirstymas ir duomenų saugojimo paskirstymas. Paskirstytojo apdorojimo principu duomenų bazės apdorojimo užduotys paskirstomos dviem arba keliems tinklo mazgams. Pavyzdžiui, pagal paskirstytąjį apdorojimą užklausų teikimo ir duomenų tvirtinimo procedūros gali būti vykdomos viename kompiuteryje, o rezultatų atskaitų generavimas – kitame. Paskirstytasis duomenų saugojimas – tai įmonės duomenų saugojimas keliose logiškai susietose vietose. Siekiant tai atlikti, duomenys turi būti padalijami į tam tikrą skaičių duomenų bazės fragmentų, kurie yra paskirstomi dalyvaujančioms darbo vietoms. Priklausomai nuo konfigūracijos, šie fragmentai tam tikru lygiu gali dubliuotis (tačiau nebūtinai).

Daugiau informacijos...

Šį darbą sudaro 12960 žodžiai, tikrai rasi tai, ko ieškai!

★ Klientai rekomenduoja


Šį rašto darbą rekomenduoja mūsų klientai. Ką tai reiškia?

Mūsų svetainėje pateikiama dešimtys tūkstančių skirtingų rašto darbų, kuriuos įkėlė daugybė moksleivių ir studentų su skirtingais gabumais. Būtent šis rašto darbas yra patikrintas specialistų ir rekomenduojamas kitų klientų, kurie po atsisiuntimo įvertino šį mokslo darbą teigiamai. Todėl galite būti tikri, kad šis pasirinkimas geriausias!

Detali informacija
Darbo tipas
Lygis
Universitetinis
Failo tipas
Word failas (.docx)
Apimtis
47 psl., (12960 ž.)
Darbo duomenys
  • Duomenų bazių konspektas
  • 47 psl., (12960 ž.)
  • Word failas 191 KB
  • Lygis: Universitetinis
www.nemoku.lt Atsisiųsti šį konspektą
Privalumai
Pakeitimo garantija Darbo pakeitimo garantija

Atsisiuntei rašto darbą ir neradai jame reikalingos informacijos? Pakeisime jį kitu nemokamai.

Sutaupyk 25% pirkdamas daugiau Gauk 25% nuolaidą

Pirkdamas daugiau nei vieną darbą, nuo sekančių darbų gausi 25% nuolaidą.

Greitas aptarnavimas Greitas aptarnavimas

Išsirink norimus rašto darbus ir gauk juos akimirksniu po sėkmingo apmokėjimo!

Atsiliepimai
www.nemoku.lt
Dainius Studentas
Naudojuosi nuo pirmo kurso ir visad randu tai, ko reikia. O ypač smagu, kad įdėjęs darbą gaunu bet kurį nemokamai. Geras puslapis.
www.nemoku.lt
Aurimas Studentas
Puiki svetainė, refleksija pilnai pateisino visus lūkesčius.
www.nemoku.lt
Greta Moksleivė
Pirkau rašto darbą, viskas gerai.
www.nemoku.lt
Skaistė Studentė
Užmačiau šią svetainę kursiokės kompiuteryje. :D Ką galiu pasakyti, iš kitur ir nebesisiunčiu, kai čia yra viskas ko reikia.
Palaukite! Šį darbą galite atsisiųsti visiškai NEMOKAMAI! Įkelkite bet kokį savo turimą mokslo darbą ir už kiekvieną įkeltą darbą būsite apdovanoti - gausite dovanų kodus, skirtus nemokamai parsisiųsti jums reikalingus rašto darbus.
Vilkti dokumentus čia:

.doc, .docx, .pdf, .ppt, .pptx, .odt