Računalniki Windows internet

Primer objektno usmerjenega podatkovnega modela. Objektno usmerjen model baze podatkov. Nezadostna podpora za kompleksne objekte

Objektno usmerjeni podatkovni model je razširitev določil objektno usmerjenega programiranja (medtem ko je relacijski model nastal na podlagi teorije množic, ravno kot podatkovni model). Standard ODMG-93 (Object DataBase Management Group) je razvila Object-Oriented Database Management Group. Ta standard še ni v celoti uveljavljen.

Struktura objektno usmerjene baze podatkov je grafično predstavljena v obliki drevesa, katerega vozlišča so objekti. Vidno strukturo predmeta določajo lastnosti njegovega razreda. razred vključuje predmete, medtem ko sta struktura in obnašanje objektov istega razreda enaki. Vsak predmet, in sicer primerek razreda, se šteje za potomca predmeta, v katerem je opredeljen kot lastnost. Lastnosti objekta- bodisi standardni tip, kot je niz, ali razred tipa, ki ga je izdelal uporabnik. Obnašanje objektov se nastavi z metodami. Metoda Je operacija, ki jo je mogoče uporabiti za predmet.

Kot primer si oglejte bazo podatkov "LIBRARY" (slika 4.4). Za vsak predmet so določene lastnosti, njihove vrste in vrednosti. V DB:

"KNJIŽNICA" - nadrejeni (prednik) za "NAPLATNO", "KATALOG", "IZDAJA";

»KATALOG« je nadrejeni za »BOOK«.


"KNJIGA" - različni predmeti imajo lahko enake ali različne starše. Če je isti nadrejeni (en avtor), so inventarne številke različne, vendar so isbn, UDK, naslov in avtor enaki.

Logična struktura objektno usmerjene baze podatkov je podobna hierarhični, glavna razlika je v metodah obdelave podatkov. Nad bazo podatkov lahko izvajate dejanja, kot so logične operacije, izboljšane z objektno usmerjenimi metodami enkapsulacije, dedovanja in polimorfizma.

Enkapsulacija omejuje obseg imena lastnosti na meje objekta, v katerem je definirana. Torej, če je lastnost dodana v "KATALOG" telefon avtorja knjige, nato pridobljene na enak način v »NAPLATNICI« in »KATALOGU«. Pomen lastnosti bo določen s predmetom, v katerega je vgrajena.

Dedovanje nasprotno, razširi obseg lastnosti na vse potomce predmeta. Tako lahko vsem objektom tipa "KNJIGA", ki so potomci "KATALOGA", dodelimo lastnosti nadrejenega isbn, UDK, imena in avtorja.

Poliformizem pomeni sposobnost iste programske kode za delo z različnimi vrstami podatkov. Z drugimi besedami, to pomeni, da je v objektih različnih vrst dovoljeno imeti metode - procedure in funkcije - z istimi imeni. Med izvajanjem objektnega programa iste metode delujejo na različnih objektih, odvisno od vrste argumenta. Za DB "LIBRARY" to pomeni, da imajo lahko objekti razreda "BOOK", ki imajo različne starše od razreda "CATALOG", drugačen nabor lastnosti, t.j. programi za delo s predmetom razreda "BOOK" lahko vsebujejo polimorfno kodo. V razredu metoda nima telesa, torej ni definirano, katera posebna dejanja naj izvaja. Vsak podrazred izvaja zahtevane operacije. Enkapsulacija skrije podrobnosti izvedbe iz vseh objektov zunaj dane hierarhije.

Prednosti objektno usmerjenega modela v primerjavi z relacijskim modelom so zmožnost prikaza informacij o kompleksnih odnosih predmetov, odsotnost omejitev v strukturah za shranjevanje podatkov. Objektno usmerjena baza podatkov lahko shranjuje ne samo strukturo, ampak tudi vedenjske vidike podatkov. Z uporabo objektno usmerjenega pristopa je mogoče ustvariti tudi baze podatkov z velikimi količinami semantičnih informacij, kot so multimedijske in specializirane za določena predmetna področja (geografsko, oblikovanje itd.).

Slabosti tega pristopa so visoka konceptualna kompleksnost, neprijetnost pri obdelavi podatkov in nizka hitrost izvajanja poizvedbe.

V 90. letih so bili ustvarjeni prototipi delujočih objektno usmerjenih baz podatkov. To so POET (POET SoftWare), JASMINE (RAČUNALNIŠKI SODELAVCI), IRIS, ORION, POSTGRES.

Tema 5

Relacijski pristop pri gradnji informacijsko-logičnega modela: osnovni pojmi

Relacijski podatkovni model. Osnovni koncepti

Kot smo omenili v poglavju prejšnjega predavanja, je relacijski model trenutno eden najpogostejših modelov na trgu baz podatkov. Ta model temelji na nizu med seboj povezanih tabel (relacije).

Glavne teoretične ideje relacijskega modela sta v delih o teoriji odnosov predstavila ameriški logik Charles Souders Peirce (1839-1914) in nemški logik Ernst Schroeder (1841-1902), pa tudi ameriški matematik Edgar Codd. .

V delih Peircea in Schroederja je bilo dokazano, da je množica relacij zaprta pod nekaterimi posebnimi operacijami, ki skupaj tvorijo abstraktno algebro. Ta najpomembnejša lastnost odnosov je bila uporabljena v relacijskem modelu za razvoj jezika za obdelavo podatkov.

Leta 1970 se je pojavil članek E. Codda o predstavitvi podatkov, organiziranih v dvodimenzionalne tabele, imenovane relacije. Codd je prvi predstavil osnovne pojme in omejitve relacijskega modela kot osnove za shranjevanje podatkov ter pokazal možnost obdelave podatkov z uporabo tradicionalnih operacij na množicah in posebnih uvedenih relacijskih operacij.

Osnovni koncepti relacijskega modela so podani v tabeli. 3.1.

Objekti relacijskega modela so predvsem tabele (relacije). Neoporečnost podatkov zagotavljajo zunanji in primarni ključi (glejte str. "Relacijska celovitost podatkov").

Operatorji v relacijskem modelu so niz navodil, ki pridobivajo in manipulirajo s podatki.

Tabela 5.1. Elementi relacijskega modela

