Tipuri de modele de date. Diagrama KMD este o descriere a structurii modelului de date din punctul de vedere al administratorului. Baze de date corporative

Se pare că acum s-a alunecat subiectul dezvoltării depozitului de date noua runda dezvoltare. Apar noi tehnologii, abordări și instrumente. Studiul lor, testarea și aplicarea rezonabilă ne permit să creăm cu adevărat interesante și solutii utile. Și aduceți-le la implementare, bucurându-vă de faptul că dezvoltările dvs. sunt utilizate în munca adevarata si sunt benefice.

Epilog

În pregătirea acestui articol, am încercat să mă concentrez în primul rând pe arhitecții, analiștii și dezvoltatorii care lucrează direct cu depozitele de date. Dar s-a dovedit că ea inevitabil „a luat subiectul puțin mai larg” - și au apărut alte categorii de cititori. Unele puncte vor părea controversate, altele nu sunt clare, altele sunt evidente. Oamenii sunt diferiți - cu experiențe, medii și poziții diferite.
De exemplu, întrebările tipice ale managerilor sunt „când să angajezi arhitecți?”, „când ar trebui să faci arhitectură?”, „arhitectură – nu va fi prea scump?” Ele sună destul de ciudat pentru noi (dezvoltatori, designeri), pentru că pentru noi arhitectura unui sistem apare odată cu nașterea sa - nu contează dacă ne dăm seama sau nu. Și chiar dacă nu există un rol formal al arhitectului în proiect, un dezvoltator normal „se întoarce întotdeauna pe arhitectul său interior”.

De în general, nu contează cine joacă exact rolul unui arhitect - ceea ce contează este ca cineva să pună astfel de întrebări și să exploreze răspunsurile la ele. Dacă arhitectul este identificat în mod clar, aceasta înseamnă doar că el este responsabil în primul rând pentru sistem și dezvoltarea acestuia.
De ce am găsit subiectul „antifragilității” relevant pentru acest subiect?

„Lucrul unic despre antifragilitate este că ne permite să lucrăm cu necunoscutul, să facem ceva în condiții în care nu înțelegem ce facem și să obținem succes.”/Nassim N. Taleb/
Prin urmare, criza și grad înalt Incertitudinile nu sunt o scuză pentru lipsa arhitecturii, ci factori care întăresc nevoia acesteia.

Etichete: Adăugați etichete

Articolul descrie principalele arhitecturi ale depozitelor de date și discută unele principii generale construcția lor. Metodele de reprezentare a ierarhiilor într-o structură de date relaționale sunt descrise în detaliu.

Introducere

La începutul anilor optzeci ai secolului trecut, în perioada de dezvoltare rapidă a sistemelor informaționale de înregistrare, a apărut o înțelegere a posibilității limitate de utilizare a acestora în scopuri de analiză a datelor și de construire a sistemelor de sprijin și de luare a deciziilor pe baza lor. Au fost create sisteme de înregistrare pentru automatizare operațiuni de rutină pentru a face afaceri emiterea facturilor, întocmirea contractelor, verificarea stării depozitului etc., iar principalii utilizatori ai unor astfel de sisteme erau personalul de linie. Principalele cerințe pentru astfel de sisteme au fost să asigure caracterul tranzacțional al modificărilor efectuate și să maximizeze viteza de implementare a acestora. Aceste cerințe au determinat alegerea SGBD relațional și modelul de reprezentare a datelor „entitate-relație” ca principalele utilizate. solutii tehnice la construirea sistemelor de înregistrare.

Managerii și analiștii, la rândul lor, aveau nevoie de sisteme care să permită:

Este evident că sistemele de înregistrare nu au îndeplinit niciuna dintre cerințele de mai sus. În sistemul de înregistrare, informațiile sunt relevante doar în momentul contactării Bază de date, în momentul următor pentru aceeași cerere puteți obține un rezultat complet diferit. Interfața sistemelor de înregistrare este concepută pentru a efectua operațiuni strict definite, iar capacitatea de a obține rezultate pentru o solicitare ad-hoc este sever limitată. Capacitatea de a procesa cantități mari de date este, de asemenea, scăzută datorită configurației SGBD pentru a efectua tranzacții scurte și încetinind inevitabil munca altor utilizatori.

Răspunsul la această nevoie a fost apariția tehnologie nouă tehnologii de depozit de date de organizare a bazelor de date.

Definirea și arhitecturile tipice ale depozitelor de date

Conceptul de depozit de date se bazează pe două idei principale - integrarea datelor granulare dezagregate (detaliate în sensul că descrie unele fapte specifice, proprietăți, evenimente etc.) într-un singur depozit și separarea seturilor de date și a aplicațiilor utilizate pentru prelucrare operațională și utilizată pentru rezolvarea problemelor de analiză. Definitia " depozit de date" a fost prezentat pentru prima dată de William G. Inmon în monografia sa. În ea, el a definit un depozit de date ca fiind „o colecție de date specifică domeniului, integrată, istorică, nedistructabilă, concepută pentru a sprijini luarea deciziilor de management”.

Conceptual, modelul de depozit de date poate fi reprezentat ca o diagramă prezentată în Figura 1. Datele din diverse surse sunt plasate în depozitul de date, iar descrierile acestor date sunt plasate în depozitul de metadate. Utilizatorul final, folosind diverse instrumente (instrumente de vizualizare, instrumente de raportare, prelucrare statistică etc.) și conținutul depozitului, analizează datele din depozit. Rezultatul activităților sale este informații sub formă de rapoarte gata făcute, modele ascunse găsite și orice previziuni. Din moment ce mijloacele de muncă Utilizator final cu un depozit de date pot fi foarte diverse, atunci teoretic alegerea lor nu ar trebui să afecteze structura acestuia și funcțiile de a-l menține la zi.

Implementarea fizică a schemei conceptuale de mai sus poate fi foarte diversă. Cele mai comune abordări sunt enumerate mai jos.

Stocare virtuală a datelor acesta este un sistem care reprezintă interfețe și metode de acces la sistemul de înregistrare, care emulează lucrul cu datele din acest sistem, ca și în cazul unui depozit de date. Un depozit de date virtual poate fi organizat prin crearea unei serii de vizualizări în baza de date sau prin utilizarea mijloace speciale acces, de exemplu, produse din clasa Desktop OLAP, care includ, de exemplu, BusinessObjects, Brio Enterprise și altele.

Principalele avantaje ale acestei abordări sunt:

Cu toate acestea, are mult mai multe dezavantaje decât avantaje. Crearea stocare virtuală date, nu creați o unitate de stocare ca atare, ci iluzia existenței acesteia. Structura de stocare a datelor și stocarea datelor în sine nu se modifică, iar problemele rămân:

Productivitate;

Transformări de date;

Integrarea datelor cu alte surse;

Lipsa de istorie;

Curățarea datelor;

Dependența de disponibilitatea bazei de date principale;

Dependența de structura bazei de date principale.

Arhitectură cu două niveluri Depozitarea datelor implică construirea de magazine de date fără a crea un depozit central, cu informații provenind dintr-un număr mic de sisteme de înregistrare și limitate la un anumit domeniu. Atunci când se construiesc magazine de date, se folosesc principiile de bază ale construirii depozitelor de date, care vor fi discutate mai jos, astfel încât să poată fi considerate depozite de date în miniatură. Avantajele data marturilor sunt:

Construirea unui depozit de date de întreprindere cu drepturi depline se face de obicei în arhitectura pe trei niveluri(trebuie remarcat că aici arhitectura pe trei niveluri nu înseamnă structura „DB Application Server Client”). La primul nivel există diverse surse de date sisteme interne de înregistrare, sisteme de referință, surse externe (date agentii de stiri, indicatori macroeconomici). Al doilea nivel conține un depozit central de date, unde circulă informații din toate sursele primul nivelși, eventual, un depozit de date operațional (ODS). Depozitul operațional nu conține date istorice și îndeplinește două funcții principale. În primul rând, este o sursă de informații analitice pentru managementul operațional și, în al doilea rând, datele sunt pregătite aici pentru încărcarea ulterioară în stocarea centrală. Pregătirea datelor se referă la transformarea acestora și la implementarea anumitor verificări. Prezența OSD este pur și simplu necesară atunci când există reglementări diferite pentru primirea informațiilor din surse. Al treilea nivel din arhitectura descrisă este un set de magazine de date specifice domeniului, sursa de informații pentru care este depozitul central de date. Data mart-urile sunt locul în care lucrează majoritatea utilizatorilor finali.

Proiectarea unei structuri de depozit de date relaționale

Depozitele de date sunt construite pe baza unui model de date multidimensional. Un model de date multidimensional presupune identificarea dimensiunilor individuale (timp, geografie, client, cont) și a faptelor (volumul vânzărilor, veniturile, cantitatea de mărfuri), care sunt analizate în funcție de dimensiunile selectate. Un model de date multidimensional poate fi implementat fizic atât în ​​SGBD-uri multidimensionale, cât și relaționale. În acest din urmă caz, se realizează după modelul „stea” sau „fulg de zăpadă”. Aceste scheme implică separarea tabelelor de fapte și a tabelelor de dimensiuni. Fiecare tabel de fapte conține date detaliate și chei externe la tabele de măsurare. Teoria construcției unui model de date multidimensional și implementarea acestuia în structura relațională larg acoperite atât în ​​literatura străină, cât și în cea internă.

Unul dintre subiectele mai puțin abordate este problema reprezentării ierarhiilor. Ca exemplu de măsurare care este utilizată pe scară largă în analiza activităților unei întreprinderi și are o structură ierarhică, putem cita un director de articole de cost. Să luăm în considerare modelul centrelor de cost (centre de cost) prezentat în Fig. 2.

Informatica clasica rezolva problema reprezentarii ierarhiilor folosind comunicarea recursiva. Această soluție simplă vă permite să plasați un copac de orice adâncime și dimensiune într-un singur tabel. În cazul nostru, datele luate în considerare vor fi prezentate în următoarea formă:

ID de părinte

1

Companie

2

Control

3

Infrastructură

4

Productie

5
6

Servicii

7

Depozitul A

8

Depozitul B

Tabelul 1.

Cu toate acestea, simplitatea acestei soluții ascunde și principalul său dezavantaj. Din păcate, SQL-ul standard nu acceptă pointeri recursivi, așa că sunt folosite alte metode pentru a reprezenta arbori în baza de date.

Metoda propusă de Joe Celko se bazează pe teoria mulțimilor. În această metodă, toate nodurile arborelui sunt parcurse în ordinea traversării directe și pentru fiecare nod sunt completate două valori - limitele din stânga și din dreapta, iar pentru fiecare nod al ramului arborelui se umple prima limită din stânga și numai apoi dreapta – la trecerea înapoi de la descendenți la părinți. Deci, în exemplul nostru, numerotarea nodurilor va fi după cum urmează:

Cu această numerotare a nodurilor, fiecare părinte conține copii ale căror margini din stânga și din dreapta se află în intervalul dintre marginile din stânga și din dreapta ale părintelui. În mod similar, toți părinții unui copil au o margine din stânga mai mică decât marginea din stânga a copilului și o margine din dreapta care este mai mare decât marginea din dreapta a copilului. Prin urmare, suma costurilor pentru un anumit centru de cost și toate componentele acestuia poate fi obținută într-o singură cerere. De exemplu, pentru a obține costuri de infrastructură, puteți rula următoarea interogare SQL:

