2



STUDIUL TEHNOLOGIILOR INFORMATICE DE INTEGRARE A DATELOR

Conectarea aplicaţiilor prin stocurile de date este relativ simplă, apelând la: FTP, utilităţi oferite de SGBD-uri, instrumente ETL (Extract, Transform and Load), servere de integrare. Multitudinea de instrumente suport pentru integrare la acest nivel uşurează mult efortul de integrare.

Integrarea orientată pe date se poate realiza prin migrarea datelor dintr-un sistem informatic în altul sau prin folosirea unor produse software, care permit accesul la diferite surse de date fără a mai fi nevoie de extragerea, transportul, transformarea, validarea şi curăţarea datelor din sistemele sursă şi încărcarea lor în sistemele destinaţie. Migrarea datelor se poate face către un sistem operaţional (în general către o bază de date) sau către un sistem suport decizie (adică către un depozit de date). Principalul standard folosit pentru interschimbul de informaţii este eXtensible Markup Language (XML), iar cel mai important protocol de comunicaţii bazat pe acesta şi care stă la baza serviciilor Web este Simple Object Access Protocol (SOAP).

2.1.Integrarea orientată pe date

In abordarea orientată pe date pentru integrarea aplicaţiilor trebuie ca schimbul de informaţii să apară între bazele de date (sau proprietari API, care produc informaţie), ceea ce înseamnă că bazele de date trebuie văzute ca puncte principale de integrare. Soluţiile de integrare orientată pe date pot fi grupate în trei categorii:

▪ copii multiple ale bazei de date ;

▪ federalizarea datelor;

▪ procesarea interfeţei.

[pic]

Figura 2.1 Schimb de informaţie între două aplicaţii

2.1.1. Menţinerea unor copii ale datelor

Prin realizarea unor copii ale bazei de date si distribuirea lor la nivelul aplicatiilor  fiecare aplicaţie poate să aibă propriul stoc dedicat de date. În orice moment, o parte din surse sunt puţin desincronizate, datorită întârzierilor inerente în propagarea schimbărilor între sursele de date.

Există 12 modele de mutare a datelor [Teal03]:

• mutarea unei copii a datelor;

• replicarea datelor;

• replicare master-master;

• replicare master-slave;

• sincronizare la nivel de linie master-master;

• replicare snapshot master-slave;

• capturarea detaliilor tranzacţiilor

• replicare incrementală a tranzacţiilor master-slave;

• implementarea sincronizării la nivel de linie master-master utilizând SQL Server;

• implementarea replicării snapshot master-slave utilizând SQL Server;

• replicare master-slave în cascadă.

Replicarea datelor este o variantă a copierii datelor, referindu-se la simpla mutare a datelor între două sau mai multe baze de date. Aceste baze de date pot avea provenienţe diferite (Figura 2.2) şi pot avea modele diferite. Cerinţa fundamentală pe care trebuie să o îndeplinească o bază de date pentru a i se putea replica datele este să ofere o infrastructură pentru schimbul de date.

[pic]

Figura 2.2 Replicarea unei baze de date

Replicarea bazei de date poate fi realizata in cel putin trei moduri:

• Replicarea snapshot: datele de pe server sunt copiate in intregime pe un alt server sau intr-o alta baza de date de pe acelasi server. Aceasta implica un consum mare de timp si resurse, motiv pentru care administratorii nu folosesc acest tip de replicare pentru baze de date care se schimba frecvent. De obicei replicarea snapshot se foloseste in doua situatii: pentru baze de date care nu sufera schimbari frecvente sau pentru a stabili un punct de plecare in replicarea dintre mai multe sisteme, pentru care actualizarile ulterioare sunt propagate folosind replicarea tranzactionala sau replicarea merge.

• Replicarea merge: datele din doua sau mai multe baze de date sunt combinate intr-una sinagura. Pe fiecare din bazele de date se pot realiza schimbari independente,putandu-se lucre fara o conexiune de retea activa. In momentul reconectarii, agentul de replicare merge verifica schimbarile care apar in seturile de date si modifica fiecare din bazele de date in consecinta. Daca schimbarile necesare intra in conflict, este utilizat un algoritm prestabilit de tratare a conflictelor pentru a determina rezultatul corect. Acest tip de replicare este folosit frecvent de utilizatorii de laptop sau alti utilizatori care nu pot ramane in continuu conectati la o baza de date de pe un server.