Izraz relacijskega modela Opis
Baza podatkov (DB) Nabor tabel in drugih predmetov, potrebnih za abstraktno predstavljanje izbranega predmetnega področja
DB shema Nabor glav tabele, ki so med seboj povezani
Odnos Tabela - niz predmetov resničnega sveta, za katere so značilne skupne lastnosti in značilnosti (polja tabele)
Glava razmerja Glava tabele - imena polj (stolpcev) tabele
Telo razmerja Telo tabele - zbirka vrednosti za vse predmete v resničnem svetu, ki jih je mogoče predstaviti kot zapise tabele (vrstice tabele)
Diagram razmerja Vrstica naslovov stolpcev tabele ("glava" tabele)
Atribut razmerja Ime stolpca tabele (polje tabele)
Korenjak razmerja Vrstica tabele (zapis) - nedvoumna predstavitev predmeta resničnega sveta, ustvarjenega z uporabo vrednosti polj tabele
domena Veliko veljavnih vrednosti atributov
Vrednost atributa Vrednost polja v zapisu (korčnik)
Primarni ključ Eden ali več (v primeru sestavljenega ključa) atributov, ki enolično definirajo vrednost niza (vrednost vrstice tabele)
Zunanji ključ Atribut tabele, katerega vrednosti ustrezajo vrednostim primarnega ključa v drugi povezani (nadrejeni, primarni) tabeli. Tuji ključ je lahko sestavljen iz enega ali več atributov (sestavljeni tuji ključ). Če je število atributov tujega ključa manjše od števila atributov ustreznega primarnega ključa, se imenuje okrnjen (delni) tuji ključ
Stopnja (arnost) odnosa Število stolpcev tabele
Moč odnosa Število vrstic (korčnikov) tabele
Primer razmerja Nabor zapisov (korčnikov) za dano tabelo (relacija). Primer se lahko sčasoma spremeni. Ker običajna baza podatkov trenutno deluje samo z eno različico relacije, se tak primer razmerja imenuje trenutni.
Vrsta podatkov Vrsta vrednosti elementov tabele
Osnovna relacija Relacija, ki vsebuje enega ali več stolpcev, ki označujejo lastnosti predmeta, kot tudi primarni ključ
Izpeljano razmerje Ne gre za osnovno razmerje, tj. ne označuje lastnosti objekta in se uporablja za zagotavljanje povezav med drugimi tabelami, ne sme vsebovati primarnega ključa. Če je podan primarni ključ, je sestavljen iz tujih ključev, povezanih s primarnimi ključi osnovnega razmerja
Povezava Vzpostavi odnos med ujemajočimi se vrednostmi v ključnih poljih - primarni ključ ene tabele in tuji ključ druge
Razmerje ena proti ena (1:1) Pri uporabi te vrste razmerja ima lahko zapis v eni tabeli največ en povezan zapis v drugi tabeli. V obeh tabelah morajo biti ključna polja primarna. Uporablja se za razdelitev tabel z več polji ali zaščito podatkov na zahtevo
Razmerje ena proti več (1: M) Pri uporabi te vrste razmerja lahko vsak zapis ene tabele ustreza več zapisom druge tabele, vendar vsak zapis druge tabele ustreza samo enemu zapisu prve tabele. Primarni ključ mora biti določen v prvi tabeli, zunanji ključ pa v drugi.
Razmerje mnogo proti mnogim (N: M) Pri tej vrsti razmerja lahko en zapis v prvi tabeli ustreza več zapisom druge tabele, vendar lahko en zapis druge tabele ustreza več zapisom prve. Edinstvenost ključev za takšne tabele ni potrebna. V procesu oblikovanja sheme baze podatkov se takšne povezave preoblikujejo. Če želite to narediti, morate uvesti pomožno razmerje, ki vam omogoča zamenjavo razmerja mnogo proti mnogim z dvema odnosoma ena proti več.

Podatkovna struktura relacijskega modela predpostavlja predstavitev predmetnega področja obravnavanega problema kot niz medsebojno povezanih odnosov.

V vsakem odnosu lahko en odnos deluje kot glavni (osnovni, starševski), drugi pa kot podrejen (izveden, otrok). Za vzdrževanje teh povezav morata obe relaciji vsebovati niz atributov, s katerimi sta povezani: v glavni relaciji je to primarni ključ relacije (enolično identificira niz glavne relacije); podrejeni odnos mora imeti nabor atributov, ki ustrezajo primarnemu ključu glavnega razmerja. Tukaj je ta nabor atributov že sekundarni ključ ali tuji ključ, t.j. definira množico nizov izpeljane relacije, povezanih z enim samim nizom osnovne relacije.

Nastane veliko med seboj povezanih tabel db shema.

Torej odnos R je dvodimenzionalna tabela, ki vsebuje nekaj podatkov.

Matematično N-arno razmerje R Je niz kartezijskega produkta D 1 × D 2 ×… × D n nizi (domene) D 1, D 2, ..., D n(n≥1), ni nujno drugačno:

R D 1 × D 2 ×… × D n,

kje D 1 × D 2 ×… × D n- popoln kartezijev produkt, t.j. niz vseh možnih kombinacij po n elementov, pri čemer je vsak element vzet iz svoje domene.

domena je semantični koncept, ki ga lahko gledamo kot podmnožico vrednosti neke vrste podatkov, ki imajo poseben pomen.

Lastnosti domene:

Domena ima edinstveno ime (znotraj baze podatkov),

Definirano na neki preprosti podatkovni vrsti ali na drugi domeni,

Lahko ima kakšen logični pogoj za opis podmnožice podatkov, dovoljenih za to domeno,

Nosi določeno pomensko obremenitev.

Glavni pomen domen je, da omejujejo primerjave: ne morete primerjati vrednosti iz različnih domen, tudi če imajo isti tip podatkov.

atribut odnos je par oblike

<Имя_атрибута: Имя_домена>(oz<A: D>).

Imena atributov so edinstvena znotraj razmerja. Pogosto so imena atributov enaka ustreznim imenom domen.

R, definiran v več domenah, ima dva dela: glavo in telo.

Glava razmerja- določeno število atributov razmerja, ki opisuje kartezijanski produkt domen, na katerih je določen odnos:

(<A 1: D 1>, <A 2: D 2 >, …, <A n: D n>).

Glava je statična: med delom z bazo podatkov se ne spreminja.Če je bila relacija spremenjena, dodana ali odstranjena atributa, dobimo drugačno relacijo. Tudi s shranjenim imenom.

Telo razmerje vsebuje veliko kortkov odnosov.

Vsak korteža je niz parov v obliki:

<Имя_атрибута: Значение атрибута>:

R(<A 1: Val 1>, <A 2: Val 2 >, …, <A n: Val n>).

Takšna, da je vrednost Val i atribut A i pripada domeni D i.

Telo relacije je zbirka nizov, to je podmnožica kartezijanskega produkta domen. Tako je telo relacije samo relacija v matematičnem pomenu besede. Telo relacije se lahko spremeni med delom z bazo podatkov, saj se lahko nizi sčasoma spreminjajo, dodajajo in brišejo.

Odnos se običajno zapiše kot:

R(<A 1: D 1>, <A 2: D 2 >, …, <A n: D n>),

ali skrajšano: R(A 1, A 2, …, A n) oz R.

Diagram razmerja je niz glav relacije, vključenih v bazo podatkov, to je seznam imen atributov dane povezave z navedbo domene, ki ji pripadajo:

S R =(A 1, A 2, …, A n), A i D i, jaz = 1, ..., n.

Če atributi prevzamejo vrednosti iz iste domene, se imenujejo θ-primerljivi, kjer je θ niz veljavnih primerjav, določenih za to domeno.

Na primer, če domena vsebuje številčne podatke, so zanjo veljavne vse primerjalne operacije: θ == (=,<>,>=,<=,<,>). Vendar pa tudi za domene, ki vsebujejo znakovne podatke, ni mogoče podati le operacij primerjave enakosti in neenakosti. Če je za dano domeno določen leksikografski vrstni red, potem ima tudi celoten nabor primerjalnih operacij.

Imenujeta se shema obeh razmerij enakovrednoče imajo enako stopnjo, in je razvrščanje imen atributov v shemah možno tako, da bodo primerljivi atributi na istih mestih, torej atributi, ki jemljejo vrednosti iz iste domene.

Tako so za enakovredne odnose izpolnjeni naslednji pogoji:

Prisotnost enakega števila atributov;

Prisotnost atributov z istimi imeni;

Prisotnost istih nizov v odnosu, glede na to, da se lahko vrstni red atributov razlikuje;

Tovrstni odnosi so različne podobe istega odnosa.

Lastnosti razmerja izhajajo neposredno iz zgornje definicije relacije. Te lastnosti so v bistvu razlika med relacijami relacijskih podatkovnih modelov in preprostimi tabelami:

Edinstvenost imena razmerja. Ime enega razmerja se mora razlikovati od imen drugih razmerij.

Edinstvenost tuplejev. V relaciji ni enakih nizov. Dejansko je telo relacije množica nizov in tako kot vsaka množica ne more vsebovati neločljivih elementov. Tabele lahko za razliko od relacij vsebujejo iste vrstice. Vsaka celica relacije vsebuje samo atomsko (nedeljivo) vrednost.

Neurejeni nizi. Korki niso urejeni (od zgoraj navzdol), saj je telo relacije množica, množica pa ni urejena (za primerjavo so vrstice v tabelah urejene). Enako razmerje lahko predstavljajo različne tabele, v katerih so vrstice v različnem vrstnem redu.

Motnje lastnosti. Atributi niso urejeni (od leve proti desni).

Edinstvenost imena atributa znotraj razmerja. Vsak atribut ima znotraj razmerja edinstveno ime, kar pomeni, da vrstni red atributov ni pomemben (za primerjavo so stolpci v tabeli urejeni). Ta lastnost se nekoliko razlikuje od matematične definicije razmerja. Enako razmerje lahko predstavljajo različne tabele, v katerih so stolpci v različnem vrstnem redu.

Atomnost vrednosti atributov. Vse vrednosti atributov so atomske. To izhaja iz dejstva, da imajo osnovni atributi atomske vrednosti, to pomeni, da je z vsakim pripisom povezan obseg vrednosti (ločen elementarni tip), vrednosti atributov so vzete iz iste domene. Sheme odnosov in nizi so množice, ne seznami, zato vrstni red, v katerem so predstavljeni, ni pomemben. Za primerjavo lahko v celice tabele postavite različne informacije: matrike, strukture, druge tabele itd.

Komentar:

Iz lastnosti relacije izhaja, da ne vsak tabela je lahko relacija. Da bi določena tabela lahko definirala odnos, je potrebno, da ima tabela preprosto strukturo (vsebuje samo vrstice in stolpce, vsaka vrstica pa mora imeti enako število polj), tabela ne sme imeti enakih vrstic, noben stolpec tabele mora vsebovati podatke samo ene vrste, vsi uporabljeni tipi podatkov morajo biti enostavni.

Treba je opozoriti, da je relacijski model baza podatkov v obliki niza medsebojno povezanih odnosov, ki se imenujejo shema relacijske baze podatkov.

Osnovni koncepti

Opredelitev 1

Objektno usmerjen model predstavitev podatkov omogoča identifikacijo posameznih zapisov baze podatkov.

Zapisi baze podatkov in njihove funkcije obdelave so povezani z mehanizmi, podobnimi ustreznim orodjem, ki se izvajajo v objektno usmerjenih programskih jezikih.

Opredelitev 2

Grafična predstavitev objektno usmerjena struktura baze podatkov je drevo, katerega vozlišča predstavljajo objekte.

Standardna vrsta (na primer niz - vrvica) ali tip, ki ga je ustvaril uporabnik ( razred), opisuje lastnosti objekta.

Na sliki 1 je objekt LIBRARY nadrejeni objektom primerka DIRECT, SUBSCRIBER in REFERENCE. Različni predmeti vrste KNJIGA imajo lahko enega ali različne starše. Objekti vrste KNJIGA, ki imajo istega nadrejenega, morajo imeti vsaj različne inventarne številke (enotne za vsak izvod knjige), vendar enake vrednosti lastnosti avtor, naslov, udk in isbn.

Logične strukture objektno usmerjene baze podatkov in hierarhične baze podatkov sta na videz podobni. Razlikujejo se predvsem po metodah obdelave podatkov.

Pri izvajanju dejanj nad podatki v objektno usmerjenem modelu se uporabljajo logične operacije, ki so okrepljene z inkapsulacijo, dedovanjem in polimorfizmom. Z določenimi omejitvami lahko uporabite operacije, ki so podobne ukazom SQL (na primer pri ustvarjanju baze podatkov).

Pri izdelavi in ​​spreminjanju baze se izvaja avtomatsko oblikovanje in naknadno prilagajanje indeksov (indeksnih tabel), ki vsebujejo informacije za hiter pridobivanje podatkov.

Opredelitev 3

Tarča inkapsulacije- omejevanje obsega imena lastnosti na meje objekta, v katerem je definirana.

Na primer, če je lastnost dodana objektu DIRECTORY, ki nastavi telefonsko številko avtorja in ima ime telefon, bodo lastnosti istega imena pridobljene za objekta DIRECTORY in SUBSCRIBER. Pomen lastnosti je določen s predmetom, v katerega je inkapsulirana.

4. opredelitev

Dedovanje, inverzno enkapsuliran, je odgovoren za širjenje obsega lastnosti glede na vse potomce objekta.

Na primer, vsem objektom BOOK, ki so potomci objekta DIRECTORY, se lahko dodelijo lastnosti nadrejenega objekta: avtor, naslov, udk in isbn.

Če je treba delovanje mehanizma dedovanja razširiti na predmete, ki niso neposredni sorodniki (na primer dva potomca istega starša), je lastnost abstraktnega tipa definirana v njihovem skupnem predniku abs.

Torej lastnosti soba in vstopnica v objektu KNJIŽNICA podedujejo vsi podrejeni objekti REFERENCE, BOOK in SUBSCRIBER. Zato so vrednosti te lastnosti razredov SUBSCRIBER in OUTPUT enake - 00015 (slika 1).

Definicija 5

