Download - 2 Koliokviumo Klausimai 2015 (2)
Klientas
Pardavimas
Produktas
Gamintojas
Produktas
2 Koliokviumo klausimai
1. Duomenų bazių realizavimo algoritmai hierarchinis
o Medžio struktūra.o Problema: galima peržiūrėti DB tik nuo nuo viršaus (kokias prekes gamina
gamintojas X). Tačiau jei reikia atrinkti, kokie gamintojai gamina prekę1, reikia peržiūrėti visą DB.
tinklinis o Tai hierarchinės DB, papildytos elementų tarpusavio ryšiais.o Pirmosios komercinės DB buvo tinklinės - IBM IMS (1960)
reliacinis o Paprasčiausios ir populiariausios DB, kuriose yra naudojamos griežtai apibrėžtos ir
nekintamo dydžio struktūros - lentelės. deduktyvus objektinis
o tai DB, saugančios objektus - duomenis, su kuriais susieti tam tikri veiksmai. (pvz. objektas viršininkas turi susietą veiksmą atleisti darbuotoją).
o Nėra dar tiek smarkiai išpopuliarėjusios dėl savo sudėtingumo, tačiau itin patogios žmonėms ir analizei.
objektinis-reliacinis dimensinis (duomenų saugyklos)
2. Reliacinių DB realizavimo algoritmas1970 Duomenų modelį pasiūlė Edgaras Kodas. Reliacinėse DBVS visi duomenys saugomi lentelėse, sudarytose iš stulpelių ir eilučių. Viena lentelės eilutė atitinka vieną duomenų įrašą. Įrašo lauko reikšmės saugomos atitinkamos eilutės ir stulpelio sankirtoje. Lentelių (esybių) tarpusavio ryšiai yra vaizduojami esybių ryšių diagramose.Esybių (lentelių) kūrimas, duomenų pildymas, paieška ir keitimas yra vykdomas standartizuotos kalbos SQL (Structured Query Language) pagalba.
Klientas id vardas adresas
Gamintojas id pavadinimas adresas
Pardavimas id kliento_id data komentaras
Produktas id gamintojo_id pavadinimas kaina
Pardavimo_Vienetas pardavimo_id produkto_id kiekis kaina
3. Tinklinių DB realizavimo algoritmasTinkliniame modelyje įrašams yra leidžiama turėti daugiau kaip vieną tėvą. Tinklinis modelis leidžia daug lanksčiau konstruoti sąryšius tarp esybių. Jame išvengiama pasikartojančių įrašų. Tinkliniame, kaip ir hierarchiniame, duomenų modelyje išlaikoma greita navigacija tarp tiesiogiai susietų įrašų.-
4. Objektinių DB realizavimo algoritmasObjektiniame modelyje informacija yra saugoma objektuose, lygiai taip pat, kaip ir objektiškai orientuotose programavimo (OOP) kalbose. OOP savybės sujungiamos su DBVS galimybėmis, gaunama objektinė duomenų bazių valdymo sistema (ODBVS). ODBVS trūkumai - skirtingų gamintojų tarpusavio produktų nesuderinamumas.
5. Codd’o terminologija
6. DB terminologija
7. DB prikabintos procedūros – (Stored procedures)Tai procedūros, saugomos kartu su DB ir yra vykdomos serverio, o ne klientinėje dalyje.
8. Transakcijų sąvokaNeskaidoma logiškai veiksmų seka, atliekama modifikuojant DB. Pvz. pridedama nauja prekė į sandėlį. Šis veiksmas susideda iš:
a) į sandėlio prekių sąrašą įterpiama prekė ir susiejama su gamintojų lenteleb) jeigu gamintojas naujas - įterpiamas įrašas į gamintojų lentelę.
Transakcijos pasižymi atsukimo galimybe (rollback), kuri leidžia į DB įvesti tik visiškai logiškai pilnus pakeitimus. Jeigu juos vykdant iškyla kliūtys, tai visi pakeitimai tiesiog atšaukiami. Transakcijas paprastai palaiko tik galingos Enterprise klasės DBVS.
9. Atributų sąvokaLentelės stulpelis arba reliacinio duomenų modelio elementas, galintis įgyti įvairias reikšmes iš tam tikros apibrėžtos reikšmių aibės.Pvz. Kaina (skaitinė reikšmė, Litais), kodas (penkiaženklis skaičius), amžius, pavadinimas
10. MIB sąveika su SNMP Tinklo administravimas vyksta tarp dviejų pagrindinių sistemų tipų: tų kurios kontroliuoja
(administruojančios sistemos) ir tų kurios yra kontroliuojamos (administruojamos sistemos). Pati bendriausia administravimo sistema yra vadinama tinklo administravimo sistema (NMS-Network management system).
Administruojamos sistemos gali būti sudarytos iš serverių, įvairių tinklo komponentų, tokių kaip maršrutizatorių, komutatorių ir kitų intelektualių IT tinklo įrenginių.
Suderinamumo užtikrinimui, tarpusavyje bendraujančios sistemos privalo laikytis bendros struktūros ir bendros kalbos, vadinamos protokolu. Interneto tinklo administravimo struktūroje, šis protokolas vadinamas paprastu tinklo administravimo protokolu (SNMP – simple network management protocol).
Administruojamo įrenginio specializuoti programiniai moduliai (agentai), renka informaciją apie įrenginio darbą ir teikia šią informaciją tinklo administravimo sistemai (NMS). Renkama ir teikiama informacija gali būti įvairi. Pvz.: agentas gali teikti perduotų ir gautų paketų, pranešimų ar baitų skaičių.
Visi administruojami objektai laikomi patalpinti administravimo informacinėje bazėje - MIB. Administruojami objektai ir kintamieji gali būti keičiami ar skaitomi, perduodant informaciją kitiems tinklo įrenginiams.
Tinklo administravimo sistema (NMS) gali kontroliuoti įrenginius, perduodama pranešimus kontroliuojamo įrenginio agentams ir liepdama pakeisti vieno ar kelių kintamųjų reikšmes.
Kai NMS nori gauti informacijos apie tinklo elementą jis privalo turėti būdą apsprendžiantį kokia informacija jam prieinama ir ką ji reiškia. Tam ir yra skirta MIB. MIB nebūdama baze yra loginis duomenų grupavimo būdas, tam kad jie būtų suprantami NMS.
Kuriant MIB apibrėžiami ir aprašomi duomenų objektai, kurie gali būti reikalingi NMS. Taip pat derinami duomenų objektai ir produkto komponentai, gaunamas produkto apibūdinimas, kuris gali būti suprantamas kaip paprastas MIB. Taigi MIB nėra reikšmių, yra tik objektų apibūdinimas.
Apibendrinant SNMP, MIB ir NMS tarpusavio sąveiką galima pavaizduoti grafiškai.
11. Objektinės schemos
Objektinės specifikacijų kalbos
Viena iš šių kalbų yra ODL (Object Definition Language). Jos sintaksės bazei buvopanaudota OMG interfeiso aprašymo kalba IDL (Interface Definition Language). ODLyra naudojama duomenų bazės schemos apibrėžimui. Ši schema gali būti naudojamaįvairiose duomenų bazėse ir yra nepriklausoma nuo programavimo kalbos.Kita specifikacijų kalba yra OIF (Object Interchange Format), kuri gali būti naudojamaobjektų apsikeitimui tarp duomenų bazių, kuriant duomenų bazės dokumentaciją arvykdant duomenų bazės testus.12. MIB sąvokos interpretavimas
MIB sąvoką galima traktuoti dvejopai:Plačiąja prasme kalbant apie MIB reikėtų suvokti, kad egzistuoja tik vienas SNMP MIB. Visi kiti atskirai minimi MIB iš tiesų yra tik pastarojo praplėtimai ar sudedamosios dalys, tai matoma ir iš toliau pateikiamų MIB struktūrinių schemų. Taip pat MIB savo ruožtu nėra duomenų bazė, ji nelaiko duomenų.
Siaurąja prasme MIB galime vadinti, įrenginį apibūdinančių objektų identifikatorių ir kintamųjų rinkinį. Šia prasme žiūrint MIB savo turiniu yra ASCII formato tekstinė byla, parašyta naudojant SMI sintaksę.
13. MIB medis
14. MIB šakosMIB struktūra logiškai išdėstoma medžio principu. Medis paprastai neturi pavadinimo, jis skaidomas į 3 pagrindines šakas.
1. Consultative Committee for International Telegraph and Telephone (CCITT), 2. International Organization for Standardization (ISO),3. ISO/CCITT.
Šios šakos ir toliau besišakojančios į atskiras kategorijas turi trumpas tekstines eilutes ir skaitines reikšmes jų identifikavimui. Tekstinės eilutės aprašo objektų vardus, tuo metu kai skaitinės reikšmės leidžia kurti trumpus koduotus vardų atitikmenis. Antrame paveikslėlyje parodyta tik pati MIB hierarchijos viršūnė, platesnį vaizdą apie MIB medžio struktūrą galima susidaryti pažvelgus į pridedamas MIB-I, MIB-II ir Cisco MIB struktūrines schemas
15. MIB architektūra
16. MIB sąveika su “Menedžeriu ir Agentu”
17. MIB-1 ir MIB-2 funkciniai panašumai ir skirtumaiMIB laikui einant evoliucionavo. MIB-I buvo pirmasis MIB priimtas standartu. MIB-II savo ruožtu pridėjo kai kuriuos reikalingus objektus ir tapo standartu. Reikia pastebėti, kad SNMPv2 išplečia MIB-II naujomis grupėmis ir objektais, tačiau pats nėra MIB-II.MIB-II taip pat yra pakankamai senas ir didžioji jo dalis yra atnaujinta.
18. MIB kintamųjų nuoseklumasAdministruojami objektai ir kintamieji gali būti keičiami ar skaitomi, perduodant informaciją kitiems tinklo įrenginiamsTCP grupėje pridėti du nauji kintamieji: tcpInErrs, tcpOutRsts
BMBiznio lygmuo
SMPaslaugų lygmuo
NMTinklo valdymo lygmuo
EMElementų valdymo lygmuo
Menedžerio/Agento koncecija
Menedžeris AgentasSąveika
Direktyvos
Pranešimai
Vykdomos direktyvos
Valdomoji operacinė sistema Valdančioji operacinė sistema
19. MIB sąveika su NMSTinklo administravimo sistema (NMS) gali kontroliuoti įrenginius, perduodama pranešimus kontroliuojamo įrenginio agentams ir liepdama pakeisti vieno ar kelių kintamųjų reikšmes.Kai NMS nori gauti informacijos apie tinklo elementą jis privalo turėti būdą apsprendžiantį kokia informacija jam prieinama ir ką ji reiškia. Tam ir yra skirta MIB. MIB nebūdama baze yra loginis duomenų grupavimo būdas, tam kad jie būtų suprantami NMS.
20. MIB sąveika su IOSTinklo valdymo sistemos (Network Management System) funkcijos:-ryšio -multipleksorių prieigos-perdavimo sekcijos-monitoringo-tinklo topologijos valdymo-lygmens informacijos apdorojimo
MIB-komponentės
Aprašymas
SystemInterfacesAddr. trans.IpIcmpTcpUdpegp
PC arba maršrutizatoriaus OS Tinklinė sąsajaAdreso keitimas (pvz. naudojant ARP)Programa palaikanti Internet protokoląPrograma palaikanti protokolą ICMP Programa palaikanti protokolą TCP Programa palaikanti protokolą UDP Programa palaikanti protokolą EGP
21. Reliacinė algebraOperacijų su lentelėmis sistema - reliacinė algebra. Reliacine algebra - formali operacijų kalba (sistema), kuria iš lentelių, nekeičiant jų turinio, galima gauti kitas lenteles.Operacijos rezultatas - lentelė. Galima konstruoti reliacinės algebros reiškinius. Visas pagrindines reliacines operacijas realizuoja SQL sakinys SELECT.
22. SQL kalba• SQL - Standard Query Language - Standartizuota užklausų kalba, sukurta D. Chamberlin 1974,
IBM.
• Ši užklausų programavimo kalba naudojama kliento-serverio DB sistemose duomenų paieškai ir modifikacijai.
• Beveik visos šiuolaikinės reliacinės DBVS palaiko SQL, kai kurios iš jų grįstos SQL (MySQL, MS SQL Server).
23. DBVS paskirtis ir funkcijosDBVS - Duomenų bazių valdymo sistema(DBMS - Database Management System)
tai programų rinkinys, leidžiantis vartotojui sukurti ir palaikyti DB.• Pvz. Oracle, Informix, MySQL, Foxpro, DB_Vista, MS Access, Sybase.
24. DBVS klasifikavimas ir savybės Duomenų abstrahavimas Bazinė DB struktūra Daugiavartotojiškumas
Duomenų pasidalinimasSinchronizacijaTransakcijos
Vartotojų įvairovėDB AdministratoriaiDB dizaineriaiGalutiniai vartotojai
Įvairūs būdai susiejimui su sistema Užklausos kalbos Programavimo kalbos
Formos ir komandų suvedimo galimybėsMeniu
Informacijos patikimumas dubliuojant Informacijos saugumas Rezervinis kopijavimas ir atstatymas
25. DBVS raida Pirmoji rimta PC RDBVS sėkmė
dBaseII ant CP/M 1970’tais1981 perkelta ant DOS
Pirmoji Mainframe DBVSOracle 1979IBM: SQL/DS 1981IBM: DB2 1983
Ankstyvosios serverinės DBVS Oracle (dominavo UNIX ir VMS rinkose)
SybaseINGRES
Galutinio vartotojo DBVS ($100 - $340 vartotojui) MS Access
Lotus ApproachBorland ParadoxVisual dBaseVisual FoxProEnterprise DBVS (kliento-serverio sistemoms ir mainframams) (~$40K korporacijai, $4 - $8K mažai įmonei) Oracle SybaseDB2/2MS SQL Server
26. DB sąveika su vartotojais
D B ad m in is tra to riu s
P o r e ik ia i
In fo r m a c ija
D B sta n d a r tin ė sir in d iv id u a lio s
p r o g r a m o s
V a r to to jųp r o g r a m o s
D B V S
P ro g ram in ė įran g a
p o r e ik is
d u o m e n y s F D B
27. DB realizavimo etapai ir vykdytojai• DB dizaineris
– projektuoja DB (struktūras, sąveiką tarp jų), – programuoja DB ir jos dalių sąveiką
• DB administratorius– užtikrinti DB patikimumą,– DB saugumą,– duomenų pilnumą ir suderinamumą
• DB vartotojas – Naudojasi DB informacija:
Peržiūri Koreguoja Vykdo paiešką28. DBVS sąveikos sąsajos
• Meniu grįstas• Grafinės sąsajos• Formomis grįstos sąsajos• Natūralios kalbos sąsajos• Funkciniai klavišai
29. Codd’o taisyklės reliacinėms DBV Visa informacija DB turi būti tiktai lentelėse. Kiekvienas lentelės elementas turi būti unikaliai identifikuojamas ir pasiekiamas nurodant lentelės
vardą, pirminį raktą ir stulpelio vardą (t.y. negali būti dublikatų) Turi būti NULL duomenų reikšmė, žyminti, kad lauke nėra duomenų. DB aprašai turi būti saugomi ir pasiekiami Reliacinėse duomenų lentelėse, analogiškuose pačių
aprašytoms DB. Turi būti naudojama konkreti DB valdymo aprašymo kalba (populiariausia - SQL). Vaizdai (Views) atnaujinami pakitus lentelėms. Papildymas, modifikavimas ir šalinimas turi būti ne tik įrašų , bet ir visos lentelės lygmenyje. Fizinė duomenų nepriklausomybė. Loginė duomenų nepriklausomybė. DB vientisumo nepriklausomybė (pirminio rakto prasmingumas: null ir užsienio rakto atitikimas) DB gali būti distributyviai paskirstyta ar perskirstyta ir tai neturi paveikti DB programų. Žemesnės kalbos programos negali apeiti aukštesnės kalbos aprašų.30. Klientas-serveris sąveika DB (Esybes ir asociacijos savokos)
Asociacijos padeda susieti kelias esybes ryšiu “asociacijos_pavadinimasEsybės — tai modeliuojamosios srities objektai, kurie mus domina sistemos modeliavimo prasme ir kuriems mes norime priskirti kurias nors jų savybes.