selectați suma(fact_table.cost)
din tabel_fact, tabel_dimensiuni D1, tabel_dimensiuni D2
unde fact_table.dimension_id = D2.id
iar D2.stânga >= D1.stânga
iar D2.dreapta<= D1.right
și D1.name = „Infrastructură”

Pentru a facilita lucrul cu un astfel de director, pe lângă câmpurile din stânga și din dreapta, merită să adăugați încă două câmpuri: nivelul nodului „Level” în arbore, „Is_leaf” un steag care indică dacă nodul este o frunză în copacul sau nu. Astfel, obținem tabelul „dimension_table” (vezi Tabelul 2), care vă permite să stocați un arbore de orice adâncime și dimensiune de imbricare și vă permite să selectați copiii și părinții folosind o singură interogare.

1

Companie

2

Control

3

Infrastructură

4

Productie

5
6

Servicii

7

Depozitul A

8

Depozitul B

Tabelul 2. Reprezentarea ierarhiilor folosind marginile din stânga și din dreapta

O altă metodă, descrisă de Ralph Kimball, se bazează pe introducerea unui tabel auxiliar („helper-table”), prin care tabelul de fapte este legat de tabelul de dimensiuni. Acest tabel auxiliar reflectă structura ierarhică a dimensiunii și respectă următoarea lege: Tabelul auxiliar conține întregul set de perechi părinte-copil, iar copilul poate să nu fie un copil imediat al părintelui. Structura unui astfel de tabel și conținutul acestuia sunt prezentate în Tabelul 3.

ID de părinte

ID copilului

Distanţă

1
1
1
1
1
1
1
1
2 2 0 Y
3 3 0 N
3 5 1 N
3 6 1 N
4 4 0 N
4 7 1 N
4 8 1 N
5 5 0 Y
6 6 0 Y
7 7 0 Y
8 8 0 Y

Tabelul 3. Structura și conținutul tabelului auxiliar.

Acum, legând tabelul de fapte (vezi Fig. 4) cu identificatorul copil din tabelul auxiliar și tabelul cu dimensiunile cu identificatorul părinte, putem calcula suma costurilor pentru fiecare centru de cost și toate componentele sale într-o singură interogare, ca în cazul precedent. În același timp, adăugând restricții în câmpurile „Distanță” și „Este frunză”, putem calcula cu ușurință costurile pentru orice nivel din ierarhie.

selectați suma(fact_table.cost)
din fact_table, dimension_table, helper_table
unde fact_table.dimension_id = helper_table.child_id
și dimension_table.dimension_id = helper_table.parent_id
și dimension_table.name = „Infrastructură”
și helper_table.distanță = 1

Problema proiectării directoarelor ierarhice devine și mai complicată atunci când o dimensiune poate avea mai multe ierarhii alternative și devine complet insolubilă atunci când este necesar să se mențină istoricul modificărilor tabelului de dimensiuni.

În general, problema dimensiunilor în schimbare lent este interesantă în sine, fără a o complica cu o ierarhie a clasificatorilor. În literatură, în cele mai multe cazuri este considerată în contextul „dimensiunii care se schimbă încet”. Această sarcină, într-adevăr, poate fi rezolvată relativ simplu, adăugând data de început și data de încheiere a înregistrării la tabelul de dimensiuni. Modificarea unei intrări în director duce la „închiderea” vechii înregistrări și adăugarea uneia noi. Acum, revenind la exemplul unui director de articole de cost, un utilizator care dorește să obțină informații despre un articol de cost curent pentru orice dată specifică trebuie să îl includă în condiția de interogare SQL.

Să presupunem că directorul articolelor de cost este legat de directorul conturilor contabile. Unul sau mai multe conturi contabile reprezintă un element de cost. Cum ar trebui să afecteze o modificare a oricărui atribut al unui element de cost directorul conturilor contabile? Pe de o parte, din punctul de vedere al planului de conturi, modificarea unui atribut nu conduce la o modificare a esenței articolului de cost, iar înregistrările contabile prin planul de conturi trebuie să se refere la același articol de cost. Pe de altă parte, în directorul articolelor de cost a apărut o nouă intrare, care trebuie să fie cumva conectată cu directorul de conturi. Această problemă poate fi rezolvată prin împărțirea tabelului de dimensiuni în două - unul care conține informații curente și unul care conține istoricul modificărilor entității. Această abordare ne permite, de asemenea, să rezolvăm problema unei dimensiuni ierarhice cu necesitatea menținerii unui istoric al modificărilor înregistrărilor din ea.

Să o analizăm mai detaliat (vezi Fig. 5). Tabelul „dimension_actual” este un tabel de dimensiuni cu o cheie primară pentru dimension_id care conține atributele de dimensiune valide pentru astăzi. Conectat la acesta prin cheia externă dimension_id este tabelul istoric „dimension_history”, care conține istoricul modificărilor înregistrărilor, determinat de datele de început/sfârșit ale înregistrării (câmpurile date_start, date_end). Intrarea care este curentă astăzi este prezentă și în ea cu o dată de expirare deschisă. Tabelul de fapte „fact_table” este legat de tabelul de dimensiuni printr-un tabel helper „helper_table”, care reflectă structura ierarhică a dimensiunii.

Abordarea descrisă permite: în primul rând, stocarea și lucrul cu o dimensiune ca un arbore dezechilibrat; în al doilea rând, executați rapid interogări pentru care istoricul modificărilor dimensiunilor nu este important (tabelul care conține istoricul nu este implicat); în al treilea rând, vă permite să urmăriți istoricul modificărilor dintr-o dimensiune și, în cele din urmă, separă reflectarea istoriei și a ierarhiei, ceea ce simplifică foarte mult întreținerea dimensiunii.

Al treilea punct important cu care trebuie să se ocupe adesea un dezvoltator de stocare este legat de valorile agregate. Această clasă de probleme poate fi împărțită în două subclase. Primul ia în considerare problemele creării și menținerii agregatelor pe baza datelor detaliate disponibile și este destul de larg acoperit în literatură. Al doilea se datorează faptului că sursele de date pentru depozit nu oferă valori detaliate, ci un anumit set de date agregate. Această situație este tipică atunci când se creează depozite de date pentru companiile de management și autoritățile guvernamentale de reglementare care colectează multe formulare de raportare.

Un caz extrem al acestei abordări este un model care poate fi numit convențional „valoare-indicator”. Esența sa este că se colectează un set mare de indicatori care caracterizează activitățile financiare și economice ale întreprinderii. Acești indicatori pot fi sau nu legați funcțional între ei, pot reflecta aceleași valori, dar cu grade diferite de detaliu etc. Când încearcă să reprezinte astfel de date sub forma unui model multidimensional, dezvoltatorul se confruntă cu probleme semnificative și de multe ori merge pe calea creării nu a unui depozit de date, ci a unui depozit de formulare. O stocare tipică a formularelor este construită pe baza a trei dimensiuni: indicatori economici, timp, formulare de raportare; tabele de fapte valorile indicatorilor economici și tabele auxiliare care descriu modul în care indicatorii și valorile acestora sunt localizați în formularele de raportare. Atunci când analizează astfel de date, analistul va întâmpina dificultăți semnificative, în principal din cauza faptului că indicatorii de diferite forme nu pot fi comparați între ei. Singurul lucru care i-a mai rămas este să urmărească modificările indicatorilor unei forme în timp.

Concluzie

La implementarea proiectelor de depozit de date, apar o serie de sarcini comune care sunt independente de domeniul subiectului informatii prelucrate. Astfel de sarcini includ:

Acest articol a examinat posibilele soluții la aceste probleme. În special, modalitățile de implementare a dimensiunilor ierarhice au fost date prin introducerea de atribute suplimentare (chenarul din stânga și din dreapta), precum și prin introducerea unui tabel suplimentar „tabel-ajutor”. Cu toate acestea, în toate problemele luate în considerare, există probleme nerezolvate care necesită cercetări suplimentare. În special, cazul dimensiunilor ierarhice cu necesitatea menținerii unui istoric al modificărilor care au conexiuni cu alte directoare este dificil de implementat. Acest articol nu include întrebări privind metodele de curățare a datelor și algoritmii de încărcare a datelor în stocare. Aceste subiecte necesită o analiză separată.

LITERATURĂ

1.

Joerg Reinschmidt, Allison Francoise. Ghid de certificare Business Intelligence. Cărți roșii IBM;

2.

Inmon W. Construirea depozitului de date. New York: John Willey & Sons, 1992;

3.

Spearley, Eric. Depozite de date corporative. Planificare, dezvoltare, implementare. Volum. 1: Per. din engleza M.: Editura Williams, 2001;

4.

Joe Celko. Trees in SQL: Intelligent Enterprise, 20 octombrie 2000;

5.

Donald E. Knuth. Arta programarii, volumul 1. Algoritmi de baza, ed. a III-a: M.: Editura Williams, 2000.;

6.

Ralph Kimball. Ajutor pentru ierarhii: DBMS septembrie 1998;

7.

Ralph Kimball. Dimensiuni care se schimbă încet: DBMS aprilie 1996;

8.

Dicţionar statistic: M. „Finanţe şi statistică”, 1989;

9.

Duke V, Samoilenko A, Data mining: curs de formare. Sankt Petersburg: Peter, 2001;

10.

Erhard Rahm, Hong Hai Do: Curățarea datelor: probleme și abordări actuale. IEEE Data Engineering Bulletin 23(4): 3-13 (2000);

11.

Ralph Kimball: Setul de instrumente pentru depozitul de date: tehnici practice pentru construirea de depozite de date dimensionale. John Wiley 1996;

12.

Maria Sueli Almeida, Missao Ishikawa, Joerg Reinschmidt, Torsten Roeber, Noțiuni introductive cu Data Warehouse și Business Intelligence. Cărți roșii IBM;

13.

Nigel Pendse, Arhitecturi OLAP: Raportul OLAP, http://www.olapreport.com/Architectures.htm#top.

5.1. Organizarea datelor în sistemele informaționale corporative.

Avand in vedere CIS-ul la cel mai simplificat nivel, putem spune ca acesta contine o retea de calculatoare corporative (de calcul) si un pachet software de aplicatii specializate (APP) pentru rezolvarea problemelor din domeniu. La rândul lor, atât PPP, cât și o rețea de calculatoare implică în mod fundamental utilizarea datelor informaționale despre starea și dezvoltarea sistemelor controlate și gestionate de acestea. Din punct de vedere istoric, SIC constă din subsisteme ramificate separate ale întreprinderilor individuale, interconectate și reprezentând adesea un sistem ierarhic. Este firesc să presupunem că astfel de subsisteme au atât propriile surse, cât și propriile lor locații de stocare pentru datele aferente. Prin combinarea într-un singur sistem, apar întrebări cu privire la utilizarea corectă în comun a datelor situate geografic în diferite locații de stocare. Prin urmare, pentru a gestiona cu succes o asociație de producție dotată cu un CIS, este nevoie de un sistem fiabil de colectare, stocare și procesare a datelor. Cu alte cuvinte, este nevoie de o infrastructură informațională unificată care să satisfacă proiecte strategice de BI (Business Intelligence) sau o bază integrată pentru stocarea și utilizarea datelor. Scopul principal al integrării datelor este de a obține o imagine unificată și completă a stării datelor de afaceri corporative. Integrarea în sine este un proces complex, pe baza căruia este indicat să evidențiem:

tehnologii,

Produse,

Aplicații.

Metode sunt abordări ale integrării datelor.

Tehnologii– acestea sunt procese care implementează anumite metode de integrare a datelor.