Polimorfizem omogoča, da ista programska koda deluje z različnimi vrstami podatkov.

Z drugimi besedami, omogoča objektom različnih vrst metode (funkcije ali procedure) z enakimi imeni.

Iskanje v objektno usmerjeni bazi podatkov je določiti podobnost med objektom, ki ga določi uporabnik, in objekti, ki so shranjeni v bazi podatkov.

Prednosti in slabosti objektno usmerjenega modela

Glavni prednost objektno usmerjeni podatkovni model je v nasprotju z relacijskim modelom sestavljen iz sposobnosti prikaza informacij o kompleksnih odnosih predmetov. Obravnavani podatkovni model vam omogoča, da definirate ločen zapis baze podatkov in funkcije njegove obdelave.

TO slabosti Za objektno usmerjen model je značilna visoka konceptualna kompleksnost, neprijetna obdelava podatkov in nizka hitrost izvajanja poizvedbe.

Danes so takšni sistemi precej razširjeni. Ti vključujejo DBMS:

  • Postgres,
  • Orion,
  • Iris,
  • ODBJupiter,
  • Versant,
  • Objektivnost / DB,
  • ObjectStore,
  • Statice,
  • GemStone
  • G-osnova.

V objektno usmerjenem modelu (OOM) je pri predstavitvi podatkov možno identificirati posamezne zapise baze podatkov. Razmerja se vzpostavijo med zapisi baze podatkov in njihovimi procesnimi funkcijami z uporabo mehanizmov, podobnih tistim v objektno usmerjenih programskih jezikih.

Standard OOM je opisan v priporočilih standarda ODMG-93 (Object Database Management Group). Priporočila ODMG-93 še niso v celoti izvedena. Za ponazoritev ključnih idej si oglejte nekoliko poenostavljen model objektno usmerjene baze podatkov.

Struktura baze OO je grafično predstavljena v obliki drevesa, katerega vozlišča so objekti. Lastnosti predmetov so opisane z nekim standardnim tipom (na primer nizom) ali tipom, ki ga izdela uporabnik (definirano kot razred).

Vrednost lastnosti tipa string je niz znakov. Vrednost lastnosti tipa razreda je objekt, ki je primerek ustreznega razreda. Vsak primerek razreda se šteje za potomca predmeta, v katerem je definiran kot lastnost. Predmet primerka razreda pripada njegovemu razredu in ima enega nadrejenega. Generični odnosi v bazi podatkov tvorijo povezano hierarhijo objektov.

Primer logične strukture OO DB bibliotekarstva je prikazan na sl. 3.14. Tukaj je objekt tipa LIBRARY nadrejeni objekti primera razredov SUBSCRIBER, DIRECTORY in OUTPUT. Različni predmeti vrste KNJIGA z istim nadrejenim morajo biti različni, vsaj po inventarni številki (enotno za vsak izvod knjige), vendar imajo enake vrednosti lastnosti isbn, udk, ime in avtor.


Slika 3.14. Logična struktura knjižnične baze podatkov

Logična struktura baze podatkov OO je navzven podobna strukturi hierarhične baze podatkov. Glavna razlika med njimi je v metodah obdelave podatkov. Za izvajanje dejanj nad podatki v bazi podatkov OOM se uporabljajo logične operacije, okrepljene z objektno usmerjenimi mehanizmi enkapsulacije, dedovanja in polimorfizma. Operacije, podobne ukazom SQL, se lahko uporabljajo v omejenem obsegu (na primer za ustvarjanje baze podatkov).

Ustvarjanje in spreminjanje baze podatkov spremlja avtomatsko oblikovanje in naknadno popravljanje indeksov (indeksnih tabel), ki vsebujejo informacije za hitro pridobivanje podatkov.

Oglejmo si na kratko koncepte inkapsulacije, dedovanja in polimorfizma v zvezi z bazami podatkov OOM.

Enkapsulacija omejuje obseg imena lastnosti na meje objekta, v katerem je definirana. Torej, če dodate lastnost objektu vrste IMENIK, ki nastavi telefonsko številko avtorja knjige in ima ime telefon, potem bomo dobili lastnosti istega imena za objekta SUBSCRIBER in DIRECTORY. Pomen takšne lastnosti bo določen s predmetom, v katerega je vpeta.

dedovanje, nasprotno, razširi obseg lastnosti na vse potomce predmeta. Tako lahko vsem objektom tipa BOOK, ki so potomci predmeta tipa DIRECTORY, dodelimo lastnosti nadrejenega objekta: isbn, udk, ime in avtor.Če je treba učinek mehanizma dedovanja razširiti na predmete, ki niso neposredni sorodniki (na primer med dvema potomcema istega starša), je abstraktna lastnost tipa abs definirana v njihovem skupnem predniku. Torej, definicija abstraktnih lastnosti vstopnica in soba v objektu LIBRARY povzroči, da te lastnosti podedujejo vsi podrejeni objekti SUBSCRIBER, BOOK in REFERENCE. Ni naključje, da so vrednosti nepremičnine vstopnica razredov SUBSCRIBER in IZDAJA, prikazanih na sliki, bosta enaka - 00015.

Polimorfizem v objektno usmerjenih programskih jezikih pomeni sposobnost iste programske kode za delo z različnimi vrstami podatkov. Z drugimi besedami, to pomeni, da je možno imeti metode (postopke ali funkcije) z enakimi imeni v objektih različnih tipov. Med izvajanjem objektnega programa iste metode delujejo na različnih objektih, odvisno od vrste argumenta. Kot velja za našo OO DB, polimorfizem pomeni, da imajo objekti razreda BOOK, ki imajo različne starše od razreda DIRECTORY, lahko drugačen nabor lastnosti. Posledično lahko programi za delo s predmeti razreda BOOK vsebujejo polimorfno kodo.

Iskanje v bazi podatkov OO sestoji iz ugotavljanja podobnosti med predmetom, ki ga je navedel uporabnik, in objekti, shranjenimi v bazi podatkov. Uporabniško definiran objekt, imenovan ciljni objekt (lastnost objekta je tipa cilj), lahko v splošnem primeru predstavlja podmnožico celotne hierarhije objektov, shranjenih v bazi podatkov. Ciljni objekt, kot tudi rezultat izvedbe poizvedbe, je mogoče shraniti v sami bazi podatkov. Primer zahteve za številke knjižničnih izkaznic in imena naročnikov, ki so prejeli vsaj eno knjigo v knjižnici, je prikazan na sl. 3.15.

Glavni dostojanstvo OOM v primerjavi z relacijskimi podatki je zmožnost prikaza informacij o kompleksnih objektnih odnosih. Podatki OOM vam omogočajo, da prepoznate en sam zapis baze podatkov in določite funkcije njihove obdelave.

Pomanjkljivost OOM so visoka konceptualna kompleksnost, neprijetnosti pri obdelavi podatkov in nizka hitrost poizvedb.