• Replicarea tranzactionala: utilizatorii primesc copii initiale integrale ale bazei de date si ulterior primesc actualizari periodice pe masura ce apar schimbari ale datelor. Ofera un plus de flexibilitate pentru bazele de date care se schimba in mod frecvent. Un agent de replicare monitorizeaza schimbarile care apar in baza de data si le transmite utilizatorilor fie imediat ce apar, fie la anumite interval de timp.

Multe baze de date, care includ soluţii “middleware” oferă servicii pentru replicarea datelor. Replicarea prin intermediul serviciilor este realizată prin plasarea unui strat software între două sau mai multe baze de date. Pe de o parte, datele sunt extrase dintr-o bază de date sau din mai multe baze de date şi sunt apoi plasate în bazele de date ţintă. Multe dintre aceste soluţii oferă servicii de transformare precum şi abilitatea de a modifica schema şi conţinutul astfel încât acestea să aibă sens pentru baza de date ţintă.

Avantajele replicării bazelor de date sunt simplitatea şi costurile scăzute. Replicarea este uşor de implementat, iar tehnologia este ieftină. Din păcate, aceste avantaje sunt eliminate dacă sunt necesare metode ataşate datelor. În acest caz, trebuie luată în considerare orientarea bazată pe servicii.

2.1.2 Federalizarea datelor

Federalizarea datelor se referă la integrarea mai multor baze de date şi a modelelor asociate într-o singură bază de date, cu un view unificat (Figura 2.3). Practic, federaţiile bazei de date reprezintă bazele de date virtuale.

Instrumentele pentru federalizarea datelor plasează un nivel software (middleware) între bazele de date distribuite fizic şi aplicaţiile care vizualizează datele. Acest nivel conectează bazele de date folosind interfeţe şi mapează bazele de date fizice într-o bază de date virtuală. Aplicaţia foloseşte această bază de date virtuală pentru a accesa informaţiile necesare. Instrumentele pentru federalizarea bazei de date gestionează colectarea şi distribuirea datelor, pe măsură ce acestea sunt necesare, către bazele de date fizice.

Avantajul folosirii acestui software este că poate lega tipuri diferite de date într-un model unificat care suportă schimbul de informaţie.

[pic]

Figura 2.3 Federalizarea datelor

Aceasta este cea mai elegantă soluţie pentru integrarea datelor deoarece permite accesul la orice bază de date conectată la sistem printr-o singură interfaţă bine definită. Spre deosebire de replicare, federalizarea nu necesită modificări ale aplicaţiilor ţintă. Totuşi, schimbări sunt necesare la nivelul aplicaţiei care susţine software-ul bazei de date conţinută în federaţie. Acest fapt este datorat interfeţelor diferite care sunt folosite pentru a accesa un model al bazei de date diferit (baza de date virtuală).

2.1.3 Integrarea datelor prin intermediul interfeţelor

Soluţiile de procesare a interfeţei folosesc interfeţe bine definite ale unor aplicaţii pentru a se realiza atât integrarea aplicaţiilor pachet, cât şi pe a celor obişnuite (Figura 2.4).

Aceste interfete, pe langa faptul ca ofera in principal date, au de asemenea abilitatea de a actiona ca furnizori de servicii ale aplicatiei, si, in multe cazuri, produc cod XML si fac posibila interactiunea cu interfete de servicii Web.

Interesul curent în integrarea de tip Enterprise Resource Planning (ERP) manifestat de către SAP, PeopleSoft - Oracle a făcut acest sector cel mai atractiv în ceea ce priveşte integrarea de aplicaţii. Aplicatiile furnizate de acestia ofera interfete care lucreaza cu XML in diferite forme si moduri.

[pic]

Figura 2.4 Procesarea interfeţei

Producătorii de soluţii ERP susţin soluţiile bazate pe procesarea interfeţei prin oferirea de adaptori pentru a se conecta la cât mai multe aplicaţii obişnuite sau aplicaţii pachet, externalizând informaţia din acele aplicatii prin interfetele lor deschise sau proprietare. Aceşti adaptori se conectează la soluţiile tehnologice care includ tehnologii middleware, dar şi “screen scrapere”, ca puncte de integrare.

