Interogări XML Eficiente

Referat
8/10 (1 vot)
Domeniu: Calculatoare
Conține 1 fișier: docx
Pagini : 13 în total
Cuvinte : 5225
Mărime: 28.69KB (arhivat)
Puncte necesare: 5
Universitatea Politehnnica din Bucureşti Facultatea de Automatică şi Calculatoare

Extras din referat

Introducere

Xquery şi XML sunt noi limbaje puternice care se ocupă cu interogarea datelor XML. Totuşi, în implementarea lor, există un număr de obstacole pe care utilizatorii ar trebui să le evite pentru a obţine rezultatele şi performanţa dorită. De exemplu, anumite caracteristici ale acestor limbaje fac aproape imposibilă exploatarea indecşilor XML.

Majoritatea furnizorilor de baze de date asigură suport pentru Xquery şi SQL/XML începând cu ultimele lansări de produse şi în cele care vor urma. Articolul prezentat identifică cele mai frecvente capcane culese din experienţa majorităţii celor care au adoptat aceste limbaje. Aceste capcane sunt ilustrate prin exemple concrete, explicându-se comportamentul neaşteptat al interogării şi arătându-se formulări alternative pentru ele. Rezultatele articolului se bazează pe noi perspective pentru utilizatorii Xquery şi SQL/XML cât şi un feedback pentru standardele limbajelor în curs de dezvoltare.

Xquery şi SQL/XML sunt limbaje suportate în majoritatea sistemelor de baze de date precum DB2, Microsoft SQL Server şi Oracle. Toate aceste sisteme suportă stocarea, interogarea şi indexarea documentelor XML cu sau fără scheme XML, însă diferă în implementare precum şi în scop sau funcţionalitate. Comparativ cu experienţa ultimilor decenii în lucrul cu SQL, cei mai mulţi dezvoltatori de aplicaţii de baze de date sunt începători în Xquery şi SQL/XML şi din acest motiv se necesită un mare antrenament pentru a gestiona corect complexităţile acestor limbaje. Începând cu Xquery şi SQL/XML, cei care au adoptat aceste noi limbaje au identificat un număr de erori pe care utilizatorii începători sunt tentaţi să le facă. Câteva dintre aceste erori sunt uşor de sesizat, deoarece tind să conducă interogările spre rezultate neaşteptate, alte erori însă influenţează performanţa interogărilor. Cele mai multe dintre aceste probleme nu au o implementare specifică unui anumit sistem, însă sunt proprii limbajelor Xquery şi SQL/XML.

Există anumite caracteristici ale limbajelor care împiedică exploatarea indecşilor XML în evaluarea predicatelor. Scopul unui sistem de baze de date este de a identifica predicatele indexabile indiferent de felul în care este exprimată interogarea. Totuşi, aparent, interogările identice nu sunt întotdeauna echivalente, deoarece există diferenţe subtile în semantică, lucru de care începătorii nu sunt întotdeauna conştienţi. Acest fapt ne poate conduce la surprize în ceea ce priveşte performanţa, dacă indecşii nu sunt folosiţi pentru motive semantice.

Totodată, tehnicile relaţionale care sunt aplicabile la SQL, nu sunt direct aplicabile şi la Xquery şi SQL/XML. De exemplu, Xquery are proprietăţi pe care SQL nu le are, ca de exemplu identitatea nodurilor.

Acest articol îşi concentrează atenţia către problemele fundamentale care pot fi evitate doar prin a înţelege semantica limbajelor de interogare. Aceste probleme ale limbajelor sunt discutate în contextul unor caracteristici comune ale aplicaţiilor. Aplicaţiile trebuie să gestioneze un număr mare de documente XML de dimensiuni variabile. De exemplu, se poate observa că aplicaţii care procesează milioane de documente cu dimensiunea de sub 1 MB fiecare, sunt mult mai comune decât acelea care procesează unul sau câteva documente de dimensiune foarte mare. Aplicaţiile financiare, serviciile WEB, cât şi fluxul de formate Web precum RSS şi Atom sunt doar câteva exemple. Chiar şi aplicaţiile XML orientate pe conţinut, de obicei gestionează mai multe documente şi nu doar unul. Prin urmare, indecşii XML sunt necesari în filtrarea documentelor în funcţie de context. Acest lucru este în contrast cu indexarea schemelor care se concentrează numai pe procesarea Xpath în interiorul unui singur document.

Cum flexibilitatea este unul dintre motivele principale pentru utilizarea XML, se pune accentul pe susţinerea seturilor de date XML fără scheme care să includă puncte de extensibilitate. Flexibilitatea schemei a fost recent identificată ca fiind un ucigător al aplicaţiei în unele cazuri, pentru bazele de date XML. Documentele pot folosi mecanismul xsi:type pentru a defini dinamic tipul de dată al nodurilor.