Slika 3.15. Fragment baze podatkov s ciljnim objektom

Ponovno se obrnimo na nalogo Orders, ki je predstavljena v obliki relacijskega podatkovnega modela na sl. 3.8 in ga obravnavati v smislu objektno usmerjene baze podatkov. Skupno so trije razredi: " Stranke», « Naročila"in" Blago". Predmeti razreda " Stranke»So specifične stranke; lastnosti razreda - št. stranke, ime stranke Mesto, status itd. Metode razreda - " Ustvari naročilo», « Plačajte račun" itd. Metoda je nekakšna operacija, ki jo je mogoče uporabiti za predmet; metoda je tisto, kar bi moral narediti objekt. Razred, ki ustreza tabeli " Podrobnosti naročila", ni zahtevano. Podatki tabele so lahko del razreda " Naročila". Prisotnost v razredu " Stranke"metoda" Ustvari naročilo"Vide v interakcijo s predmeti razredov" Naročila"in" Blago". V tem primeru uporabniku ni treba vedeti za to interakcijo predmetov. Uporabnik se sklicuje samo na predmet " Naročila"In uporablja metodo" Ustvari naročilo". Vpliv na druge baze podatkov je mogoče skriti pred uporabnikom. Če je metoda " Ustvari naročilo"Po drugi strani se nanaša na metodo" Preverite kreditno sposobnost stranke«, To dejstvo je lahko tudi skrito pred uporabnikom. V relacijskih bazah podatkov za izvajanje enake funkcionalnosti so potrebni postopki pisanja v Visual Basicu za aplikacije (VBA).

V 90. letih so bili eksperimentalni prototipi sistemov za upravljanje baz podatkov OO. Trenutno so takšni sistemi zelo razširjeni. Ti vključujejo zlasti naslednje DBMS: POET (programska oprema POET), Jasmine (Computer Associates), Versant (Versant Technologies), O2 (Ardent Software), ODB-Jupiter (Inteltek Plus Research and Production Center) in Iris, Orion in Postgres.

Pri velikem številu eksperimentalnih projektov (in celo komercialnih sistemov) ni splošno sprejetega objektno usmerjenega podatkovnega modela, ne zato, ker ni razvitega popolnega modela, temveč zato, ker ni splošnega soglasja o sprejetju katerega koli modela. Pravzaprav obstajajo bolj specifični problemi, povezani z razvojem deklarativnih poizvedovalnih jezikov, izvajanjem in optimizacijo poizvedb, oblikovanjem in vzdrževanjem omejitev integritete, sinhronizacijo dostopa in upravljanjem transakcij itd.

Objektno usmerjen model (slika 3) omogoča ustvarjanje, shranjevanje in uporabo informacij v obliki predmetov. Vsak objekt ob svojem ustvarjanju prejme edinstven identifikator, ki ga generira sistem, ki je povezan z objektom ves čas njegovega obstoja in se ne spremeni, ko se stanje objekta spremeni.

Slika 3. Objektno usmerjen podatkovni model

Vsak predmet ima stanje in obnašanje. Stanje predmeta je niz vrednosti za njegove atribute. Obnašanje objekta je niz metod (programske kode), ki delujejo na stanje objekta. Vrednost atributa predmeta je tudi nek predmet ali niz predmetov. Stanje in vedenje predmeta je zajeto v objekt; interakcija objektov temelji na prenosu sporočil in izvajanju ustreznih metod.

Številni predmeti z enakim naborom atributov in metod tvorijo predmetni razred. Objekt naj pripada samo enemu razredu (če ne upoštevate možnosti dedovanja). Dovoljena je prisotnost primitivnih vnaprej določenih razredov, katerih predmeti-primerki nimajo atributov: celih števil, nizov itd. Razred, katerega predmeti lahko služijo kot vrednosti atributa predmetov drugega razreda, se imenuje domena tega atributa.

Dovoljeno je ustvariti nov razred na podlagi obstoječega razreda – dedovanje. V tem primeru novi razred, imenovan podrazred obstoječega razreda (nadrazred), podeduje vse atribute in metode nadrazreda. Podrazred lahko definira tudi dodatne atribute in metode. Ločimo primere enostavnega in večkratnega dedovanja. V prvem primeru je lahko podrazred definiran le na podlagi enega nadrazreda, v drugem primeru pa je lahko več nadrazredov. Če jezik ali sistem podpira enotno dedovanje razredov, nabor razredov tvori drevesno hierarhijo. Ob ohranjanju večkratnega dedovanja so razredi povezani v zakoreninjen usmerjen graf, imenovan razredna rešetka. Za predmet podrazreda se šteje, da pripada kateremu koli nadrazredu tega razreda.

Objektno usmerjene baze podatkov se najbolj uporabljajo na področjih, kot so sistemi za računalniško podprto načrtovanje/proizvodnja (CAD/CAM), sistemi za računalniško podprt razvoj programske opreme (CASE), sistemi za upravljanje sestavljenih dokumentov, t.j. na območjih, ki niso tradicionalna za baze podatkov. Primeri objektno usmerjenih DBMS so POET, Jasmine, Versant, Iris, Orion.

2.2.4 relacijski podatkovni model

Leta 1970 je ameriški matematik E.F. objavil članek, ki je bil po svoji vsebini revolucionaren, v katerem je predlagal uporabo teorije množic za obdelavo podatkov. Trdil je, da bi morali biti podatki vezani v skladu z njihovim logičnim odnosom (npr. združitev, presečišče), ne pa s fizičnimi kazalci. Predlagal je preprost podatkovni model, v katerem so vsi podatki tabelarizirani z enolično poimenovanimi vrsticami in stolpci. Te tabele se imenujejo relacije (relacija - relacija), model pa je relacijski podatkovni model, ki je zgrajen na konceptu matematičnih relacij in ga včasih imenujemo tudi Coddov model. Coddovi predlogi so bili tako učinkoviti za sisteme baz podatkov, da je bil za ta model nagrajen s prestižno Turingovo nagrado za teoretične temelje računalništva.

V relacijskih bazah podatkov so vsi podatki shranjeni v preprostih tabelah, razdeljenih na vrstice (imenovane zapisi) in stolpce (imenovane polja), na presečišču katerih se nahajajo informacije o podatkih. Na splošno lahko to predstavimo kot na sl. 4.

Slika 4. Tabela relacijske baze podatkov.

Vsak stolpec ima svoje ime. Na primer, v tabeli "Blago na zalogi" (slika 5.) so imena polj naslednja: Identifikator, Izdelek, Ime skupine, Skupina, merska enota, Nakupna cena, Prodajna cena, Razpoložljivost zalog.

riž. 5. Tabela »Blago na zalogi »

Vse vrednosti v enem stolpcu so iste vrste. Tako so polja različne značilnosti (včasih pravijo - atributi) predmeta. Vrednosti polj v eni vrstici se nanašajo na isti predmet, različna polja pa se razlikujejo po imenu.