Un “screen scaper” este un instrument care permite PC-urilor să intercepteze datele dintr-un mainframe (fiind adesea prezentat ca un ecran verde) şi este utilizat pentru a înţelege mai bine interfaţa grafică. Ecranele mai noi prezintă informaţia în format HTML, pentru a putea fi accesată dintr-un browser.

O integrare eficientă a mai multor tipuri de aplicaţie defineşte avantajul principal al utilizării produselor de integrare a aplicaţiilor. În doar câteva zile, este posibilă conectarea unei aplicaţii SAP R/3 la o aplicaţie Oracle, prin intermediul unei soluţii de procesare a interfeţei care să gestioneze diferenţele de schemă, conţinut şi semantica aplicaţiei, prin interpretarea informaţiei interschimbată între sisteme.

Dezavantajul folosirii produselor de integrare bazată pe procesarea interfeţei este că se acordă atenţie limitată logicii procesului de afaceri, cât şi metodelor aparţinând sursei sau sistemelor ţintă. În aceste situaţii, se recomandă folosirea unei abordări orientate pe servicii. Se prognozează că pe viitor, tehnologia de procesare a interfeţei va fi capabilă să includă şi metode.

2.2. Standarde utilizate la integrarea datelor

2.2.1. XML, XSLT, ebXML

De la crearea sa, eXtensible Markup Language (XML) a fost proiectat ca standard pentru interschimbul de informaţie pe Internet. Ca urmare, aplicabilitatea la integrarea aplicaţiilor este naturală, deoarece XML oferă un standard robust, uşor de înţeles pentru schimbul de informaţie. XML poate susţine interschimbul de semantici ale aplicaţiilor şi de informaţie. Tot acest proces se realizează fără ca aplicaţiile destinaţie să aibă nevoie de informaţii despre aplicaţiile sursă.

XML oferă un format comun de schimb de informaţie, încapsulând atât datele cât şi metadatele. Acest format permite aplicaţiilor şi bazelor de date să comunice fără a avea informaţii una despre cealaltă. Pentru a comunica, sistemul sursă reformatează un mesaj, o informaţie sau o înregistrare ca un XML-text şi mută acea informaţie într-ul alt sistem, care ştie să citească XML.

Valoarea XML-ului rezidă din simplitatea lui. Se pot lua cantităţi mari de informaţie şi se pot consolida într-un document XML ca piese semnificative, care dau structura şi organizarea informaţiei. (Figura 2.5)

[pic]

Figura 2.5 XML, reprezentare text simplă a unor date de complexităţi diferite

Blocul de bază al unui document XML este un elementul definit prin marcatori (tag-uri). Un element are un tag de început şi un tag de final. Toate elementele dintr-un document XML sunt conţinute de un element rădăcină XML, care suportă elemente rădăcină sau elemente în alte elemente, de unde rezultă că poate susţine o structură ierarhică. Numele elementelor descriu conţinutul elementului, iar structura descrie relaţiile dintre elemente. Un document XML este considerat bine format, dacă poate fi citit de un parser XML şi dacă formatul său se potriveşte cu specificaţiile XML. Se pot defini atribute ale elementelor şi descrie caracteristici ale elementelor în tagul de început. Un parser XML citeşte documente XML şi extrage datele ce urmează a fi accesate de alt program. Parserul este parte componentă a nivelului middleware. (Figura 2.6)

Pentru ca aplicaţiile ce folosesc XML să poată fi integrate, ele trebuie să externalizeze informaţia sub formă de XML. Tehnologia middleware-XML gestionează extragerea informaţiei din sistemul sursă, conversia ei în XML şi plasarea informaţiei în sistemul destinaţie, tot procesul fiind automat şi transparent pentru utilizator. Aşa cum s-a mai specificat, XML este bazat pe text şi, astfel, o informaţie care în mod normal poate fi stocată pe 512 KB, se poate mapa într-un fişier XML de 20 ori mai mare, acest fapt reprezentând unul din dezavantajele utilizării XML.

[pic]

Figura 2.6 Extragerea informaţiei prin parser XML

Legătura între XML şi middleware este clară deoarece tehnologia middleware realizează partea de transfer efectiv de mesaje, care încapsulează XML şi se asigură că acele mesaje pot fi înţelese de sistemele destinaţie. Middleware-ul gestionează şi interfeţele cu aplicaţiile sursă şi destinaţie şi mută informaţia.

