Tehnologii de integrare a datelor
description
Transcript of Tehnologii de integrare a datelor
Tehnologii de Tehnologii de integrare a integrare a
datelordatelorCursul 4Cursul 4
Martie 2015Martie 2015
I. I. Integrarea orientată pe Integrarea orientată pe datedate
1. Menţinerea unor copii ale datelor 2. Federalizarea datelor 3. Integrarea datelor prin intermediul
interfeţelor 4. Standarde utilizate la integrarea
datelor
1. 1. Menţinerea unor copii ale Menţinerea unor copii ale datelordatelor
• copii ale BD distribuite la nivelul aplicatiilor, fiecare are propria BD
• desincronizari datorate intarzierilor in propagarea schimbarilor intre surse
• REPLICAREA DATELOR – Mutarea datelor intre 2 sau mai multe BD– BD pot avea proveniente si modele diferite– Necesita o INFRASTRUCTURA pentru schimbul de date– Ex: solutii middleware care ofera servicii pentru
extragerea, transformari ale schemei si continutului, plasarea in BD tinta
Replicarea datelorReplicarea datelor
• Avantaje: simpla, ieftina• Dezavantaje: dc sunt metode atasate datelor
Aplicaţie Aplicaţie Aplicaţie
Baza de date 1
Replicarea datelor
Replicarea datelor
Replicarea datelor
Baza de date 2
Baza de date 3
Tipuri de replicareTipuri de replicare• Replicarea snapshot:
– datele de pe server sunt copiate in intregime pe un alt server sau intr-o alta BD de pe acelasi server
– consum mare de timp si resurse
• Replicarea merge: – datele din doua sau mai multe BD sunt combinate intr-una
singura.– pe fiecare se pot realiza schimbari independente, fara o conexiune
de retea activa.– la reconectare, agentul de replicare merge verifica schimbarile
care apar in seturile de date si modifica fiecare din BD in consecinta.
• Replicarea tranzactionala: – utilizatorii primesc copii initiale integrale ale a BD – ulterior primesc actualizari periodice pe masura ce apar
schimbari ale datelor– un plus de flexibilitate pt. BD care se actualizeaza frecvent.
2. Federalizarea datelor2. Federalizarea datelor
• integrarea mai multor BD şi a modelelor asociate într-o singură BD, cu un MODEL UNIFICAT
• un nivel software (middleware) între BD distribuite fizic şi aplicaţiile care vizualizează datele – Conecteaza BD FIZICE prin INTERFETE si le
mapeaza intr-o BD VIRTUALA– Gestioneaza colectarea si distribuirea datelor
din/in BD fizice• Avantaje: o singura interfata bine
definita, nu se modifica aplicatiile tinta
Federalizarea datelorFederalizarea datelor
3. Integrarea prin interfete 3. Integrarea prin interfete de aplicatiede aplicatie
• soluţii de procesare a interfetelor pt integrarea a aplicaţiilor sau pachetelor de aplicatii
• gestioneaza diferenţele de schemă, conţinut şi semantica aplicaţiei, prin interpretarea informaţiei interschimbată între sisteme
• utilizat de ERP – adaptori – se conecteaza la aplicatii prin informatiile oferite prin interfete sau la solutii tehnologice ce includ tehnologii middleware si screen scrapere ca pct de integrare
• avantaj: integrarea > tipuri de aplicatii• dezavantaj: logica procesului de afaceri si
metodele sistemelor sursa si destinatie
Procesarea interfeteiProcesarea interfetei
4. Standarde de integrare a 4. Standarde de integrare a datelordatelor
a) XMLb) XSLTc) ebXMLd) SOAP, WSDL, UDDI
a. XML a. XML eXtensible Markup eXtensible Markup LanguageLanguage
• standard robust pentru interschimbul de informaţie pe Internet
• aplicaţiile şi BD comunica fără a avea informaţii una despre cealaltă.
• Avantaje:1. structurarea datelor – permite modelarea datelor pentru orice nivel
de complexitate;2. extensibilitate - se pot defini noi marcatori daca este nevoie;3. validitate - se verifica corectitudinea structurala a datelor;4. oferă utilizatorilor posibilitatea de a-și reprezenta datele într-un mod
independent de aplicație;5. autodescrierea documentului : nu sunt necesare cunostinte
anterioare despre aplicatie, încapsuleaza atât datele cât şi metadatele
Documentul XMLDocumentul XML• elementul definit prin marcatori (tag-uri) -
numele descrie conţinutul elementului, iar structura descrie relaţiile dintre elemente
• parserul XML (componentă a nivelului middleware) citeşte documente XML şi extrage datele ce urmează a fi accesate de alt program.
• tehnologia middleware realizează transferul efectiv de mesaje (si XML), gestionează interfeţele cu aplicaţiile sursă şi destinaţie şi mută informaţia.
• SAP, Oracle-PeopleSoft (Open Integration Framework)-XML ca interfata nativa
• Producatorii de SGBD (Oracle, Sybase, Informix) – mecanisme care permit citire/ scriere XML direct in BD
Parser XMLParser XML
Standarde XML pt Standarde XML pt integrarea datelor B2Bintegrarea datelor B2B
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
b. XSLT Extensible Stylesheet b. XSLT Extensible Stylesheet Language Transformations Language Transformations
• un limbaj proiectat să transforme un document XML într-un altul, modificând atât schema, cât şi conţinutul, in functie de setul unic de semantici al fiecarei aplicatii
• poate realiza şi alte tipuri de procesare de text şi operaţii de transformare (ex: creare formate standard gen PDF sau HTML)
• PASUL 1: transformare structurala (selectare, grupare, sortare, agregare)
• PASUL 2: formatarea, în care noua structură este adusă în formatul cerut (txt, PDF, HTML,XML)
Transformarea documentelor Transformarea documentelor XML prin XSLTXML prin XSLT
c. c. ebXML ebXML Electronic Business using Electronic Business using eXtensible Markup Language eXtensible Markup Language
• construit pe baza XML, pentru comert electronic,automatizare B2B
• complet: procese, managementul tranzacţiilor, semantici, notaţii, securitate, acorduri, standarde legate de transferul de informaţie şi standarde legate de structurarea informaţiei
• sistemul de mesaje suportă orice tip de date, tranzacţii EDI şi informaţie binară.
• poate conţine un depozit/registru pentru a permite accesul simultan la informaţie
• suportă acorduri de tranzacţionare între parteneri
ebXMLebXML
JSON (JavaScript Object JSON (JavaScript Object Notation)Notation)
• standard bazat pe text, proiectat pentru a putea fi citit usor
• Independent de platforma• derivat din limbajul JavaScript • este construit pe baza a două structuri: o colecție
de perechi de tip cheie-valoare si o lista ordonata de valori
• Folosit des pentru serializare si transmiterea datelor in cadrul unei retele de calculatoare.
• utilizat pentru a transmite datele de la server la o aplicatie web
XML vs JsonXML vs Json
• JSON – mult mai simplu și mai rapid – are o gramatică mult mai simplă și folosește structuri de
date din limbajele de programare moderne. – nu are nevoie de noi tag-uri sau atribute pentru
reprezentarea datelor. – foarte bun pentre reprezentarea obiectelor din limbajele
de programare. Ce pot fi convertite rapid și trimise prinWeb la consumatorii de servicii.
• XML– oferă un suport puternic pentru validare, – este extensibil– un mod mai puternic de descriere a datelor decât JSON.
Un exemplu de document Un exemplu de document JSON JSON
• {• "firstName": "John", "lastName" : "Smith", "age" : 25, "address" :• {• "streetAddress": "21 2nd Street", "city" : "New York", "state" :
"NY", "postalCode" : "10021"• },• "phoneNumber": [
• {• "type" : "home", "number": "212 555-1234"• },• {• "type" : "fax", "number": "646 555-4567"• }• ]
d. d. SOAP, WSDL, UDDISOAP, WSDL, UDDI • Simple Object Access Protocol
(SOAP) - format XML bazat pe mesaje • folosit de aplicaţiile bazate pe servicii
Web • standard pentru codificarea mesajelor
în XML şi care permite acces la funcţii în alte aplicaţii
• e independent de platforma si lb de programare
• similar RPC (Remote Procedure Call)
WSDL Web Service Description WSDL Web Service Description LanguageLanguage
• 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
• specifică procedurile pentru descoperirea informaţiei tehnice şi funcţionale despre serviciile Web pe Internet
• WSDL oferă un mecanism automat de generare a proxy-urilor pentru serviciile Web folosind un limbaj standard
• 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 (operatii si mesaje).
• Operatii si mesaje descrise abstract + protocol de retea+format de mesaj= pct final de comunicatie
UDDIUDDI
UDDIUDDI• Universal Description, Discovery
and Integration • standard pentru catalogarea şi
publicarea descrierilor WSDL asociate serviciilor Web, care sunt disponibile pe Internet
• Registru UDDI- un mecanism comun pentru publicarea şi căutarea informaţiei prin servicii Web
II. Tehnologii II. Tehnologii informatice de informatice de
integrare a datelor integrare a datelor
II. Tehnologii informatice de II. Tehnologii informatice de integrare a datelor integrare a datelor
1. Baze de date centralizate şi distribuite
2. Depozite de date 3. Migrarea datelor
II.1. II.1. Baze de date Baze de date centralizate şi distribuite centralizate şi distribuite
• BDD - BD 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.
• SGBDD - distribuirea, concurenţa şi eventualele eşecuri să fie transparente, operaţiile de citire / scriere se execută a.i. să nu apară nici o diferenţă faţă de situaţia unei BD cu un singur utilizator
Regulile lui DateRegulile lui Date• R1. Autonomia locală: fiecare nod are control local asupra datelor şi este
independent dpdv: 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: 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: poate fi executata pe orice nod din reţea, pot
să participe mai multe noduri • 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
• R11. Independenţa faţă de reţea: BDD şi SGBDD trebuie să poată fi implementate pe orice platformă de reţea corespunzătoare,
• R12. Independenţa faţă de SGBD: la nivel de nod local pot “rula” diferite SGBD-uri.
a. Distribuirea prin a. Distribuirea prin fragmentarefragmentare
• operaţia de descompunere logică a colecţiilor globale în părţi disjuncte numite fragmente, utilizând operatori speciali.
• REGULILE – completitudinea – reconstrucţia – disjuncţia
• METODELE – orizontală extragerea unui set de înregistrări,
păstrându-se toate câmpurile colecţiei iniţiale – verticală extragerea unui set de câmpuri, păstrându-se
toate înregistrările colecţiei iniţiale – mixtă aplicarea succesivă a metodelor orizontală şi
verticală
b. Distribuirea prin replicareb. Distribuirea prin replicare• operaţia de stocare a unor porţiuni dintr-o
BD, sub formă de copii, pe mai multe calculatoare dintr-o reţea
• la actualiz. unei copii locale, SGBDD actualizează automat toate copiile acelor date
• METODELE (redundanta vs concurenta)– date nereplicate – date replicate parţial – date replicate total
c. d. Distribuirea mixta. c. d. Distribuirea mixta. IncarcareaIncarcarea
• Distribuirea mixtă este operaţia de aplicare succesivă a fragmentării şi replicării pentru aceeaşi colecţie
• Distribuirea prin încărcare este operaţia de copiere periodică a întregii BD centralizate sau a unei porţiuni din ea pe noduri locale