Produse– acestea sunt soluții comerciale care acceptă una sau alta tehnologie de integrare a datelor.

Aplicații– sunt soluții tehnice gata făcute furnizate de dezvoltatori în conformitate cu dorințele clienților - clienți.

În funcție de complexitatea sistemelor informaționale corporative și de sarcinile pe care acestea sunt proiectate să le rezolve, organizarea datelor din acestea variază oarecum. În special, în CSI, conceput pentru a asigura gestionarea eficientă a proceselor de afaceri atât a sucursalelor individuale, cât și a corporației în ansamblu, se obișnuiește să se vorbească despre prezența bazelor de date corporative. În sistemele informaționale corporative utilizate la cele mai înalte niveluri de management și asociate mai ales cu procesele de analiză operațională și de luare a deciziilor, depozitul de date terminologice este utilizat în procesul de planificare, proiectare și prognozare a diferitelor tipuri de activități de management. Este oportun să rețineți că sintagma stocare integrată a datelor inerente ambelor.



5.2. Bazele corporative date și cerințe pentru aceasta

Fiind o stocare de date integrată la nivelul întregului sistem, baza de date corporativă este concepută pentru a oferi informații pentru gestionarea eficientă a tuturor proceselor și diviziilor de afaceri ale corporației. Integrarea datelor implică crearea unei noi structuri care include organic date din bazele de date ale departamentelor separate individuale, prin urmare o astfel de structură trebuie să îndeplinească anumite cerințe:

· Introducerea de date simplă și ușor de utilizat în baza de date,

· Stocarea datelor într-o formă care nu va duce la o creștere excesivă a datelor,

· Disponibilitatea informațiilor generale către angajații tuturor diviziilor corporației, sub rezerva condiției obligatorii de diferențiere a drepturilor de acces,

· Găsiți și preluați rapid informațiile necesare,

· Sortarea și filtrarea datelor necesare,

· Gruparea datelor cu același nume,

· Calcule intermediare și finale pe câmpuri,

· Transformarea și claritatea datelor de ieșire,

· Scalabilitate,

· Protecție împotriva defecțiunilor accidentale, pierderea irecuperabilă a datelor și accesul neautorizat.

În plus, atunci când se integrează baze de date separate (distribuite) într-o singură bază de date corporativă, este important să se asigure capacitatea de a lucra cu baza de date în așa fel încât utilizatorul să lucreze cu ea ca și cu una nedistribuită.

Crearea unei baze de date corporative integrate este posibilă folosind diverse metode, principalele fiind:

· Consolidare,

· Federalizare,

· Răspândire.

5.3. Caracteristicile soluțiilor de integrare pentru baze de date corporative

Consolidare. Sub consolidare de obicei se referă la adăugarea de date cu același nume. Un termen similar este utilizat pe scară largă în industria bancară, unde se formează un bilanț anual consolidat, care face posibilă prezentarea tuturor activelor și pasivelor băncii-mamă împreună cu sucursalele acesteia.

În raport cu o corporație, la utilizarea acestei metode, datele sunt copiate și colectate din bazele de date primare (DB - Slave) prin integrarea într-o singură locație de stocare (DB - Master). De regulă, serverul sediului central (principal) este ales ca atare locație de stocare (Fig. 5.1).

Fig.5.1. Metoda de consolidare a datelor

Datele din baza de date Master sunt folosite pentru raportare, analiză, dezvoltare și luare a deciziilor, precum și ca sursă de date pentru alte ramuri ale corporației.

Cele mai comune tehnologii pentru a susține astfel de soluții în timpul consolidării sunt următoarele tehnologii:

· Extragere, transformare și încărcare - ETL (Extract Transform Load);

· Managementul conținutului corporației - ECM (Enterprise Content Management).

Avantajele metodei de consolidare sunt:

1. Abilitatea de a se transforma(restructurare, reconciliere, curățare și/sau agregare) a unor volume semnificative de date în procesul de transfer al acestora de la sistemele primare la locațiile finale de stocare prin tehnologia ETL;

2. Abilitatea de a gestiona date nestructurate, cum ar fi documente, rapoarte și pagini datorită soluțiilor tehnologice ECM.

Pentru a lucra cu baza de date consolidată CIS, special aplicații de afaceri, care vă permit să creați interogări la datele bazei de date, rapoarte și, pe baza acestora, să efectuați analiza datelor.

Dezavantajul integrării prin consolidare este că datele consolidate din locația de stocare integrată nu pot fi actualizate sincron cu actualizările datelor din sistemele primare din cauza conflictelor de sincronizare.

Există o întârziere între momentele actualizării datelor în sistemele primare și în locația finală de stocare.

Acest întârziere poate varia de la câteva secunde la câteva ore sau chiar zile.

Federalizare. Sub federalizare de obicei se referă la un sindicat. Un termen similar este adesea folosit în politică atunci când se aranjează granițele unui stat (de exemplu, Germania, Federația Rusă, SUA).

Procesul de federalizare a datelor într-o bază de date corporativă este crearea unei imagini virtuale (aparente) care combină mai multe fișiere de date primare într-un singur întreg virtual (vezi Fig. 5.2). De fapt, federalizarea datelor constă în extragerea datelor din sistemele primare pe baza cerințelor externe. Managementul bazei de date corporative integrate conform metodei federale este realizat de procesor de federalizare.

Fig.2. Metoda federalizării datelor

La accesarea datelor dintr-o bază de date virtuală, orice aplicație de afaceri generează o solicitare către imaginea virtuală. Pe baza acestei solicitări, procesorul de federație preia datele din sistemele primare corespunzătoare, le integrează în conformitate cu imaginea virtuală și furnizează rezultatul aplicației de afaceri care a generat cererea. În acest caz, toate transformările necesare ale datelor sunt efectuate atunci când sunt extrase din sistemele primare.

Suportul pentru abordarea federalizată a integrării datelor este oferit de tehnologia de integrare a informațiilor întreprinderii (E I I), care înseamnă Integrarea informațiilor corporative.

O caracteristică specială a soluției de federație este că procesorul de federalizare folosește metadate(cunoștințe), care conține date despre compoziția și caracteristicile imaginii virtuale, cantitatea de date, conexiunile semantice dintre acestea și modalitățile de accesare a acestora, ajutând să ajute soluția federativă să optimizeze accesul la sistemele primare.

Principalele avantaje ale abordării federale sunt:

· capacitatea de a accesa datele curente fără a crea o nouă bază de date suplimentară,

fezabilitatea aplicării după achiziționarea sau fuziunea de companii,

· indispensabilitate în cazurile în care, din motive de securitate, există restricții de licențiere privind copierea datelor din sistemele primare,

· utilizarea, dacă este necesar, a autonomiei ridicate a diviziilor locale ale corporației și a flexibilității controlului centralizat al activităților acestora,

· grad ridicat de utilitate pentru marile corporații transnaționale.

Dezavantajele abordării includ:

· Productivitate redusă datorită costurilor suplimentare de accesare a mai multor surse de date,

Federalizarea este cea mai potrivită pentru a prelua cantități mici de date,

· cerințe ridicate pentru calitatea datelor primare.

Răspândirea. Sub diseminare de obicei se referă la transferul teritorial al obiectelor multiplicate. Distribuția datelor se referă la multiplicarea bazelor de date primare și la mutarea acestora dintr-un loc în altul. La implementarea acestei metode aplicatii de afaceri operați online și mutați datele către destinații în funcție de anumite evenimente care au loc. Pentru această soluție tehnică, problema actualizării datelor care este posibilă în modurile sincrone sau asincrone devine importantă, presupune că actualizările atât în ​​sistemul primar, cât și în sistemul țintă au loc în timpul aceleiași tranzacții fizice.

Exemple de tehnologii care sprijină implementarea metodei de diseminare a datelor sunt:

· Integrarea aplicațiilor întreprinderii EAI - Enterprise Application Integration,

· Replicarea datelor corporative EDR – Enterprise Data Replication.

Structura generalizată a implementării metodei de diseminare a datelor arată ca în Fig. 5.3.

Fig.5.3. Metoda de difuzare a datelor

O caracteristică distinctivă a metodei de distribuție a datelor este livrarea garantată a datelor către sistemul de destinație cu o latență minimă, aproape de timp real.

Combinația de tehnologii de integrare (EAI) și replicare (EDR) în metodă oferă multiple avantaje, sub forma următoarelor avantaje:

· Performanta ridicata,

· Posibilitatea de restructurare și curățare a datelor,

· Echilibrarea sarcinii prin crearea de copii de rezervă și restaurarea datelor.

Abordare hibridă. Realitățile activității economice sunt de așa natură încât nu există două întreprinderi identice, cu atât mai puțin două corporații identice. Această împrejurare își lasă amprenta asupra procesului de creare și completare a CSI. Acest lucru se aplică pe deplin metodelor de integrare a datelor în baze de date. Din acest motiv, multe CSI folosesc așa-numita hibrid o abordare care include simultan mai multe metode de integrare. Exemple de această abordare sunt tehnologiile care oferă o imagine coerentă a informațiilor despre clienți:

· Integrarea datelor clienților în sistemele CDI - Customer Data Integration,

· Integrarea datelor clienților în modulele CRM – Customer Relations Management.

În special, implementarea CDI poate fi abordată în diferite moduri.

Cea mai simplă modalitate este de a crea o bază de date consolidată pentru clienți care conține date din sistemele primare. În acest caz, decalajul informațional poate fi reglat prin utilizarea diferitelor moduri de consolidare: operațional sau batch, în funcție de frecvența actualizării acestor informații.

A doua metodă este federalizarea datelor, atunci când este virtuală prezentări de afaceri datele clienților conținute în sistemele primare. Și fișierul de metadate poate conține elemente cheie comune care pot fi utilizate pentru a lega informațiile despre clienți.

Astfel, datele generale (de exemplu, detalii) despre clienți pot fi consolidate ca date cele mai statice. Și date mai dinamice (de exemplu, informații despre comenzi) pot fi federalizate.

Mai mult, abordarea hibridă poate fi extinsă prin utilizarea unei metode de diseminare a datelor. De exemplu, un client care folosește serviciile unui magazin online își schimbă detaliile în timpul serviciului. Aceste modificări pot fi trimise în partea consolidată a bazei de date și de acolo distribuite către toate sistemele primare care conțin date despre clienții magazinului.

Ținând cont de avantajele și dezavantajele fiecărei metode, este recomandabil să adoptați o abordare creativă a aplicării și utilizării lor în comun.

De exemplu, este recomandabil să folosiți federalizarea datelor în cazurile în care costurile consolidării datelor depășesc beneficiile de afaceri pe care le oferă consolidarea. În special, procesarea promptă a cererilor și pregătirea rapoartelor este exact o astfel de situație.

Aplicarea practică a metodei de distribuție a datelor este foarte diversă, atât din punct de vedere al performanței, cât și din punct de vedere al posibilităților de restructurare și curățare a datelor.

5.4. Concept și soluții structurale ale depozitelor de date

Magazin de date - este un dispozitiv integrat de stocare a informațiilor, orientat spre subiect, care acumulează date externe și operaționale, precum și date din alte sisteme, pe baza cărora se construiesc procesele decizionale și de analiză a datelor.

Spre deosebire de bazele de date și băncile de date, baza depozitelor de date nu este internă, ci surse externe date: diverse Sisteme de informare, arhive electronice, cataloage electronice accesibile publicului, cărți de referință și colecții.

Conceptul de depozit de date se bazează pe două idei principale:

1. Integrarea datelor detaliate separate (care descriu fapte specifice, proprietăți, evenimente etc.) într-un singur depozit.

2. Separarea seturilor de date și a aplicațiilor utilizate pentru prelucrare și analiză.

Un depozit de date este organizat în cazurile în care este necesar să se obțină:

· Integrarea valorilor datelor actuale și istorice,

· Combinarea datelor din surse disparate,

· Crearea unei platforme de date fiabile în scopuri analitice,

· Asigurarea omogenității datelor în organizație,

· Facilitează implementarea standardelor de date corporative fără a schimba sistemele de operare existente,

· Oferirea unei perspective istorice ample și oportunități de analiză a tendințelor de dezvoltare.

Din punct de vedere istoric, depozitele de date au fost construite folosind unul, două sau trei niveluri.

Scheme cu un singur nivel au fost inițial destinate celor mai simple arhitecturi, care includ DSS funcțional, cu o infrastructură informațională insuficient dezvoltată, atunci când analiza se realizează folosind date din sisteme operaționale, după principiul: date - forme de prezentare.

Avantajele unor astfel de scheme sunt:

· Transfer rapid de date de la sistemele operaționale la un sistem specializat fără legături intermediare,

· Costuri minime prin utilizarea unei singure platforme.

Defecte:

· Gamă restrânsă de probleme care trebuie rezolvate datorită unei singure surse de date,

· Calitatea scăzută a datelor din cauza lipsei unui pas de curățare.

Scheme pe două niveluri furnizați un lanț: date – data marts – formulare de prezentare. Ele sunt utilizate în corporații cu un număr mare de divizii independente care folosesc propriile tehnologii informaționale.

Avantaje:

· Vitrinele folosite sunt concepute pentru a răspunde la un anumit număr de întrebări,

· Este posibilă optimizarea datelor în vitrine, ceea ce îmbunătățește productivitatea.

Defecte:

· Dificultate în asigurarea consecvenței datelor din cauza repetării acestora în vitrine,

· Complexitatea potențială a umplerii vitrinelor cu un număr mare de surse de date,

· Din cauza lipsei de consolidare a datelor la nivel corporativ, nu există o imagine unică a afacerii.

Evoluția dezvoltării a condus la faptul că construirea unui depozit de date cu drepturi depline pentru sistemele corporative moderne a început să fie realizată folosind arhitectura pe trei niveluri (vezi Fig. 5.4).

Pe primul nivel există diverse sisteme de înregistrare care sunt surse de date. Astfel de sisteme pot fi sisteme de planificare a resurselor întreprinderii (ERP - Enterprise Resource Planning), sisteme de referință (operaționale), surse externe sau sisteme care furnizează date de la agențiile de informare etc.

Pe al doilea level conține o stocare centrală, care colectează date din toate sursele de la primul nivel, precum și un depozit de date operațional, care este conceput pentru a îndeplini două funcții:

· Depozitul este o sursă de informații analitice utilizată pentru managementul operațional,

· În depozitul operațional, datele sunt pregătite pentru încărcarea ulterioară în depozitul central. Pregătirea datelor înseamnă efectuarea de verificări și transformarea datelor în legătură cu diverse reglementări pentru primirea datelor de la primul nivel.

Al treilea nivelul este o colecție de magazine de date orientate pe subiect.

magazine de date - Acestea sunt unități relativ mici, orientate spre funcție, al căror conținut ajută la rezolvarea problemelor analitice ale diviziilor individuale ale corporației. Data mart-urile sunt în esență subseturi de date dintr-un depozit. În același timp, utilizatorii finali au posibilitatea de a accesa date detaliate din depozit în cazul în care nu există date suficiente în vitrina, precum și de a obține o imagine mai completă a stării afacerii.

Fig.5.4. Arhitectura depozitului de date

Principalele operațiuni tehnologice ale depozitelor de date organizate astfel sunt:

· Extracţie datele reprezintă procesul de transfer de date din surse eterogene către un depozit operațional,

· Conversie datele reprezintă modificarea datelor pe baza unor reguli speciale, cu transferul lor ulterior într-o stocare centrală,

· Curatenie datele reprezintă eliminarea dublării datelor care provin din diferite surse,

· Actualizați data este propagarea actualizărilor de date către datele sursă ale tabelelor de bază și datele derivate aflate în depozit.

Avantaje:

· Umplerea vitrinelor este simplificată datorită utilizării unei singure surse de date șterse,

· Magazinele de date sunt sincronizate cu imaginea afacerii corporative, ceea ce facilitează extinderea stocării centrale și adăugarea de magazine de date,

· Performanță garantată.

Defecte:

· Prezența redundanței datelor, ceea ce duce la cerințe crescute pentru tehnologia de stocare a datelor,

5. 5.Sisteme de management al bazelor de date și tehnologii de acces la date în CSI

Sistemul de gestionare a bazelor de date(DBMS) este un set de limbaje și instrumente software concepute pentru crearea, întreținerea și partajarea unei baze de date de către unul sau mai mulți utilizatori.

În prezent, cele mai utilizate SGBD-uri sunt cele construite pe baza unui model de date relaționale, descris de un aparat matematic strict. teorii relaționale.

O caracteristică a SGBD-urilor care lucrează într-un CIS este faptul că trebuie să gestioneze bazele de date situate pe medii distribuite în spațiu.

În interesul eliminării dublării suplimentare sau copierii datelor în CSI, accentul principal este pus pe principiul prelucrării datelor la distanță. Bazele de date din CIS conțin date necesare multor utilizatori. Obținerea accesului simultan al mai multor utilizatori la baza de date este posibilă atunci când se instalează pe un local rețea de calculatoare SGBD care lucrează cu utilizatori și cu o singură bază de date.

Principalele soluții tehnologice pentru lucrul multi-utilizator cu baze de date sunt tehnologiile fișier/server și client/server. Preluând varianta cea mai potrivită din aceste tehnologii, clientul/serverul din CSI organizează sisteme specializate de procesare a bazelor de date distribuite. În același timp, bazele de date distribuite sunt gestionate în așa fel încât datele să fie distribuite nu la nivel logic, ci la nivel fizic, iar baza de date în sine este considerată o singură „superschemă”. Într-o bază de date distribuită, funcțiile administrative sunt distribuite între administratorul bazei de date integrate și administratorii bazei de date locale. Administratorul bazei de date integrate monitorizează delimitarea accesului diferiților utilizatori la baza de date și asigură integritatea și siguranța datelor, precum și protecția datelor împotriva corectării simultane de către mai mulți utilizatori. Controlul accesului se realizează în conformitate cu drepturile acordate utilizatorilor individuali în sistemul de operare al rețelei.

O caracteristică caracteristică a programelor create folosind un DBMS pentru lucrul cu baze de date corporative la distanță și distribuite este utilizarea unei interfețe deschise de acces la date - ODBC (Open Data Base Connectivity). Toate funcțiile de transfer de date sunt alocate interfeței ODBC, care este o punte de legătură între baza de date integrată DBMS și aplicația client DBMS. În același timp, SGBD-ul clientului poate interacționa nu numai cu bazele de date locale, ci și cu datele aflate în baza de date integrată. Clientul are capacitatea de a trimite interogări către baza de date integrată DBMS, de a primi date de la acestea și de a trimite propriile date actualizate.

Baza de date corporativă este legătura centrală a sistemului informațional corporativ și vă permite să creați un spațiu informațional unificat pentru corporație. Baze de date corporative


Distribuiți-vă munca pe rețelele sociale

Dacă această lucrare nu vă convine, în partea de jos a paginii există o listă cu lucrări similare. De asemenea, puteți utiliza butonul de căutare


PAGINA 15

TEMA V. BAZELE DE DATE CORPORATE

PRELEZA 8

V .1. Organizarea datelor în sistemele corporative. Baze de date corporative.

V .2. SGBD și soluții structurale în sistemele corporative.

V.3. Tehnologii Internet/Intranet și soluții de acces la baze de date pentru întreprinderi.

V .1. ORGANIZAREA DATELOR ÎN SISTEME CORPORATIVE. BAZELE DE DATE CORPORATE

Baza corporativădatele reprezintă legătura centrală a sistemului informațional corporativ și vă permit să creați un spațiu informațional unificat al corporației. Baze de date corporative (Fig. 1.1).

Există diferite definiții ale bazelor de date.

În baza de date (DB)înțelege un set de informații legate logic în așa fel încât să constituie un singur set de date stocate în dispozitivele de stocare ale unui computer. Acest set acționează ca date inițiale ale problemelor rezolvate în procesul de funcționare a sistemelor automate de control, a sistemelor de prelucrare a datelor, a sistemelor informatice și de calcul.

Termenul bază de date poate fi formulat pe scurt ca o colecție de date legate logic, destinate a fi partajate.

Sub baza de datese referă la o colecție de date stocate împreună cu o astfel de redundanță minimă încât poate fi utilizată în mod optim pentru una sau mai multe aplicații.

Scopul creării bazelor de dateca forme de stocare a datelorconstruirea unui sistem de date care nu depinde de algoritmii adoptați (software), de mijloacele tehnice utilizate sau de localizarea fizică a datelor în computer. Baza de date presupune o utilizare multifuncțională (mai mulți utilizatori, multe forme de documente și interogări ale unui singur utilizator).

Cerințe de bază pentru baze de date:

  • Completitudinea prezentării datelor. Datele din baza de date trebuie să reprezinte în mod adecvat toate informațiile despre obiect și ar trebui să fie suficiente pentru ODS.
  • Integritatea bazei de date. Datele trebuie păstrate în timpul procesării SOD-ului lor și în orice situații apărute în timpul procesului de lucru.
  • Flexibilitatea structurii datelor. Baza de date ar trebui să permită modificarea structurilor de date fără a-i încălca integritatea și integralitatea atunci când condițiile externe se schimbă.
  • Fezabilitate. Aceasta înseamnă că trebuie să existe o reprezentare obiectivă a diferitelor obiecte, proprietățile și relațiile lor.
  • Disponibilitate. Este necesar să se asigure diferențierea accesului la date.
  • Redundanţă. Baza de date trebuie să aibă redundanță minimă în reprezentarea datelor despre orice obiect.

Cunoașterea este înțeleasă caun set de fapte, modele și reguli euristice cu ajutorul cărora puteți rezolva o anumită problemă.

Baza de cunoștințe (KB)  un set de baze de date și reguli utilizate, obținute de la factorii de decizie. Baza de cunoștințe este un element al sistemelor expert.

Este necesar să distingemmoduri diferite de prezentare a datelor.

Date fiziceAcestea sunt date stocate în memoria computerului.

Reprezentarea logica a datelorcorespunde reprezentării datelor fizice de către utilizator. Diferența dintre reprezentarea fizică și cea logică corespunzătoare a datelor este că aceasta din urmă reflectă unele relații importante între datele fizice.

Sub baza de date corporativăsă înțeleagă o bază de date care combină, într-o formă sau alta, toate datele și cunoștințele necesare despre organizația care este automatizată. În sistemele informaționale corporative, cea mai concentrată expresie a găsit conceptul debaze de date integrate, care implementează principiul introducerii unice și utilizării repetate a informațiilor.

Orez. 1.1. Structura de interacțiune a departamentelor cu resursele informaționale ale corporației.

Există baze de date corporativeconcentrat (centralizat) și distribuite.

Concentrat (centralizat) Bază de date este o bază de date ale cărei date sunt stocate fizic în dispozitivele de stocare ale unui computer. În fig. Figura 1.2 prezintă o diagramă a unei aplicații server pentru accesarea bazelor de date pe diverse platforme.