Vsak zapis se odlikuje po edinstvenem ključu zapisa, ki sta dveh vrst: primarni in sekundarni.

Primarni ključ Je eno ali več polj, ki enolično identificirajo zapis. Če je primarni ključ sestavljen iz enega polja, se imenuje preprost ključ, če je sestavljen iz več polj, se imenuje sestavljeni ključ.

Sekundarni ključ Je polje, katerega vrednost se lahko ponovi v več zapisih datoteke, torej ni edinstveno.

Zunanji ključ podrejena tabela je sekundarni ključ tega odnosa, ki hkrati služi kot primarni ključ v glavni tabeli. Če je po vrednosti primarnega ključa mogoče najti en sam primerek zapisa, potem jih je po vrednosti tujega ključa več (slika 6).

Slika 6. Primer uporabe tujega ključa

Običajno je relacijska baza podatkov sestavljena iz več tabel, saj V eni tabeli ni mogoče združiti vseh informacij, ki jih zaposleni (uporabniki baze podatkov) katere koli organizacije potrebujejo za reševanje težav.

Indeksiranje je sredstvo za učinkovit dostop s ključem do zapisa datoteke. Indeksiranje ustvari dodatno datoteko, ki vsebuje vse ključne vrednosti podatkovne datoteke na urejen način. Za vsak ključ indeksna datoteka vsebuje kazalec na ustrezen vnos podatkovne datoteke. Kazalec na zapis v podatkovni datoteki neposredno dostopa do tega zapisa.

Za delo z relacijskimi bazami podatkov se trenutno pogosto uporablja jezik strukturiranih poizvedb (Structured Query Language - SQL). To je jezik, ki se uporablja za ustvarjanje, spreminjanje in manipulacijo podatkov. SQL ni algoritemski programski jezik. Je informacijsko-logični jezik, temelji na relacijski algebri in je razdeljen na tri dele:

· Operaterji opredelitve podatkov;

Operaterji za obdelavo podatkov (vstavi, izberi, posodobi, izbriši);

· Operaterji opredelitve dostopa do podatkov.

Leta 1986 je bil SQL sprejet kot standard ANSI (Ameriški nacionalni inštitut za standarde) za jezike relacijskih baz podatkov. Danes ta baza podatkov velja za standard sodobnih informacijskih sistemov.

Tako je tabela glavna vrsta podatkovne strukture relacijskega modela. Strukturo tabele določa zbirka stolpcev. Vsaka vrstica tabele vsebuje eno vrednost v ustreznem stolpcu. V tabeli ne moreta biti dve enaki vrstici, skupno število vrstic ni omejeno. Stolpec je podatkovna postavka, vsak stolpec ima ime. Eden ali več atributov, katerih vrednosti enolično identificirajo vrstico tabele, je ključ tabele.

Prednosti relacijskega modela so:

Enostavnost in enostavnost razumevanja s strani končnega uporabnika - edina informacijska struktura je tabela;

Pri načrtovanju relacijske baze podatkov se uporabljajo stroga pravila, ki temeljijo na matematičnem aparatu;

Popolna neodvisnost podatkov. Ko se struktura spremeni, so spremembe, ki jih je treba narediti v aplikacijskih programih, minimalne;

Za izdelavo poizvedb in pisanje aplikacijskih programov ni treba poznati posebne organizacije baze podatkov v zunanjem pomnilniku.

Slabosti relacijskega modela so:

Relativno nizka hitrost dostopa in velika količina zunanjega pomnilnika;

Težave pri razumevanju strukture podatkov zaradi videza velikega števila tabel kot posledica logičnega načrtovanja;

Predmetnega področja ni vedno mogoče predstaviti v obliki niza tabel.

Relacijske baze podatkov so trenutno najbolj razširjene. Omrežni in hierarhični modeli veljajo za zastarele, objektno usmerjeni modeli še niso standardizirani in razširjeni.

Objektno usmerjen model

V objektno usmerjenem modelu je pri predstavitvi podatkov možno identificirati posamezne zapise baze podatkov. Razmerja se vzpostavijo med zapisi in njihovimi procesnimi funkcijami z uporabo mehanizmov, podobnih tistim v objektno usmerjenih programskih jezikih.

Standardiziran objektno usmerjen model je opisan v priporočilih standarda ODMG-93 (Object Database Management Group).

Poglejmo si poenostavljen model objektno usmerjene baze podatkov. Struktura objektno usmerjene baze podatkov je grafično predstavljena v obliki drevesa, katerega vozlišča so objekti. Lastnosti predmetov so opisane z nekim standardnim ali uporabniško izdelanim tipom (definirano kot razred). Vrednost lastnosti tipa razreda je objekt, ki je primerek ustreznega razreda. Vsak primerek razreda se šteje za potomca predmeta, v katerem je definiran kot lastnost. Predmet primerka razreda pripada njegovemu razredu in ima enega nadrejenega. Generični odnosi v bazi podatkov tvorijo skladno hierarhijo objektov. Primer logične strukture objektno usmerjene knjižničarske baze podatkov je prikazan na sl. 2.9. Tukaj je objekt tipa Knjižnica nadrejeni objekti primera razredov Naročnik, Imenik in Izdaja. Različni predmeti Book imajo lahko enake ali različne starše. Objekti vrste Knjiga z istim nadrejenim se morajo razlikovati vsaj po inventarni številki (enotno za vsak izvod knjige), vendar imajo enake vrednosti lastnosti isbn, udc, naslov in avtorja.

Logična struktura objektno usmerjene baze podatkov je navzven podobna strukturi hierarhične baze podatkov. Glavna razlika med obema je metoda obdelave podatkov.

Za izvajanje dejanj nad podatki v obravnavanem modelu baze podatkov se uporabljajo logične operacije, okrepljene z objektno usmerjenimi mehanizmi enkapsulacije, dedovanja in polimorfizma.

Enkapsulacija omejuje obseg imena lastnosti na zunanjost objekta, v katerem je definirana. Če torej objektu vrste Katalog dodamo lastnost, ki nastavi telefonsko številko avtorja knjige in ima ime phone, dobimo lastnosti z istim imenom za predmeta Naročnik in Katalog. Pomen takšne lastnosti bo določen s predmetom, v katerega je vpeta.

Po drugi strani pa dedovanje razširi obseg lastnosti na vse potomce predmeta. Tako lahko vsem objektom tipa Book, ki so potomci predmeta tipa Katalog, dodelimo lastnosti nadrejenega objekta: isbn, udk, naslov in avtor. Če je treba učinek mehanizma dedovanja razširiti na predmete, ki niso neposredni sorodniki (na primer med dvema potomcema istega starša), je abstraktna lastnost tipa abs definirana v njihovem skupnem predniku. Torej definicija vstopnice in številke abstraktnih lastnosti v objektu Knjižnica vodi do dedovanja teh lastnosti s strani vseh podrejenih objektov Naročnik, Knjiga in Izdaja. Zato ni naključje, da vrednosti lastnosti vozovnice razredov Naročnik in Izdaja, prikazane na sl. 2.9 so enaki - 00015.