XML nu juca până mai recent un rol prea important în domeniul integrării aplicaţiilor în cadrul aceleaşi companii. Practic, în aceste cazuri erau alese alte standarde şi metode de integrare din motive de eficienţă. Totuşi, datorită descentralizării controlului asupra informaţiei, XML devine din ce în ce mai important. Multe companii, ca Oracle-PeopleSoft şi SAP folosesc acum XML ca interfaţă nativă pentru sistemele lor. Oracle-PeopleSoft deja a definit un produs, Open Integration Framework, care foloseşte XML. Mai mult decât atât, producătorii de sisteme de gestiune a bazelor de date precum Oracle, Sybase şi Informix, oferă mecanisme, care permit XML-urilor să citească şi să scrie direct în baza de date.

Rolul major al XML este în domeniul integrării aplicaţiilor între mai multe companii. Standardele XML oferă valoare suplimentară prin includerea nivelurilor de metadate comune, care pot exista între unul sau mai mulţi parteneri membri ai tranzacţiei şi chiar prin includerea mecanismelor de transformare standard ca XSLT.

Cele mai relevante standarde XML folosite pentru integrarea aplicaţiilor sunt: RosettaNet, XEDI, BizTalk, Extensible Financial Reporting Markup Language (XFRML), XML-Schema, XML Query şi XSLT (tabelul 2.1.).

|RosettaNet |un cadru pentru interschimb de date şi procese cu e-business. |

|XEDI |se referă la o specificaţie, care descrie cum trebuie mapat un EDI tradiţional la un XML şi |

| |invers |

|BizTalk |este fondat de Microsoft şi defineşte un standard XML pentru XML-uri bazate pe mesaje şi |

| |metadate. Microsoft oferă şi un server BizTalk pentru a susţine acest standard. |

|XFRML |este un standard definit de American Institute of Certified Public Accountants pentru a |

| |defini standarde XML pentru informaţii financiare. |

|XML-Schema |este un grup de lucru al W3C, care descrie un mecanism pentru determinarea structurii unui |

| |document XML |

|XML Query |Este un alt grup W3C, care creează un set de operaţii comune şi sintaxă pentru a accesa date|

| |stocate XML |

Tabelul 2.1. Standarde XML pentru integrarea aplicaţiilor

XSLT este un limbaj proiectat să transforme un document XML într-un altul, modificând atât schema, cât şi conţinutul procesului. Documentele XML sunt ca nişte mesaje. Fiecare aplicaţie are un set unic de semantici, iar documentele care circulă între aplicaţii trebuie să poată fi transformate (Figura 2.7). Atât structurile de date, cât şi conţinutul sunt necesar să fie corecte din punct de vedere semantic pentru a fi încărcate în aplicaţia ţintă. Dacă datele nu au formatul necesar, atunci operaţia de actualizare nu va reuşi.

[pic]

Figura 2.7 Transformarea documentelor XML prin XSLT

[pic] În plus, XSLT poate realiza şi alte tipuri de procesare de text şi operaţii de transformare, care includ crearea formatelor de date standard bazate pe text ca PDF-uri sau alte formate.

Transformarea unui document XML folosind XSLT necesită doi paşi. Primul pas constă într-o transformare structurală, unde datele sunt transformate, de la o structură de intrare la o structură de ieşire. Acest pas implică selectarea datelor, gruparea lor, sortarea lor sau agregarea lor în funcţie de necesităţile transformării. De exemplu, în cadrul unui document XML se poate face conversia de la dolari americani la franci francezi. Această transformare este bazată pe o rată de conversie valutară, fie pe o valoarea statistică fie pe o valoare citită dintr-o bază de date aflată la distanţă. Al doilea pas este formatarea, în care noua structură este adusă în formatul cerut, de exemplu fisier text, PDF sau HTML. HTML permite vizualizarea informatiei de catre utilizatori direct intr-un navigator sau utilizarea ca intrare în orice procesor modern de text. Formatul text permite formatarea datelor astfel incat sa fie acceptate de catre aplicatiile existente, de exemplu sub formă de valori separate prin virgulă. Formatul XML permite datelor să fie furnizate direct aplicaţiilor care acceptă astfel de intrări. De obicei acesta va utiliza un vocabular diferit de taguri XML faţă de documentul original.