Fig.1.2. Schemă eterogenă baza de date centralizata

Centralizarea procesării informațiilor a făcut posibilă eliminarea unor astfel de dezavantaje ale sistemelor de fișiere tradiționale precum incoerența, inconsecvența și redundanța datelor. Cu toate acestea, pe măsură ce bazele de date cresc și, mai ales atunci când sunt utilizate în organizații separate geografic, apar probleme. De exemplu, pentru bazele de date concentrate situate la nodul unei rețele de telecomunicații, prin care diferite departamente ale organizației accesează date, apar următoarele dificultăți pe măsură ce volumul de informații și numărul de tranzacții cresc:

  • Flux mare de schimb de date;
  • Trafic ridicat în rețea;
  • Fiabilitate scăzută;
  • Performanță generală scăzută.

Deși este mai ușor să se asigure securitatea, integritatea și consistența informațiilor în timpul actualizărilor într-o bază de date concentrată, aceste probleme creează anumite dificultăți. Descentralizarea datelor este propusă ca o posibilă soluție la aceste probleme. Prin descentralizare se realizează următoarele:

  • Grad mai mare de simultaneitate a procesării datorită distribuției sarcinii;
  • Îmbunătățirea utilizării datelor la fața locului atunci când se efectuează interogări de la distanță (la distanță);
  • Costuri mai mici;
  • Ușurință în gestionarea bazelor de date locale.

Costurile creării unei rețele ale cărei noduri conțin stații de lucru (calculatoare mici) sunt mult mai mici decât costurile creării unui sistem similar folosind un computer mare. Figura 1.3 prezintă diagrama logică a unei baze de date distribuite.

Fig.1.3. Baza de date corporativă distribuită.

Să dăm următoarea definiție a unei baze de date distribuite.

Baza de date distribuita -aceasta este o colecție de informații, fișiere (relații) stocate în diferite noduri ale rețelei informaționale și conectate logic în așa fel încât să constituie un singur set de date (conexiunea poate fi funcțională sau prin copii ale aceluiași fișier). Astfel, acesta este un set de baze de date care sunt interconectate logic, dar situate fizic pe mai multe mașini care fac parte din aceeași rețea de calculatoare.

Cele mai importante cerințe pentru caracteristicile unei baze de date distribuite sunt:

  • Scalabilitate;
  • Compatibilitate;
  • Suport pentru diverse modele de date;
  • Portabilitate;
  • Transparența locației;
  • Autonomia nodurilor bazei de date distribuite (Site Autonomy);
  • Procesarea cererilor distribuite;
  • Executarea tranzacțiilor distribuite.
  • Sprijin pentru un sistem de securitate omogen.

Transparența locației permite utilizatorilor să lucreze cu baze de date fără a ști nimic despre locația lor. Autonomia nodurilor bazei de date distribuite înseamnă că fiecare bază de date poate fi menținută independent de celelalte. O interogare distribuită este o interogare (instrucțiune SQL) în timpul execuției căreia sunt accesate obiecte (tabele sau vederi) din diferite baze de date. La executarea tranzacțiilor distribuite, există controlul concurenței între toate bazele de date implicate. Oracle7 folosește tehnologia de transfer de informații în două faze pentru a efectua tranzacții distribuite.

Bazele de date care alcătuiesc o bază de date distribuită nu trebuie neapărat să fie omogene (adică întreținute de același SGBD) sau procesate în același mediu de sistem de operare și/sau pe același tip de computere. De exemplu, o bază de date poate fi o bază de date Oracle pe un computer SUN cu sistemul de operare SUN OS (UNIX), a doua bază de date poate fi întreținută de un DBMS DB2 pe un mainframe IBM 3090 cu sistemul de operare MVS, iar a treia bază de date poate să fie întreținut de un DBMS SQL/DS tot pe mainframe IBM, dar cu un sistem de operare VM. Este necesară o singură condiție - toate mașinile cu baze de date trebuie să fie accesibile prin rețeaua căreia îi aparțin.

Sarcina principală a unei baze de date distribuitedistribuirea datelor prin rețea și asigurarea accesului la aceasta. Există următoarele moduri de a rezolva această problemă:

  • Fiecare nod stochează și folosește propriul set de date, care este disponibil pentru interogări de la distanță. Această distribuție este împărțită.
  • Unele date care sunt utilizate frecvent pe site-uri la distanță pot fi duplicate. Această distribuție se numește parțial duplicat.
  • Toate datele sunt duplicate în fiecare nod. Această distribuție se numește complet duplicat.
  • Unele fișiere pot fi împărțite orizontal (se alocă un subset de înregistrări) sau vertical (se alocă un subset de câmpuri de atribute), cu subseturile alocate stocate în diferite noduri împreună cu datele nedivizate. Această distribuție se numește split (fragmentat).

Când creați o bază de date distribuită la nivel conceptual, trebuie să rezolvați următoarele probleme:

  • Este necesar să existe o singură diagramă conceptuală a întregii rețele. Acest lucru va asigura transparența logică a datelor pentru utilizator, în urma căreia acesta va putea să formeze o cerere către întreaga bază de date în timp ce se află la un terminal separat (parcă ar lucra cu o bază de date centralizată).
  • Este necesară o schemă care să definească locul în care se află datele în rețea. Acest lucru va asigura transparența plasării datelor, astfel încât utilizatorul să nu fie nevoit să specifice unde să trimită cererea pentru a obține datele necesare.
  • Este necesar să se rezolve problema eterogenității bazelor de date distribuite. Bazele de date distribuite pot fi omogene sau eterogene din punct de vedere hardware și software. Problema eterogenității se rezolvă relativ ușor dacă baza de date distribuită este eterogenă din punct de vedere hardware, dar omogenă din punct de vedere software (DBMS identic în noduri). Dacă sunt utilizate diferite SGBD-uri în nodurile unui sistem distribuit, sunt necesare instrumente pentru conversia structurilor de date și a limbilor. Acest lucru ar trebui să asigure o conversie transparentă între nodurile bazei de date distribuite.
  • Problema managementului dicționarului trebuie rezolvată. Pentru a oferi toate tipurile de transparență într-o bază de date distribuită, sunt necesare programe care să gestioneze numeroase dicționare și cărți de referință.
  • Este necesar să se definească metode de executare a interogărilor într-o bază de date distribuită. Metodele de executare a interogărilor într-o bază de date distribuită diferă de metodele similare din bazele de date centralizate, deoarece părțile individuale ale interogărilor trebuie executate la locația datelor relevante și rezultatele parțiale trebuie transmise către alte noduri; În același timp, trebuie asigurată coordonarea tuturor proceselor.
  • Este necesar să se rezolve problema executării paralele a interogărilor. O bază de date distribuită necesită un mecanism complex de gestionare a prelucrărilor concurente, care, în special, trebuie să asigure sincronizarea la actualizarea informațiilor, ceea ce garantează consistența datelor.
  • Este necesară o metodologie dezvoltată pentru distribuirea și plasarea datelor, inclusiv împărțirea, care este una dintre cerințele principale pentru o bază de date distribuită.

Una dintre noile domenii în curs de dezvoltare ale arhitecturii sistemelor informatice, care este un mijloc puternic de procesare a informațiilor nenumerice, estemașini de baze de date. Motoarele de baze de date sunt folosite pentru a rezolva probleme nenumerice, cum ar fi stocarea, căutarea și transformarea documentelor și faptelor și lucrul cu obiecte. În urma definirii datelor ca informații digitale și grafice despre obiectele din lumea înconjurătoare, conceptul de date în timpul prelucrării numerice și nenumerice are conținut diferit. În procesarea numerică, sunt folosite obiecte precum variabile, vectori, matrice, matrice multidimensionale, constante și așa mai departe, în timp ce în procesarea nenumerică, obiectele pot fi fișiere, înregistrări, câmpuri, ierarhii, rețele, relații etc. -prelucrarea numerică este interesată direct de informații despre obiecte (de exemplu, un anumit angajat sau grup de angajați), și nu în fișierul angajatului în sine. Aceasta nu indexează fișierul angajatului pentru a selecta o anumită persoană; aici ești mai interesat de conținutul înregistrării pe care o cauți. Cantități uriașe de informații sunt de obicei supuse unei prelucrări non-numerice. În diverse aplicații, puteți efectua următoarele operații asupra acestor date, de exemplu:

  • cresterea salariilor pentru toti angajatii companiei;
  • calculează dobânda bancară pe conturile tuturor clienților;
  • efectuați modificări la lista tuturor mărfurilor din stoc;
  • găsiți rezumatul necesar din toate textele stocate în bibliotecă sau în sistemul de regăsire a informațiilor bibliografice;
  • găsiți o descriere a contractului dorit într-un dosar care conține documente legale;
  • examinați toate fișierele care conțin descrieri de brevet și găsiți un brevet (dacă există) similar cu cel propus din nou.

Pentru implementarea bazelor de date au fost dezvoltate mașini paralel și asociativ arhitectura ca alternativă la un singur procesorvon Neumannstructuri care vă permit să lucrați cu cantități mari de informații în timp real.

Mașinile de baze de date câștigă importanță datorită cercetării și aplicării conceptelor de inteligență artificială precum reprezentarea cunoștințelor, sistemele expert, inferența, recunoașterea modelelor etc.

Depozitele de informații.Astăzi, mulți admit că majoritatea companiilor operează deja mai multe baze de date și, pentru a lucra cu succes cu informații, au nevoie nu doar de diferite tipuri de baze de date, ci de diferite generații de SGBD. Conform statisticilor, fiecare organizație folosește în medie 2,5 SGBD-uri diferite. A devenit evidentă nevoia de a „izola” afacerile companiilor, sau mai bine zis, a persoanelor implicate în această afacere, de caracteristicile tehnologice ale bazelor de date, de a oferi utilizatorilor o imagine unică a informațiilor corporative, indiferent de locul în care sunt stocate fizic. Acest lucru a stimulat apariția tehnologiei de stocare a informațiilor ( Depozitarea datelor, DW).

Scopul principal al DW estecrearea unei reprezentări logice unificate a datelor conținute în diferite tipuri de baze de date sau, cu alte cuvinte, un model de date corporative unificat.

O nouă rundă de dezvoltare DW a devenit posibilă datorită îmbunătățirii tehnologia Informatieiîn general, în special apariția unor noi tipuri de baze de date bazate pe procesarea interogărilor paralele, care la rândul lor s-au bazat pe progresele din domeniul calculatoarelor paralele. Au fost createconstructori de interogăricu o interfață grafică intuitivă care a făcut ușoară construirea de interogări complexe de baze de date. Varietate de softwaremiddlewarefurnizat comunicareîntre diferite tipuri de baze de date, și în cele din urmă a scăzut brusc în prețdispozitive de stocare.

Structura corporației poate include Bază de date.

Bază de date componentă funcțională și organizatorică în sistemele automate de control și sisteme informatice și de calcul, oferind suport informațional centralizat pentru un grup de utilizatori sau un set de sarcini rezolvate în sistem.

Bază de date este considerat un sistem de informare și referință, al cărui scop principal este:

  • în acumularea și menținerea în stare de funcționare a unui set de informații care alcătuiește baza de informații a întregului sistem automatizat sau a unui anumit set de sarcini rezolvate în acesta;
  • în emiterea datelor solicitate de sarcină sau utilizator;
  • în asigurarea accesului colectiv la informațiile stocate;
  • în asigurarea managementului necesar al utilizării informaţiilor cuprinse în baza de informaţii.