Aceste probleme în XQuery şi SQL/XML sunt discutate cu ajutorul unor exemple concrete în DB2 Viper şi sunt specifice limbajului, nu sunt particulare pentru DB2. Îmbunătăţirile pentru DB2 Viper furnizează stocare nativă XML, indexare, navigare şi procesare de interogare atât prin SQL/XML cât şi XQuery. Principiile proiectării suportului XML în DB2 Viper includ o ierarhie corectă a stocării XML precum şi un grad înalt al flexibilităţii schemei.

Articolul îşi propune să atingă mai multe scopuri principale. În primă fază are ca ideal educarea utilizatorilor de XQuery şi SQL/XML precum şi direcţionarea lor către lansarea de succes folosind aceste limbaje. Ulterior, sunt furnizate sfaturi cu ajutorul cărora se pot evita greşelile comune şi problemele de performanţă . În a doua etapă, se discută problema care se referă la caracteristicile limbajelor care împiedică procesarea eficientă a interogării. Următoarea fază descrie arhitectura de indexare a XML în DB2 şi regulile de bază pentru eligibilitatea indecşilor, iar în final sunt abordate zonele în care caracteristicile semanticii limbajelor previn folosirea indecşilor XML sau conduc către rezultate neaşteptate ale interogărilor.

DB2/XML. Prezentare generală

DB2 Viper stochează date XML în coloane native XML, în tabele relaţionale. Memoria fizică pentru tipul XML păstrează toate informaţiile într-un model de date XQuery. O caracteristică importantă a DB2 este faptul că nu este necesară o schemă XML care să fie asociată cu o coloană XML. O coloană XML poate stoca documente validate conform cu o mulţime de scheme diferite şi evaluate cât şi documente nevalidate, toate în aceeaşi coloană. Prin urmare, asocierea dintre scheme şi documentele XML se face pentru fiecare document în parte, pentru o flexibilitate la nivel înalt.

În DB2, documentele conform cu noile scheme sunt adăugate uşor în sistem în orice moment, iar noua schemă obţinută poate fi similară cu cele precedente. De exemplu, un tip de element poate necesita un nou element descendent. Această abilitate este crucială atunci cand se doreşte stocarea de date din sisteme evaluate (ex: servicii Web).

Aplicaţiile DB2 pot accesa date XML folosind fie SQL/XML, fie XQuery. Cele două limbaje depind unul de celălalt. SQL poate fi invocat din XQuery, iar XQuery poate fi invocat din SQL. Principiul acestui comportament dual este faptul că noul tip de date XML al SQL, care se bazează pe modelul de date XQuery(XDM), prin suportul arbitrar al rezultatelor acestuia, se permite utilizatorului tranziţia dintre SQL şi XQuery.

Preview document

Interogări XML Eficiente - Pagina 1
Interogări XML Eficiente - Pagina 2
Interogări XML Eficiente - Pagina 3
Interogări XML Eficiente - Pagina 4
Interogări XML Eficiente - Pagina 5
Interogări XML Eficiente - Pagina 6
Interogări XML Eficiente - Pagina 7
Interogări XML Eficiente - Pagina 8
Interogări XML Eficiente - Pagina 9
Interogări XML Eficiente - Pagina 10
Interogări XML Eficiente - Pagina 11
Interogări XML Eficiente - Pagina 12
Interogări XML Eficiente - Pagina 13

Conținut arhivă zip

  • Interogari XML Eficiente.docx

Alții au mai descărcat și

Arhitectura calculatoarelor - Intel vs AMD

Rezultatele din testul 3DS Max 7 SPECapc Test Testul alaturat consta in crearea modelelor 3D, modificarea si randarea scripturilor. Conform...

Autentificarea prin semnătură digitală

Introducere O semnatura digitala reprezinta o informatie care il identifica pe expeditorul unui document. Semnatura digitala este creata prin...

Placa de Bază

Caracteristici generale ale placii de baza Placa de baza este un dizpozitiv ‘de baza’ un ‘pamânt’ pe care ‘se planteaza’ celelalte componente ....

Sistem de Prognosticare a Unei Avarii

Acest sistem calculeaza gradul de avariere a unei cladiri în cazul unui cutremur, precum si posibila necesitate a reconstructiei cladirii (partiala...

Te-ar putea interesa și

Utilizarea XML în Baze de Date

Utilizarea XML in baze de date INTRODUCERE Formatul de date XML devine formatul comun acceptat în industrie pentru schimbul de informaţii dintre...

Ai nevoie de altceva?