Electronic Business using eXtensible Markup Language (ebXML) este un produs al colaborării dintre UN/CEFACT şi OASIS. Acest standard a fost construit pe baza XML, ca şi alte standarde Internet şi servicii Web. Scopul său este crearea unei infrastructuri pentru comerţul electronic bazat pe informaţie şi procese. ebXML este considerat un standard bun, fiind folosit de cei care automatizează B2B.

Unicitatea ebXML-ului este dată de completitudinea acestuia, adresând probleme ca: procese, managementul tranzacţiilor, semantici, notaţii, securitate, acorduri, standarde legate de transferul de informaţie şi standarde legate de structurarea informaţiei.

Cu toate acestea, completitudinea ebXML-ului poate fi considerată un factor ce limitează, din cauza duratei pe care o necesită pentru a se plia pe un domeniu.

Standardul ebXML a fost creat pentru a înlocui EDI sau alte standarde folosite în comerţul electronic. Acesta este un sistem bazat pe mesaje XML pentru schimbul de informaţie şi poate conţine un depozit pentru a permite accesul simultan la informaţie. Sistemul de mesaje suportă orice tip de date, tranzacţii EDI şi informaţie binară. Mai mult decât atât, ebXML suportă acorduri de tranzacţionare între parteneri – o funcţie fundamentală a subsistemelor partener EDI-ebXML poate fi folosit astfel pentru a reprezenta acordurile de servicii de afaceri.

Ca şi alte standarde (ebXML-ul nu este un produs) vine cu un set de reguli, care permit producătorilor de aplicaţii şi integrare de aplicaţii să-si proiecteze produsele pentru a susţine acest standard.

2.2.2. SOAP, WSDL, UDDI

Simple Object Access Protocol (SOAP) defineşte un format XML bazat pe mesaje, care este folosit de aplicaţiile bazate pe servicii Web pentru a comunica şi interopera între ele pe Web (figura 2.8.). SOAP este un standard pentru codificarea mesajelor în XML şi care poate apela funcţii în alte aplicaţii. Este analog cu Remote Procedure Calls (RPC) folosit de tehnologii ca DCOM sau CORBA, dar elimină o parte din complexitatea utilizării acestor interfeţe. SOAP permite aplicaţiilor să apeleze funcţii din alte aplicaţii, care rulează pe altă platformă hardware, indiferent de sistemul de operare şi limbajul de programare.

[pic]

Figura 2.8 SOAP oferă mecanisme de comunicare între client şi server

[pic] Web Service Description Language (WSDL) este o colecţie de metadate despre XML bazat pe servicii, folosită pentru descrierea scopului unei afaceri şi a modului de accesare electronică a serviciilor acestora. Bazat pe SOAP, WSDL specifică procedurile pentru descoperirea informaţiei tehnice şi funcţionale despre serviciile Web pe Internet.

Un document WSDL este descris de un număr de elemente:

• definiţii tip, pentru elementele de date (în mod normal, utilizând XML Schema);

• definiţii de mesaje, care comprimă unul sau mai multe elemente de date;

• definiţii ale operaţiilor, care reprezintă descrieri abstracte ale acţiunilor care pot fi suportate de serviciu, şi care definesc tipul mesajului: de intrare sau de ieşire;

• definiţii PortType;

• definiţii de conectare, care descriu conexiunea între PortType şi protocoale (SOAP, HTTP, GET/POST);

• definiţii de servicii.

Ca urmare, se poate spune că WSDL oferă o abordare standard serviciilor Web. De asemenea, WSDL oferă un mecanism automat de generare a proxy-urilor pentru serviciile Web folosind un limbaj standard. Acest standard este analog IDL (Interface Definition Languages) şi se găseşte atât în COM cât şi în CORBA. Cu alte cuvinte, este un simplu contract între client şi server.

WSDL defineşte o gramatică XML pentru descrierea serviciilor de reţea ca o colecţie de puncte finale de comunicaţie, care pot face transfer de informaţie. Definirea serviciilor WSDL oferă o modalitate pentru automatizarea comunicării între aplicaţii (Figura 2.9).

Figura 2.9 Definirea serviciilor prin WSDL