Astfel, o bancă de date modernă este un complex software și hardware complex, care include instrumente tehnice, de sistem și de rețea, baze de date și DBMS, sisteme de regăsire a informațiilor pentru diverse scopuri.

V .2. SGBD ȘI SOLUȚII STRUCTURALE ÎN SISTEME CORPORATE

Baze de date și sisteme de management al cunoștințelor

O componentă importantă a sistemelor informatice moderne sunt sistemele de management al bazelor de date (DBMS).

SGBD un set de instrumente software și limbaj concepute pentru crearea, întreținerea și utilizarea bazelor de date.

Un sistem de gestionare a bazelor de date oferă acces la bazele de date pentru sistemele de procesare a datelor. După cum sa menționat deja, SGBD-urile joacă un rol important în crearea sistemelor informaționale corporative și, mai ales, un rol important în crearea sistemelor informaționale care utilizează resurse de informații distribuite bazate pe tehnologiile moderne de calcul de rețea.

Principala caracteristică a SGBD-urilor moderne este că SGBD-urile moderne acceptă astfel de tehnologii precum:

  • Tehnologia client/server.
  • Suport pentru limbile baze de date. Acestlimbaj de definire a schemei DB (SDL - Schema Definition Language),limbaj de manipulare a datelor (DML - Data Manipulation Language), limbaje integrate SQL (Structured Queue Language), QDB (Query - By - Exemplu) și QMF (Query Management Facility) ) instrument periferic avansat pentru specificarea interogărilor și generarea de rapoarte pentru DB 2 etc.;
  • Gestionarea directă a datelor în memoria externă.
  • Gestionarea bufferelor RAM.
  • Managementul tranzacțiilor. Tehnologia OLTP (Procesarea tranzacțiilor on-line), OLAP tehnologie (Procesare de analiză on-line) pentru DW.
  • Asigurați protecția și integritatea datelor. Utilizarea sistemului este permisă numai utilizatorilor autorizați să acceseze datele. Atunci când utilizatorii efectuează operațiuni asupra datelor, consecvența datelor stocate (integritatea) este menținută. Acest lucru este important în sistemele de informații corporative cu mai mulți utilizatori.
  • Jurnalizarea.

SGBD-urile moderne trebuie să se asigure că cerințele bazei de date enumerate mai sus sunt îndeplinite. În plus, acestea trebuie să îndeplinească următoarele principii:

  • Independenta datelor.
  • Versatilitate. SGBD-ul trebuie să aibă suport puternic pentru modelele de date conceptuale pentru afișarea vederilor logice personalizate.
  • Compatibilitate. SGBD-ul trebuie să rămână operațional pe măsură ce software-ul și hardware-ul evoluează.
  • Neredundanța datelor. Spre deosebire de sistemele de fișiere, o bază de date trebuie să fie o singură colecție de date integrate.
  • Protejarea datelor. SGBD-ul trebuie să ofere protecție împotriva accesului neautorizat.
  • Integritatea datelor. SGBD-ul trebuie să împiedice utilizatorii să încalce baza de date.
  • Managementul muncii concomitent. SGBD-ul trebuie să protejeze baza de date de inconsecvențe în modul de acces partajat. Pentru a asigura o stare consecventă a bazei de date, toate cererile utilizatorului (tranzacțiile) trebuie executate într-o anumită ordine.
  • SGBD-ul trebuie să fie universal. Trebuie să suporte diferite modele de date pe o singură bază logică și fizică.
  • SGBD-ul trebuie să suporte atât baze de date centralizate, cât și distribuite și, astfel, să devină o legătură importantă în rețelele de calculatoare.

Considerând un SGBD ca o clasă de produse software care vizează menținerea bazelor de date în sisteme automate, putem identifica două caracteristici cele mai semnificative care definesc tipurile de SGBD. Potrivit acestora, un SGBD poate fi privit din două puncte de vedere:

  • capacitățile lor în legătură cu bazele de date distribuite (corporate);
  • relația lor cu tipul de model de date implementat în SGBD.

În ceea ce privește bazele de date corporative (distribuite), se pot distinge aproximativ următoarele tipuri de SGBD:

  • SGBD desktop. Aceste produse se concentrează în primul rând pe lucrul cu date personale (date desktop). Au seturi de comenzi pentru partajarea bazelor de date comune, dar de dimensiuni reduse (cum ar fi un birou mic). În primul rând, acestea sunt SGBD-uri precum Access, dBASE, Paradox, EcoxPro. De ce Access, dBASE, Paradox, EcoxPro au acces nesatisfăcător la datele corporative. Faptul este că nu există o modalitate ușoară de a depăși bariera dintre datele personale și cele corporative. Și nici măcar ideea nu este că mecanismul SGBD-ului de date personale (sau biroul mic) este axat pe accesarea datelor prin multe gateway-uri, produse de internetwork etc. Problema este că aceste mecanisme implică în mod obișnuit transferuri complete de fișiere și nici un suport extins pentru indexuri, ceea ce face ca cozile de server să se oprească practic pe sistemele mari.
  • SGBD specializat de înaltă performanță multi-utilizator. Astfel de SGBD-uri se caracterizează prin prezența unui nucleu de sistem multi-utilizator, a unui limbaj de manipulare a datelor și a următoarelor funcții caracteristice DBMS-urilor multi-utilizator dezvoltate:
  • organizarea unui pool tampon;
  • prezența unui sistem de procesare a cozii de tranzacții;
  • prezența mecanismelor de blocare a datelor multi-utilizator;
  • menținerea unui jurnal de tranzacții;
  • prezența mecanismelor de control al accesului.

Aceste SGBD-uri precum Oracle, DB2, SQL/Server, Informix, Sybase, ADABAS, Titanium și altele oferă o gamă largă de servicii pentru procesarea bazelor de date corporative.

Când lucrați cu baze de date, este utilizat un mecanism de tranzacție.

Tranzacţie este o unitate logică de lucru.

Tranzacţie este o secvență de operatori de manipulare a datelor executațica un întreg(totul sau nimic) și baza de date de traducerede la o stare integrală la alta stare integrală.

O tranzacție are patru proprietăți importante cunoscute ca Proprietăți ASID:

  • (A) Atomicitate . O tranzacție este executată ca o operațiune atomică - fie întreaga tranzacție este executată, fie întreaga tranzacție nu este executată.
  • (C) Consecvență. O tranzacție mută baza de date dintr-o stare consecventă (integrală) într-o altă stare consecventă (integrală). În cadrul unei tranzacții, consecvența bazei de date se poate deteriora.
  • (I) Izolație . Tranzacțiile efectuate de diferiți utilizatori nu trebuie să interfereze între ele (de exemplu, ca și cum ar fi executate în ordine strictă).
  • (D) Durabilitate. Dacă o tranzacție este finalizată, atunci rezultatele muncii acesteia trebuie salvate în baza de date, chiar dacă sistemul se blochează în momentul următor.

Tranzacția începe de obicei automat când utilizatorul se alătură SGBD și continuă până când apare unul dintre următoarele evenimente:

  • Comanda COMMIT WORK a fost emisă (comitați tranzacția).
  • Comanda ROLLBACK WORK a fost emisă.
  • Utilizatorul a fost deconectat de la SGBD.
  • A existat o defecțiune a sistemului.

Pentru utilizator îl poartă de obiceicaracter atomic. De fapt, acesta este un mecanism complex de interacțiune între utilizator (aplicație) și baza de date. Software-ul pentru sistemele de întreprindere utilizează un mecanism de procesare a tranzacțiilor în timp real (Sisteme de procesare a tranzacțiilor on-line, OLTP), în special programele de contabilitate, software-ul pentru primirea și procesarea cererilor clienților, aplicațiile financiare, produc o mulțime de informații. Aceste sisteme sunt proiectate (și optimizate în consecință) pentru a fi gestionate volume mari date, efectuând tranzacții complexe și operațiuni intensive de citire/scriere.

Din păcate, informațiile plasate în bazele de date ale sistemelor OLTP nu sunt foarte potrivite pentru utilizarea de către utilizatorii obișnuiți (din cauza gradului ridicat de normalizare a tabelelor, a formatelor specifice de prezentare a datelor și a altor factori). Prin urmare, datele de la diferite transportoare de informații sunt trimise (în sensul de copiat) cătredepozit de depozitare, sortarea și livrarea ulterioară către consumator. În tehnologia informației, rolul depozitelor îl joacădepozite de informații.

Sistemele de procesare a datelor analitice în timp real furnizează informații utilizatorului final(Procesare analitică on-line, OLAP), care oferă acces excepțional de simplu la date prin mijloace convenabile de a genera interogări și de a analiza rezultate. În sistemele OLAP, valoarea unui produs informațional crește prin utilizarea diferitelor metode de analiză și prelucrare statistică. În plus, aceste sisteme sunt optimizate în ceea ce privește viteza de regăsire a datelor, colectarea de informații generalizate și sunt destinate utilizatorilor obișnuiți (au o interfață intuitivă). Dacă sistem OLTP oferă răspunsuri la întrebări simple precum „care a fost nivelul vânzărilor produsului N în regiunea M în ianuarie 199x?”, apoi sisteme OLAP pregătit pentru solicitări mai complexe ale utilizatorilor, de exemplu: „Oferiți o analiză a vânzărilor produsului N în toate regiunile conform planului pentru al doilea trimestru în comparație cu cei doi ani anteriori.”

Arhitectura client/server

În sistemele moderneprelucrarea distribuită a informațiilor, tehnologia ocupă centrul atenției client server. În sistem arhitectura client-serverprelucrarea datelor este împărțită între computerul client și computerul server, comunicarea între care are loc prin rețea. Această împărțire a proceselor de prelucrare a datelor se bazează pe gruparea funcțiilor. În mod obișnuit, un computer cu server de baze de date este dedicat efectuării operațiunilor de bază de date, iar un computer client rulează programe de aplicație. Figura 2.1 prezintă un sistem simplu de arhitectură client-server care constă dintr-un computer care acționează ca server și un alt computer care acționează ca client. Fiecare mașină îndeplinește funcții diferite și are propriile sale resurse.

Server

Bază de date

Computer server


Net

PC compatibil IBM

PC compatibil IBM

PC compatibil IBM

Clienții

Aplicații

Orez. 2.1. Sistem arhitectural client-server

Funcția principală a computerului client este de a executa aplicația (interfață cu utilizatorul și logica de prezentare) și de a comunica cu serverul atunci când este solicitat de aplicație.

Server acesta este un obiect (calculator) care oferă servicii altor obiecte la cererea acestora.

După cum sugerează termenul însuși, funcția principală a unui computer server este de a servi nevoile clientului. Termenul „Server” este folosit pentru a face referire la două grupuri diferite de funcții: un server de fișiere și un server de baze de date (în continuare, acești termeni înseamnă, în funcție de context, fie software care implementează aceste grupuri de funcții, fie computere cu acest software). Serverele de fișiere nu sunt proiectate pentru a efectua operațiuni cu baze de date; funcția lor principală este de a partaja fișiere între mai mulți utilizatori, de exemplu asigurarea accesului simultan al multor utilizatori la fișierele de pe un computer – server de fișiere. Un exemplu de server de fișiere este sistemul de operare NetWare de la Novell. Serverul de baze de date poate fi instalat și activat pe un computer - un server de fișiere. Oracle DBMS sub formă de NLM (Network Loadable Module) rulează în mediul NetWare pe un server de fișiere.