Polimorfizem v objektno usmerjenih programskih jezikih pomeni sposobnost iste programske kode za delo z različnimi vrstami podatkov. Z drugimi besedami, to pomeni, da je možno imeti metode (postopke ali funkcije) z enakimi imeni v objektih različnih tipov. Med izvajanjem objektnega programa iste metode delujejo na različnih objektih, odvisno od vrste argumenta. V tem primeru polimorfizem pomeni, da imajo lahko predmeti razreda Book, ki imajo različne starše od razreda Catalog, drugačen nabor lastnosti. Zato lahko programi za delo s predmeti razreda Book vsebujejo polimorfno kodo.

Iskanje v objektno usmerjeni bazi podatkov sestoji iz ugotavljanja podobnosti med objektom, ki ga je določil uporabnik, in objekti, shranjenimi v bazi podatkov.

riž. 2.9 Logična struktura knjižnične baze podatkov

Glavna prednost objektno usmerjenega podatkovnega modela v primerjavi z relacijskim je zmožnost prikaza informacij o kompleksnih odnosih med objekti. Objektno usmerjen podatkovni model vam omogoča, da prepoznate en sam zapis baze podatkov in določite funkcije njihove obdelave.

Slabosti objektno usmerjenega modela so visoka konceptualna kompleksnost, neprijetnost pri obdelavi podatkov in nizka hitrost poizvedbe.

Objektno usmerjeni DBMS vključujejo POET, Jasmine, Versant, O2, ODB-Jupiter, Iris, Orion, Postgres.

Banke podatkov kot celota so običajno razvrščene glede na ekonomske in pravne značilnosti.

Glede na pogoje opravljanja storitev ločimo brezplačne in plačljive banke, ki pa se delijo na komercialne in neprofitne (znanstvene, knjižnične ali družbeno pomembne).

Glede na obliko lastništva se BND delijo na državne in nedržavne. Po stopnji dostopnosti ločijo javne in z omejenim številom uporabnikov.

Druge vrste klasifikacije so povezane s posameznimi komponentami BnD.

1. Razvoj podatkovnih bank je sestavljen iz 4 stopenj:

1. faza. Oblikovanje in analiza sistemskih zahtev:

Sestavi se sistemska specifikacija, vključno s seznamom nalog, ki jih mora rešiti BND;

Seznam končnih uporabnikov in njihovih funkcij;

Seznam zahtev za bazo podatkov;

Sestavi se diagram toka dokumentov v organizaciji.

2. faza. Idejna zasnova: izdela se informacijski model sistema brez sklicevanja na tip računalnika in vrsto sistemske programske opreme; izdelan je infološki model baze podatkov, ki najbolj popolno opiše predmetno področje z vidika uporabnika.

3. faza. Zasnova izvedbe: izbrani so računalniški sistem, sistemska programska oprema in DBMS; oblikovana je podatkovna struktura in zgrajen podatkovni logični model baze (database schema), ki je opis logične strukture baze podatkov v jeziku določenega izbranega sistema upravljanja baze podatkov.

4. faza. Fizična izvedba, ki vključuje izdelavo in nalaganje podatkov v bazo podatkov, razvoj in odpravljanje napak aplikacijskih programov za delo z bazo podatkov, pisanje dokumentacije. Na tej stopnji se izdela fizični model baze podatkov, ki opisuje uporabljene pomnilniške naprave, metode fizične organizacije podatkov. Opis fizične strukture baze podatkov se imenuje shema shranjevanja. Trenutno obstaja težnja po zmanjšanju tovrstnega dela.

2. Glavne naloge, ki jih rešuje osebje banke podatkov

Osebje BND vključuje različne strokovnjake: administratorje BND, sistemske analitike, sistemske in aplikativne programerje, operaterje, strokovnjake za tehnična sredstva, marketing itd.

Naštejmo glavne funkcije in naloge, ki jih je osebje reševalo med razvojem in delovanjem baze podatkov:

1) analiza predmetnega področja (določanje potreb končnih uporabnikov, izgradnja informacijskega modela predmetnega področja, prepoznavanje omejitev integritete);

2) oblikovanje strukture baze (določanje sestave in strukture datotek baze podatkov, opis njene sheme v jeziku opisa podatkov);

3) nastavitev omejitev celovitosti baze podatkov;

4) nalaganje in vzdrževanje baze (vzdrževanje baze podatkov vključuje spreminjanje, brisanje in dodajanje zapisov); razvoj tehnologije nakladanja in vzdrževanja; razvoj obrazcev za vnos podatkov; vnos in nadzor podatkov;

5) varstvo podatkov (razlikovanje uporabnikov, izbira in preverjanje zaščitnih sredstev, evidentiranje poskusov nepooblaščenega dostopa);

6) zagotavljanje obnovitve baze podatkov;

7) analiza učinkovitosti BnD in razvoja sistema;

8) delo z uporabniki (zbiranje odgovorov, usposabljanje);

9) vzdrževanje sistemske programske opreme (nabava, namestitev in razvoj);

10) organizacijsko-metodološko delo (izbor načinov načrtovanja in posodobitve, načrtovanje razvoja BND, izdelava dokumentacije).

3. Uporabniki podatkovnih bank

Kot vsak programsko-organizacijsko-tehnični kompleks tudi banka podatkov obstaja v času in prostoru. Ima posebne razvojne stopnje:

oblikovanje,

Izvedba,

podpora,

Posodobitev in razvoj,

Popolna reorganizacija.

Na vsaki stopnji obstoja so v banko podatkov povezane različne kategorije potrošnikov.

Končni uporabniki

To je glavna kategorija uporabnikov, katerih interesi so povezani z banko podatkov. Glede na značilnosti oblikovane podatkovne banke se lahko bistveno razlikuje v krogu svojih končnih uporabnikov. To so lahko naključni potrošniki, ki občasno naslovijo bazo podatkov na bazo po prejemu nekaterih informacij, lahko pa so navadni uporabniki. Naključne stranke lahko obravnavamo kot potencialne stranke podjetja, ki brskajo po katalogu predstav ali storitev s posplošenim ali podrobnim opisom. Zaposleni, ki delajo s programi, posebej zasnovanimi zanje, ki zagotavljajo avtomatizacijo svojih dejanj pri izvajanju funkcij, so lahko navadni uporabniki. Na primer, skrbnik, ki načrtuje delo pomožnega oddelka računalniškega podjetja, ima program, ki mu pomaga načrtovati in urejati tekoča naročila po navodilih, spremljati napredek njihove produktivnosti in organizirati potrebno dodatno opremo za nova naročila v skladišču. Glavno, posebno znanje, ki ga od končnih uporabnikov ne bi smeli zahtevati na področju jezikovne in računalniške tehnologije.