Universal Description, Discovery and Integration (UDDI) este un standard pentru catalogarea şi publicarea descrierilor WSDL asociate serviciilor Web, care sunt disponibile pe Internet. Într-un mod asemănător căutării informaţiei în Pagini Aurii sistemele de comerţ pot căuta în registrul UDDL serviciile Web, apoi pot prelua parametrii de interacţiune şi pot interacţiona efectiv cu serviciile Web găsite folosind SOAP.

Specificaţiile UDDI ţintesc să definească un mecanism comun pentru publicarea şi căutarea informaţiei prin servicii Web. Creatorii UDDI (IBM, Microsoft, Ariba) încearcă să creeze un echivalent pe Internet pentru Pagini Aurii. Acum este disponibilă pe piaţă prima generaţie de specificaţii.

[pic]

Figura 2.10 UDDI

2.3. Tehnologii informatice de integrare a datelor

2.3.1. Baze de date centralizate şi distribuite

Baza de date este un ansamblu de colecţii de date în memoria externă, cu următoarele caracteristici:

• este organizat, pe trei niveluri (conceptual, logic, fizic);

• este structurat, conform unui model de date;

• este coerent, prin restricţiile de integritate şi protecţia datelor;

• are o redundanţă minimă şi controlată, prin implementarea unui model de date şi prin aplicarea unei tehnici de proiectare;

• este accesibil mai multor utilizatori în timp util. [VELI01]

Bazele de date sunt manipulate cu ajutorul sistemelor de gestiune a bazelor de date, care constituie ansamblul de programe prin care se asigură gestionarea şi prelucrarea complexă a datelor. Cel mai răspândit model de baze de date este cel relaţional, în care datele sunt memorate în tabele. Pe lângă tabele, o bază de date relaţională mai poate conţine: indecşi, proceduri stocate, declanşatori, utilizatori şi grupuri de utilizatori, tipuri de date, mecanisme de securitate şi de gestiune a tranzacţiilor etc. Alte modele de baze de date sunt: modelul ierarhic, modelul reţea, modelul obiectual-relaţional, modelul orient obiect.

O bază de date poate fi folosită pentru integrarea diverselor aplicaţii. În aceasta pot fi încărcate date diverse provenite din diverse surse (ASCII, EXCEL, XML, FOX, ACCESS etc.).

O bază de date distribuită este o bază de date care nu este localizată într-o singură locaţie fizică, ci este dispersată într-o reţea de calculatoare interconectate, putând fi accesată de mai mulţi utilizatori concurenţi. Sistemul de baze de date distribuite trebuie gestionat astfel încât distribuirea, concurenţa şi eventualele eşecuri să fie transparente, asigurându-se că operaţiile de citire (cererile) şi operaţiile de scriere (actualizările) se execută astfel încât să nu apară nici o diferenţă faţă de situaţia unei baze de date cu un singur utilizator [TRAI82]. Transparenţa din toate aceste puncte de vedere poate fi destul de scumpă, iar în practică ea este realizată doar în măsura în care permite obţinerea unor performanţe acceptabile.

Colecţiile de date pot fi distribuite pe mai multe calculatoare, care se pot afla în aceeaşi locaţie fizică sau în locaţii fizice diferite. O bază de date este distribuită sub formă de partiţii/fragmente distincte, care pot fi replicate pe mai multe noduri din reţea. Pe lângă fragmentare şi replicare, există şi alte tehnici de proiectare a bazelor de date distribuite, alegerea uneia dintre acestea realizându-se în funcţie de nevoile afacerii şi de sensibilitatea/confidenţialitatea datelor care vor fi stocate în baza de date.

Sistemele distribuite se folosesc în mai multe domenii ale informaticii (sisteme de baze de date, reţele de calculatoare, sisteme de operare etc.). Totuşi, toate sistemele distribuite, indiferent de tipul lor, au câteva caracteristici şi obiective de realizare comune. Aceste aspecte comune le prezentăm în paragraful de faţă.

Caracteristicile principale ale sistemelor distribuite

1. Suport pentru partajarea resurselor: aceleaşi resurse sunt folosite de mai mulţi utilizatori. Acest lucru se realizează prin două modele:

• modelul client – server, în care unul sau mai multe servere gestionează baza de date şi rezolvă cererile transmise de clienţi. În acest model există două tipuri de procese:

o procesele client, care execută sarcini care solicită de la server resurse partajate;

o procesele server, care activează resursele de un anumit tip şi întoarc răspunsul.

• modelul bazat pe obiecte, în care, într-o execuţie de program, fiecare entitate este văzută ca un obiect cu interfaţă publică de acces. De asemenea, fiecare resursă partajată este văzută ca un obiect.

2. Deschiderea: Sistemul poate fi extins, în orice moment, pe diferite căi. În acest sens, sistemul deţine: mecanisme de comunicare interprocese, interfeţe publice pentru acces la resurse partajate şi resurse, care sunt eterogene.

3. Concurenţa şi paralelismul: În acelaşi timp, mai mulţi utilizatori, folosesc în mod eficient aceleaşi resurse. Aspectele care trebuie implementate de sistem sunt: simultaneitate privind mai mulţi utilizatori şi mai multe procese, să separe activităţile de utilizatori, să asigure independenţa proceselor faţă de resurse şi de activităţi.

4. Scalabilitate: Sistemul acţionează efectiv şi eficient pe diferite scale (datorită eterogenităţii resurselor).

5. Toleranţă la accidente: Sistemul se bazează pe redundanţa hardware şi pe acoperirea software.

6. Transparenţa: Se referă la gradul de independenţă între componentele sistemului (resurse, operaţii, utilizatori etc.), la funcţionare. În asigurarea transparenţei se ţine cont de: separarea componentelor sistemului, necesitatea comunicaţiei şi de tehnici de integrare şi management.

Regulile lui Date

C.J. Date a întocmit 12 reguli conform cărora se poate stabili dacă un SGBD este distribuit sau nu. Ca o sinteză a regulilor, se poate afirma că distribuirea datelor nu trebuie să afecteze în nici un fel utilizatorii (SGBD-ul va asigura o transparenţă totală a distribuirii datelor).

R1. Autonomia locală: fiecare nod are control local asupra datelor şi este independent de celelalte noduri din punct de vedere al funcţiilor de bază: securitate, controlul concurenţei, backup şi recuperare.

R2. Independenţa faţă serverul central: fiecare nod trebuie să acţioneze independent, fără să depindă de un server central sau un alt nod.

R3. Continuitatea: activitatea într-un sistem distribuit se desfăşoară fără întreruperi pentru întreţineri sau reparaţii.;

R4. Transparenţa localizării: nici un utilizator/program are nevoie să ştie unde şi cum sunt amplasate datele folosite.

R5. Independenţa fragmentării: SGBDD va trebui să poată reconstrui automat, în orice moment, o colecţie de date din fragmentele sale.

R6. Independenţa replicării: utilizatorii/programele nu trebuie să ştie dacă datele au fost replicate şi cum anume.

R7. Interogări distribuite: o interogare poate fi executată pe orice nod din reţea care conţine date utile execuţiei cererii. La răspunsul interogării pot să participe mai multe noduri, fără ca beneficiarul să fie conştient de acest lucru.

R8. Tranzacţii distribuite: o tranzacţie poate să acceseze şi să modifice date din mai multe noduri, fără ca beneficiarul să fie conştient de acest lucru.

R9. Independenţa faţă de hardware: nodurile pe care se găsesc datele pot fi calculatoare de diferite tipuri şi puteri.

R10. Independenţa faţă de software: nu trebuie să aibă importanţă sistemele de operare care există pe noduri (eterogene).

R11. Independenţa faţă de reţea: BDD şi SGBDD trebuie să poată fi implementate pe orice platformă de reţea corespunzătoare, iar diferitele protocoale utilizate în reţea, nu trebuie să afecteze funcţionarea BDD.

R12. Independenţa faţă de SGBD: la nivel de nod local pot “rula” diferite SGBD-uri.

Tehnicile prin care un SGBDD, asigură distribuirea datelor de bază sunt: fragmentarea, replicarea, tehnica mixtă, încărcarea.

[pic]

Figura 2.11 Tehnici de distribuire

a) Distribuirea prin fragmentare este operaţia de descompunere logică a colecţiilor globale în părţi disjuncte numite fragmente, utilizând operatori speciali.

Pentru a realiza fragmentarea SGBDD respectă anumite reguli şi metode.