Serverul de rețea locală trebuie să aibă resurse care să corespundă scopului său funcțional și nevoilor rețelei. Rețineți că, datorită concentrării pe abordarea sistemelor deschise, este mai corect să vorbim despre servere logice (adică un set de resurse și software care oferă servicii peste aceste resurse), care nu sunt neapărat amplasate pe computere diferite. O caracteristică a unui server logic într-un sistem deschis este că, dacă, din motive de eficiență, este recomandabil să mutați serverul pe un computer separat, atunci acest lucru se poate face fără a fi nevoie de nicio modificare, fie pentru el însuși, fie pentru aplicație. programele care îl folosesc.

Una dintre cerințele importante pentru server este ca sistemul de operare în care se află serverul de baze de date trebuie să fie multitasking (și, de preferință, dar nu neapărat, multi-utilizator). De exemplu, un SGBD Oracle instalat pe un computer personal cu un sistem de operare MS-DOS (sau PC-DOS) care nu îndeplinește cerința de multitasking nu poate fi utilizat ca server de bază de date. Și același DBMS Oracle, instalat pe un computer cu un sistem de operare OS/2 multitasking (deși nu multi-utilizator), poate fi un server de baze de date. Multe varietăți de sisteme UNIX, MVS, VM și alte sisteme de operare sunt atât multitasking, cât și multi-utilizator.

Calcul distribuit

Termenul „calculator distribuit” este adesea folosit pentru a se referi la două concepte diferite, deși complementare:

  • Baza de date distribuită;
  • Prelucrare distribuită a datelor.

Aplicarea acestor concepte face posibilă organizarea accesului la informațiile stocate pe mai multe mașini de către utilizatorii finali folosind diferite instrumente.

Există mai multe tipuri de servere:

  • Server de baze de date;
  • Server de imprimare;
  • Server de acces la distanță;
  • server de fax;
  • server web, etc.

Bazat pe tehnologia de bază Client/ServerExistă tehnologii de bază precum:

  • Tehnologii ale sistemelor de operare, conceptul de interacțiune a sistemelor deschise, crearea de medii orientate pe obiecte pentru funcționarea programelor;
  • Tehnologii de telecomunicații;
  • Tehnologii de rețea;
  • Tehnologii de interfață grafică cu utilizatorul ( GUI);
  • etc.

Avantajele tehnologiei client-server:

  • Tehnologia client/server permite calcularea în medii de calcul eterogene. Independenta platformei: Accesați medii de rețea eterogene care includ diferite tipuri de computere cu sisteme de operare diferite.
  • Independența surselor de date: acces la informații din baze de date eterogene. Exemple de astfel de sisteme sunt DB2, SQL/DS, Oracle, Sybase.
  • Echilibru de încărcare client și server.
  • Efectuați calcule acolo unde se întâmplă cel mai eficient;
  • Oferă capacitatea de a scala în mod eficient;
  • Calcul multiplatform. Calcularea multiplatformă este definită pur și simplu ca implementarea tehnologiilor în medii de calcul eterogene. Următoarele capacități ar trebui furnizate aici:
  • Aplicația trebuie să ruleze pe mai multe platforme;
  • Pe toate platformele trebuie să aibă aceeași interfață și aceeași logică de operare;
  • Aplicația trebuie să se integreze cu mediul de operare nativ;
  • Ar trebui să se comporte la fel pe toate platformele;
  • Ar trebui să aibă un suport simplu și consistent.

Calcul distribuit. Calculul distribuit implică distribuirea muncii între mai multe computere (deși calculul distribuit este un concept mai larg).

Dezagregarea. Separarea transferului de aplicații pentru computere mari pe platforme de calculatoare mici.

  • Costuri reduse de infrastructură și hardware. Eficient din punct de vedere al costurilor: disponibilitatea echipamentelor informatice ieftine și prevalența tot mai mare a rețelelor locale fac ca tehnologia client-server să fie mai rentabilă decât alte tehnologii de procesare a datelor. Echipamentul poate fi modernizat de îndată ce este nevoie.

Reducerea timpului general de execuție a aplicației;

Reducerea utilizării memoriei clientului;

Reducerea traficului de rețea.

  • Abilitatea de a lucra cu multimedia: până în prezent, multe programe multimedia au fost create pentru computere. Fie nu există programe similare pentru configurarea terminal-gazdă, fie sunt foarte scumpe.
  • Posibilitatea de a atrage resurse de calcul mari pentru operațiunile de baze de date: deoarece aplicațiile rulează pe computerele client, computerul server eliberează resurse suplimentare (comparativ cu configurația terminal-gazdă) pentru operațiunile de baze de date, cum ar fi resursele de calcul ale CPU și memoria operațională.
  • Productivitate crescută a programatorului: productivitatea programatorului crește cu instrumente precum SQL*Forms și CASE, care vă permit să dezvoltați aplicații mai rapid decât limbajele de programare precum C, PL1 sau COBOL.
  • Productivitate crescută a utilizatorilor finali: în zilele noastre, mulți utilizatori finali au stăpânit sisteme precum Lotus, Paradox, Word Perfect, Harvard Graphics etc.

Interfața de backend este definită și fixată. Prin urmare, este posibil să se creeze noi părți client ale unui sistem existent (un exemplu de interoperabilitate la nivel de sistem).

Orez. 2.2. Ilustrație a accesului clientului la o resursă partajată de server.

Cum se implementează tehnologia client-server

Instalarea unui sistem bazat pe tehnologie client-server și capabil de prelucrare distribuită a datelor este discutată mai jos. Următoarele componente hardware și software sunt necesare:

  • computer server de baze de date;
  • calculatoare client;
  • rețea de comunicații;
  • software de rețea;
  • software de aplicație.

Limbajul SQL . Limbajul de interogare la nivel înalt - SQL (Structured Query Language ) este folosit pentru a implementa interogări în baze de date, cum ar fi NMD, DML și PYAD și este acceptat ca standard. Limba SQL a fost adoptat inițial ca limbaj de date al produselor software ale companiei IBM și SGBD relațional YaMD SYSTEM R de la IBM . O caracteristică importantă a limbii SQL este că același limbaj este reprezentat prin două interfețe diferite și anume: printr-o interfață interactivă și printr-o interfață de programare a aplicațiilor (dinamică). SQL). SQL dinamic constă din multe capacități lingvistice încorporate SQL , furnizat special pentru construirea de aplicații interactive, în care o aplicație interactivă este definită ca un program care este scris pentru a sprijini accesul la baza de date de către un utilizator final care rulează pe un terminal interactiv. Limba SQL oferă funcțiile de definire, manipulare și gestionare a datelor bazei de date și este transparent pentru utilizator din punctul de vedere al SGBD implementat.

Orez. 2.3. Schemă pentru executarea interogărilor utilizatorilor către baze de date distribuite.

Structura internă a bazelor de date este determinată de modelele de date utilizate. Modelul conceptual are capacități de abstractizare mai mari și o semantică mai bogată în comparație cu modelele externe. Modelele externe sunt adesea numite modele sintactice sau operaționale, referindu-se la natura sintactică a controlului și a aplicației ca mijloc de interacțiune a utilizatorului cu baza de date. În modelarea informației, există diferite niveluri de abstractizare, de la nivelul modelului conceptual până la nivelul modelului fizic de date, afectând arhitectura SGBD.

Modelul de date este format din trei componente:

  • Structura de date pentru a reprezenta baza de date din perspectiva utilizatorului.
  • Operații valide efectuate asupra structurii de date. Este necesar să se poată lucra cu această structură folosind diverse operațiuni DML și NMD. O structură bogată nu are valoare dacă nu există nicio modalitate de a opera asupra conținutului ei.
  • Constrângeri pentru controlul integrității. Modelul de date trebuie să fie prevăzut cu mijloace pentru a-și menține integritatea și a-l proteja. Ca exemplu, luați în considerare următoarele două restricții:
  • Fiecare subarbore trebuie să aibă un nod sursă. Bazele de date ierarhice nu pot stoca noduri copil fără nodul părinte.
  • În raport cu o bază de date relațională, nu pot exista tupluri identice. Pentru un fișier, această cerință necesită ca toate înregistrările să fie unice.

Una dintre cele mai importante caracteristici ale unui SGBD este capacitatea de a lega obiecte.

Există următoarele tipuri de conexiuni între obiecte:

  • Unu la unu (1:1). Un obiect dintr-un set poate fi asociat cu un obiect al altui set.
  • Unu-la-Mulți (1:M). Un obiect dintr-un set poate fi asociat cu mai multe obiecte dintr-un alt set.
  • Multi-la-Multe (M:N). Un obiect dintr-un set poate fi asociat cu multe obiecte dintr-un alt set, dar un obiect dintr-un alt set poate fi asociat cu multe obiecte din primul set.
  • Ramificată . Un obiect dintr-un set poate fi asociat cu obiecte din mai multe seturi.
  • Recursiv . Un obiect dintr-o mulțime dată poate fi legat de un obiect din aceeași mulțime.

Există următoarele modele principale de date:

  • Model relațional date.
  • Model ierarhic de date.
  • Model de date de rețea incomplet.
  • Model de date CODASYL.
  • Model extins de date de rețea.

V.3. TEHNOLOGII INTERNET / INTRANET ȘI SOLUȚII CORPORATE PENTRU ACCES LA BAZĂ DE DATE

Principala problemă a sistemelor bazate pe o arhitectură client-server este că, în conformitate cu conceptul de sisteme deschise, acestea trebuie să fie mobile în cea mai largă clasă posibilă de soluții hardware și software de sistem deschis. Chiar dacă ne limităm la rețelele locale bazate pe UNIX, diferite rețele folosesc hardware și protocoale de comunicație diferite. Încercările de a crea sisteme care suportă toate protocoalele posibile duc la supraîncărcarea acestora cu detalii de rețea în detrimentul funcționalității.

Un aspect și mai complex al acestei probleme este asociat cu posibilitatea utilizării diferitelor reprezentări de date în diferite noduri ale unei rețele locale eterogene. Diferite computere pot avea diferite adrese, reprezentare a numerelor, codificare a caracterelor etc. Acest lucru este deosebit de important pentru serverele de nivel înalt: telecomunicații, calcul, baze de date.

O soluție comună la problema mobilității sistemelor bazate pe o arhitectură client-server este să se bazeze pe pachete software care implementează protocoale de apel la distanță (RPC). Când utilizați astfel de instrumente, apelarea unui serviciu pe un nod la distanță arată ca o procedură obișnuită. Instrumentele RPC, care, desigur, conțin toate informațiile despre specificul echipamentului rețelei locale și al protocoalelor de rețea, traduc apelul într-o succesiune de interacțiuni de rețea. Astfel, specificul mediului de rețea și protocoalele sunt ascunse de programatorul aplicației.

Când este apelată o procedură de la distanță, programele RPC convertesc formatele de date client în formate intermediare independente de mașină și apoi convertesc în formate de date de server. La transmiterea parametrilor de răspuns se efectuează transformări similare.

Alte lucrări similare care vă pot interesa.vshm>

