Tehnologii de integrare a datelor

Download Report

Transcript Tehnologii de integrare a datelor

Tehnologii de
integrare a
datelor
Cursul 4
Martie 2015
I. Integrarea orientată pe
date
1. Menţinerea unor copii ale datelor
2. Federalizarea datelor
3. Integrarea datelor prin intermediul
interfeţelor
4. Standarde utilizate la integrarea
datelor
1. Menţinerea unor copii ale
datelor
• 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 datelor
Aplicaţie
Baza de
date 1
Aplicaţie
Replicarea
datelor
Baza de
date 2
Aplicaţie
Replicarea
datelor
Replicarea
datelor
•
•
Avantaje: simpla, ieftina
Dezavantaje: dc sunt metode atasate datelor
Baza de
date 3
Tipuri 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 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 datelor
3. Integrarea prin interfete
de 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 interfetei
4. Standarde de integrare a
datelor
a)
b)
c)
d)
XML
XSLT
ebXML
SOAP, WSDL, UDDI
a. XML eXtensible Markup
Language
• 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 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 XML
Standarde XML pt
integrarea datelor B2B
un cadru pentru interschimb de date şi procese cu e-business.
se referă la o specificaţie, care descrie cum trebuie mapat un EDI
tradiţional la un XML şi invers
este fondat de Microsoft şi defineşte un standard XML pentru
BizTalk
XML-uri bazate pe mesaje şi metadate. Microsoft oferă şi un server
BizTalk pentru a susţine acest standard.
este un standard definit de American Institute of Certified Public
XFRML
Accountants pentru a defini standarde XML pentru informaţii
financiare.
este un grup de lucru al W3C, care descrie un mecanism pentru
XMLdeterminarea structurii unui document XML
Schema
XML Query Este un alt grup W3C, care creează un set de operaţii comune şi
sintaxă pentru a accesa date stocate XML
RosettaNet
XEDI
b. XSLT Extensible Stylesheet
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
XML prin XSLT
c. ebXML Electronic Business using
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
ebXML
JSON (JavaScript Object
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 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
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. SOAP, 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
Language
• 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
UDDI
UDDI
• 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
informatice de
integrare a datelor
II. Tehnologii informatice de
integrare a datelor
1. Baze de date centralizate şi
distribuite
2. Depozite de date
3. Migrarea datelor
II.1. Baze de date
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 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
fragmentare
• 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 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.
Incarcarea
• 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