REGULILE ce trebuie respectate la fragmentare:

• completitudinea semnifică faptul că întreaga colecţie globală trebuie descompusă în fragmente. Rezultă că orice înregistrare dintr-o colecţie globală trebuie să se regăsească într-un fragment;

• reconstrucţia semnifică faptul că orice colecţie globală trebuie să poată fi recompusă, oricând, din fragmentele sale;

• disjuncţia semnifică faptul că fragmentele în care se descompune o colecţie globală trebuie să fie exclusive. Rezultă că o înregistrare din colecţia globală nu poate să se regăsească în două sau mai multe fragmente ale sale.

METODELE ce pot fi utilizate la fragmentare:

• orizontală, conform căreia descompunerea colecţiei globale în fragmente se face prin extragerea unui set de înregistrări, păstrându-se toate câmpurile colecţiei iniţiale. Rezultă că fiecare fragment are un număr de înregistrări mai mic decât al colecţiei globale din care provine, dar aceeaşi structură de date;

• verticală, conform căreia descompunerea colecţiei globale în fragmente se face prin extragerea unui set de câmpuri, păstrându-se toate înregistrările colecţiei iniţiale. Rezultă că fiecare fragment are o structură de date subset din cea a colecţiei globale din care provine, dar acelaşi număr de înregistrări;

• mixtă, conform căreia descompunerea colecţiei globale în fragmente se face prin aplicarea succesivă a metodelor orizontală şi verticală.

b) Distribuirea prin replicare este operaţia de stocare a unor porţiuni dintr-o bază de date, sub formă de copii, pe mai multe calculatoare (noduri) dintr-o reţea.

Dacă un utilizator actualizează o copie locală atunci SGBDD actualizează automat toate copiile acelor date.

Pentru a putea realiza distribuirea prin replicare un SGBDD utilizează anumite metode: date nereplicate, date replicate parţial, date replicate total.

METODELE ce pot fi utilizate la replicare:

• date nereplicate înseamnă că SGBDD alocă spaţiu pentru anumite date, pe o singură copie, pe un anumit calculator din reţea. Caracteristicile acestei metode sunt: redundanţa este minimă, concurenţa accesului la date este maximă, timpul de actualizare este mic şi timpul de regăsire este mare;

• date replicate parţial înseamnă că SGBDD alocă pentru o parte din date o singură copie pe un calculator, iar pentru o altă parte din date mai multe copii pe mai multe calculatoare din reţea. Caracteristicile acestei metode sunt: redundanţa creşte, concurenţa accesului la date scade, timpul de actualizare este mediu şi timpul de regăsire este mediu;

• date replicate total, înseamnă faptul că SGBDD alocă pentru întreaga BD mai multe copii pe diversele calculatoare din reţea. Caracteristicile acestei metode sunt: redundanţa este maximă, concurenţa accesului la date este minimă, timpul de actualizare este mare şi timpul de regăsire este mic.

c) Distribuirea mixtă este operaţia de aplicare succesivă a fragmentării şi replicării pentru aceeaşi colecţie globală de date. Această tehnică preia avantajele celorlalte două, dar este mai greu de implementat.

d) Distribuirea prin încărcare este operaţia de copiere periodică a întregii baze de date centralizate sau a unei porţiuni din ea pe noduri locale. Este cea mai simplă tehnică şi se foloseşte atunci când datele sunt stabile sau atunci când nu toţi utilizatorii trebuie să aibă acces la datele de ultimă oră.

STUDIUL TEHNOLOGIILOR INFORMATICE DE INTEGRARE A DATELOR 1

2.1.Integrarea orientată pe date 1

2.1.1. Menţinerea unor copii ale datelor 2

2.1.2 Federalizarea datelor 3

2.1.3 Integrarea datelor prin intermediul interfeţelor 4

2.2. Standarde utilizate la integrarea datelor 5

2.2.1. XML, XSLT, ebXML 5

2.2.2. SOAP, WSDL, UDDI 9

2.3. Tehnologii informatice de integrare a datelor 11

2.3.1. Baze de date centralizate şi distribuite 11

-----------------------

Aplicaţie

Aplicaţie

Aplicaţie

Baza de date 1

Replicarea datelor

Replicarea datelor

Replicarea datelor

Baza de date 2

Baza de date 3

................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download