6914. Conceptul bazei de date 11,56 KB
O bază de date este o colecție de materiale independente prezentate într-o formă obiectivă, articole de calcul ale actelor normative ale hotărârilor judecătorești și alte materiale similare, sistematizate în așa fel încât aceste materiale să poată fi găsite și prelucrate folosind un computer electronic Codul civil al Rusiei Federația Art. O bază de date organizată în conformitate cu anumite reguli și menținută în memoria computerului este un set de date care caracterizează starea actuală a unor...
8064. Baze de date distribuite 43,66 KB
Baze de date distribuite Sub bază distribuită Date RDB este înțeles ca un set de date partajate interconectate logic care sunt distribuite fizic în diferite noduri ale unei rețele de calculatoare. Accesul la date nu ar trebui să depindă de prezența sau absența replicilor de date. Sistemul trebuie să determine în mod automat metodele de realizare a unei conexiuni de fuziune a datelor, un canal de rețea capabil să facă față volumului de informații transmise și un nod având suficient putere de calcul a se uni la mese. RDBMS trebuie să poată...
20319. BAZELE DE DATE ȘI PROTECȚIA LOR 102,86 KB
Operațional baze de date de rețea datele au apărut la mijlocul anilor 1960. Operațiunile pe baze de date operaționale au fost procesate în modul interactiv folosind terminale. Organizațiile simple de înregistrări indexate secvenţiale au evoluat rapid la un model de înregistrare mai puternic, orientat spre set. Charles Bachman a primit Premiul Turing pentru conducerea grupului de activitate pentru baze de date (DBTG), care a dezvoltat un limbaj standard pentru descrierea și manipularea datelor.
5031. Biblioteca de dezvoltare a bazelor de date 11,72 MB
Tehnologia de proiectare a bazelor de date. Definiți relațiile dintre entități și creați un model de date. Ideile principale ale tehnologiei informaționale moderne se bazează pe conceptul că datele ar trebui organizate în baze de date pentru a afișa în mod adecvat lumea reală în schimbare și pentru a răspunde nevoilor de informații ale utilizatorilor. Aceste baze de date sunt create și funcționează sub controlul special sisteme software numite sisteme de gestionare a bazelor de date DBMS.
13815. MODEL IERARHIC BAZĂ DE DATE 81,62 KB
Principalele idei ale tehnologiei informaționale moderne se bazează pe conceptul de baze de date, conform căruia baza tehnologiei informației sunt date organizate în baze de date care reflectă în mod adecvat starea unui anumit domeniu și oferă utilizatorului informații la ziîn acest domeniu. Este necesar să recunoaștem faptul că datele sunt...
14095. Dezvoltarea bazei de date a bibliotecii 11,72 MB
Creșterea volumului și complexității structurale a datelor stocate și extinderea cercului de utilizatori ai sistemelor informaționale au condus la utilizarea pe scară largă a celui mai convenabil și relativ ușor de înțeles SGBD relațional (tabelar).
5061. Crearea unei baze de date clinice 2,4 MB
Dezvoltarea fondurilor tehnologia calculatoarelorși tehnologiile informaționale au oferit oportunități pentru crearea și utilizarea pe scară largă a sistemelor informatice automatizate (AIS) în diverse scopuri. Sunt în curs de dezvoltare și implementare sisteme informatice pentru gestionarea instalațiilor economice și tehnice
13542. Baze de date cu informații geologice 20,73 KB
ÎN În ultima vreme implementarea are loc într-un ritm rapid tehnologia calculatoarelorși, în special, baze de date, în domeniul stiintific. Acest proces nu ocolește geologia, deoarece în științele naturii este nevoie de stocarea și procesarea unor volume mari de informații.
9100. Bază de date. Noțiuni de bază 26,28 KB
O bază de date este o colecție de informații despre obiecte specifice ale lumii reale din orice domeniu, economie, management, chimie etc. Scopul unui sistem informațional nu este doar acela de a stoca date despre obiecte, ci și de a manipula aceste date, luând ţinând cont de legăturile dintre obiecte. Fiecare obiect este caracterizat de un set de proprietăți de date, care în baza de date sunt numite atribute.
5240. Crearea bazei de date „Decanatul Universității”. 1,57 MB
O bază de date (DB) este o colecție de interconectate, stocate împreună medii externe memorie computerizată a datelor, dacă există o astfel de organizare și redundanță minimă care să permită utilizarea lor optimă pentru una sau mai multe aplicații

Scopul prelegerii

După ce ați studiat materialul din această prelegere, veți ști:

  • ce s-a întâmplat model de date de întreprindere ;
  • cum se convertesc model de date corporative la modelul de depozit de date;
  • elemente esentiale model corporativ date ;
  • nivelurile de prezentare a modelului de date al întreprinderii ;
  • algoritm pentru conversia unui model de date corporative într-un model de depozit de date multidimensional ;

si invata:

  • dezvolta modele de depozit de date bazate pe model de date corporative organizații;
  • dezvoltarea unei scheme stea folosind instrumentele CASE;
  • tabele de partiții model multidimensional folosind instrumentele CASE.

Model de date de întreprindere

Introducere

Miezul oricărui depozit de date este modelul său de date. Fără un model de date, va fi foarte dificil să organizați datele într-un depozit de date. Prin urmare, dezvoltatorii HD trebuie să petreacă timp și efort pentru a dezvolta un astfel de model. Dezvoltarea modelului HD cade pe umerii designerului HD.

În comparație cu proiectarea sistemelor OLTP, metodologia de proiectare a depozitului de date are o serie de trăsături distinctive legate de orientarea structurilor de stocare a datelor pentru rezolvarea problemelor de analiză şi suport informativ procesul de luare a deciziilor. Modelul de date al depozitului de date trebuie să furnizeze solutie eficienta exact aceste sarcini.

Punctul de plecare în proiectarea unui depozit de date poate fi așa-numitul model de date de întreprindere(model de date corporative sau model de date de întreprindere, EDM), care este creat în procesul de proiectare a sistemelor OLTP ale unei organizații. La proiectare model de date corporative De obicei, se încearcă crearea, pe baza tranzacțiilor comerciale, a unei structuri de date care să colecteze și să sintetizeze toate nevoi de informare organizatii.

Prin urmare, model de date de întreprindere conţine informatie necesara pentru a construi un model de depozit de date. Prin urmare, în prima etapă, dacă un astfel de model există în organizație, un proiectant de depozit de date poate începe să proiecteze un depozit de date rezolvând problema transformării model de date corporative la modelul HD.

Model de date de întreprindere

Cum se rezolvă problema transformării model de date corporative la modelul HD? Pentru a rezolva această problemă, trebuie să aveți acest model, adică. model de date de întreprindere trebuie construită şi documentat. Și trebuie să înțelegi Ce din acest model şi Cum ar trebui transformat într-un model de stocare a datelor.

Să clarificăm conceptul din perspectiva unui designer HD model de date corporative. Sub model de date corporative să înțeleagă o descriere structurată pe mai multe niveluri a domeniilor organizației, a structurilor de date ale domeniului, a proceselor de afaceri și a procedurilor de afaceri, a fluxurilor de date acceptate în organizație, a diagramelor de stare, a matricelor de proces de date și a altor reprezentări model care sunt utilizate în activitățile organizației. . Astfel, în sensul larg al cuvântului, model de date de întreprindere este un ansamblu de modele la diferite niveluri care caracterizează (modelează la un anumit nivel abstract) activitățile unei organizații, i.e. conţinut model corporativ depinde direct de ce structuri model au fost incluse în el într-o organizație dată.

Elemente principale model de date corporative sunt:

  • descrierea domeniilor tematice ale organizației (definirea domeniilor de activitate);
  • relațiile dintre domeniile definite mai sus;
  • model de date informaționale (model ERD sau model entitate-relație);
  • pentru fiecare descriere a disciplinei:
    • chei de entitate;
    • atributele entității;
    • subtipuri și supertipuri;
    • legături între entități;
    • grupări de atribute;
    • relațiile dintre domeniile de studiu;
  • model funcțional sau model de proces de afaceri;
  • diagrame de flux de date;
  • diagrame de stare;
  • alte modele.

Prin urmare, model de date de întreprindere conține entități, atribute și relații care reprezintă nevoile de informații ale unei organizații. În fig. 16.1 prezintă elementele principale model de date corporative.

Straturi de reprezentare a modelului de date pentru întreprinderi

Model de date de întreprindere este împărțit pe domenii, care reprezintă grupuri de entități legate de susținerea nevoilor specifice de afaceri. Unele domenii pot acoperi anumite funcții de afaceri, cum ar fi managementul contractelor, în timp ce altele pot combina entități care descriu produse sau servicii.

Fiecare model logic trebuie să corespundă unui domeniu de problemă existent model de date corporative. Dacă modelul logic nu se potrivește această cerință, la acesta trebuie adăugat un model care definește tematica.

Model de date de întreprindere are de obicei mai multe niveluri de prezentare. De fapt nivel inalt (nivel inalt) model de date corporative există o descriere a principalelor domenii ale organizației și a relațiilor lor la nivel de entitate. În fig. 16.2 prezintă un fragment model de date corporative nivel superior.


Orez. 16.2.

Diagrama prezentată în figură prezintă patru domenii: „Cumpărător” ( Client), "Verifica" ( cont), "Ordin" ( Ordin) și „Produs” ( Produs). De obicei, la nivelul superior, vizualizările modelului specifică doar conexiuni directeîntre domeniile de subiect, care, de exemplu, înregistrează următorul fapt: cumpărătorul plătește o factură pentru comanda de mărfuri. Informații detaliate și relații indirecte la acest nivel model corporativ nu sunt date.

Pe următorul nivel mediu(nivel mediu) model de date corporative afișează informații detaliate despre obiectele de domeniu, adică chei și atributele entității, relațiile lor, subtipurile și supertipurile, etc. Pentru fiecare domeniu al modelului de nivel superior, există un model de nivel mediu. În fig. 16.3 este prezentat nivel mediu reprezentare model corporativ pentru un fragment din tematica „Comanda”.

Din fig. 16.3 puteți vedea că zona de subiect „Comandă” ( Ordin) include mai multe entități, definite prin atributele lor și relațiile dintre ele. Modelul prezentat vă permite să răspundeți la întrebări precum data comenzii, cine a plasat comanda, cine a trimis comanda, cine primește comanda și o serie de altele. Din diagrama de mai sus este clar că în această organizație există două tipuri de comenzi - comenzi pentru o promoție ( Comercial) și comenzi de către Comert cu amanuntul (Cu amănuntul).

observa asta model de date de întreprindere poate reprezenta diferite aspecte ale activităților unei organizații și cu diferite grade de detaliu și completitudine. Dacă model corporativ reprezintă toate aspectele activităților organizației, se mai numește model de date de organizare(model de date de întreprindere).

Din punct de vedere al designului HD factor importantîn decizia de a crea un model de depozit de date din model de date corporative este statul completitudine model de date corporative.

Model de date de întreprindere organizatia are caracteristica evolutiei, i.e. se dezvoltă și se îmbunătățește constant. Unele domenii tematice model de date corporative poate fi bine pus la punct, pentru unii lucrul poate să nu fi început încă. Dacă un fragment din domeniul subiectului nu este elaborat în model de date corporative, atunci nu este posibil să utilizați acest model ca punct de start Design HD.

Gradul de finalizare model corporativ poate fi nivelat în proiectarea spațiului de depozitare după cum urmează. Deoarece procesul de dezvoltare a unui depozit de date este de obicei împărțit în timp într-o succesiune de etape, procesul de proiectare a acestuia poate fi sincronizat cu proces de finalizare dezvoltarea fragmentelor individuale model de date corporative organizatii.

La cel mai jos nivelul de prezentare a modelului de date corporative afișează informații despre caracteristicile fizice ale obiectelor bazei de date corespunzătoare model logic date in medie stratul de prezentare al modelului de date corporative.