Skrbniki podatkovne banke

To je skupina uporabnikov, ki je v začetni fazi razvoja banke podatkov odgovorna za njeno optimalno zasnovo z vidika hkratnega delovanja nabora končnih uporabnikov, pri podpori pa je faza odgovorna za pravilno delovanje tega sklada informacij v večuporabniškem načinu. V fazi načrtovanja in reorganizacije je ta skupina odgovorna za zmožnost pravilne reorganizacije sklada brez spreminjanja ali dokončanja njegovega stalnega vzdrževanja.

Razvijalci in skrbniki aplikacij

To je skupina uporabnikov, ki deluje med načrtovanjem, ustvarjanjem in reorganizacijo baze podatkov. Skrbniki aplikacij usklajujejo delo razvijalcev z razvojem določene aplikacije ali skupine aplikacij, združenih v funkcionalni podsistem. Razvijalci za določene aplikacije delajo s tistimi informacijami iz baze podatkov, ki so potrebni za določeno aplikacijo.

Vsaka zbirka podatkov nima izbranih vseh vrst uporabnikov. Znano je, da so pri razvoju informacijskih sistemov z uporabo tabelarnega DBMS skrbnik banke podatkov, skrbnik aplikacij in razvijalec pogosto obstajali v eni osebi. Vendar pa lahko pri ustvarjanju sodobnih kompleksnih baz podatkov podjetij, ki se uporabljajo za avtomatizacijo vseh ali velikih delov poslovnih procesov v velikem podjetju ali korporaciji, obstajajo skupine skrbnikov aplikacij in razvojni oddelki. Najtežji načini delovanja so dodeljeni skupini skrbnikov baz podatkov.

Razmislimo jih podrobneje.

Del skrbniške skupine BnD mora biti:

Sistemski komentatorji;

Razvijalci podatkovnih struktur in videza glede podatkovne banke informacijske podpore;

Razvijalci tehnoloških procesov obdelave podatkov;

Sistemski in aplikativni programerji;

Operativna podjetja in strokovnjaki za servisiranje.

Vprašanje komercialne banke podatkov igra pomembno vlogo pri prodaji strokovnjakov.

Glavne funkcije skupine skrbnikov DB

1. Raziskovanje podatkovnega področja: opis podatkovnega področja, pakiranje besedila omejitev integritete, ugotavljanje stanja (razpoložljivost, zaupnost) informacij, ugotavljanje potreb potrošnikov, ugotavljanje korespondence »porabnikov podatkov«, določanje časovnega obseg značilnosti obdelave podatkov.

2. Razvoj strukture baze podatkov: opredelitev sestave in strukture datotek baze podatkov in vmesnih povezav, izbira metod za optimizacijo podatkov in načinov dostopa do informacij, opis baze podatkov v jeziku opisa podatkov (DLS) .

3. Nastavitev omejitev integritete v opisu strukture baze podatkov in postopkov obdelave baze podatkov:

Nastavitev deklarativnih omejitev celovitosti, ki so neločljive v podatkovnem območju;

Določitev dinamičnih omejitev celovitosti podatkovnega področja med spreminjanjem informacij, shranjenih v bazi podatkov;

Opredelitev omejitev integritete imenuje struktura baze podatkov;

Razvoj postopkov za vzdrževanje celovitosti baze podatkov pri vnosu in popravljanju podatkov;

Določitev omejitev integritete z vzporednim delovanjem porabnikov v večuporabniškem načinu.

4. Zaženite prenos in vodite bazo podatkov

Razvoj tehnike za začetek nalaganja baze podatkov, ki se bo razlikovala od postopka spreminjanja in dodajanja podatkov ob redni uporabi baze podatkov;

Razvoj tehnike preverjanja vnesenih podatkov, realnega stanja podatkovnega področja. Realni objekti baznih modelov nekega podatkovnega področja in korelacija je vmesna, v času začetka tekočega popravila pa mora ta model v celoti ustrezati stanju objektov podatkovnega področja, ki je trenutno v času;

Glede na razvito tehniko začetnega nalaganja zasnove sistema bo morda potreben začetek vnosa podatkov.

5. Varstvo podatkov

Definiranje sistema gesel, načela ciljanja na potrošnike, oblikovanje skupin potrošnikov z enakimi pravicami dostopa do podatkov;

Razvoj načel za zaščito določenih podatkov in razvojnih objektov; razvoj specializiranih metod za kodiranje informacij med njihovim kroženjem v lokalnih in globalnih informacijskih omrežjih;

Razvoj sredstev za določanje dostopa do podatkov in poskusov kršitve varnostnega sistema;

Testiranje zaščitnega sistema;

Preiskava primerov kršitev sistema zaščite in razvoj dinamičnih metod za varovanje informacij v bazi podatkov.

6. Podpora za obnovitev baze podatkov

Razvoj organizacijskih sredstev za arhiviranje in obnovitev baze podatkov;

Razvoj dodatne programske opreme in tehnoloških procesov za obnovitev baze podatkov po okvarah.

7. Preiskava klicev uporabnikom baze podatkov: nabor statističnih podatkov o simbolu zahtev, času vklopa njihove uspešnosti v skladu z zahtevanimi izhodnimi dokumenti

8. Preiskava učinkovitosti delovanja BnD:

Preiskava indeksov delovanja BnD

Načrtovanje prestrukturiranja (strukturne spremembe) baze podatkov in reorganizacije BND.

9. Delo s končnimi uporabniki:

Zbiranje informacij o spreminjanju podatkovnega področja;

Zbiranje informacij o oceni dela BnD;

Usposabljanje potrošnikov, posvetovanje s potrošniki;

Izdelava potrebne sistemske in izobraževalne dokumentacije o delu končnih uporabnikov.

10. Priprava in vzdrževanje sistemskih orodij:

Raziskave obstoječe programske opreme na trgu in raziskave možnosti in nujnosti njihove uporabe v okviru BND;

Razvoj potrebnega organizacijsko-tehničnega programa gibanj za razvoj BND;

Preverjanje delovanja unovčene programske opreme, preden jo povežete z BND;

Nadzor povezave nove programske opreme z BND.

11. Organizacijsko in sistematično delo pri razvoju BND:

Izbira ali izdelava metode razvoja baze podatkov;

Določitev ciljev in smeri razvoja sistema kot celote;

Načrtovanje faz razvoja BnD;

Razvoj referenčnih knjig za splošne slovarje projekta BND in idejnega modela;

Namestitev zunanjih modelov razvitih aplikacij;

Nadzor povezave nove aplikacije z delom BND;

Možnost kompleksnega odpravljanja napak niza aplikacij, ki delujejo iz ene baze podatkov.