Está en la página 1de 8

IBM DB2 paraLinux,UNIX,yWindows

Lasmejoresprcticas
AdministracindedatosXML

MatthiasNicola LaboratorioSiliconValleydeIBM

SusanneEnglert LaboratorioSiliconValleydeIBM

Administracin de datos XML

Pgina 2

Resumenejecutivo.........................................................................................................3 ElporquXML..............................................................................................................4 VentajasydesventajasdelosdatosXMLydelosdatosrelacionales.............4 SolucionesXMLparalosproblemasdemodelosdedatosrelacionales.........5 BeneficiosdeDB2pureXMLconrespectoaotrasopcionesde almacenamiento......................................................................................................7

Administracin de datos XML

Pgina 3

Resumenejecutivo
EstedocumentopresentalosprincipiosyloslineamientosparautilizarDB2pureXMLpara resolverconeficaciaproblemasdenegociosyparalograrobtenerunaltodesempeoenla administracindedatosXMLenaplicacionesempresariales.Losejemplosqueilustranlas mejoresprcticassebasanenescenariosdeaplicacionesfinancierasrealesymuestrancmo implementarloslineamientos.Losejemplospuedenadaptarseconfacilidadaotrostiposde aplicacionesXML.Estedocumentoabarcalassiguientesreas:

OpcionesdealmacenamientoparadatosXMLparamejorareldesempeoylaeficacia delalmacenamiento. TcnicasparaagregardatosXMLaunabasededatosDB2. TcnicaspararealizarconsultasyactualizardocumentosXMLconeficacia. TcnicasparautilizarndicesendatosXMLpararealizarconsultasconeficacia. TcnicasparaelmantenimientoyelmonitoreoeficazenunabasededatosXML. TcnicasparaeldesarrolloeficazdeaplicacionespureXML.

Administracin de datos XML

Pgina 4 5

ElporquXML
XMLofreceunaformaneutralyflexibleparaintercambiardatosentresistemas,aplicacionesy organizacionesdiferentes.ConXML,losdatossemantienenenunformatoautodescriptivoyque puedeampliarseparasatisfacerlasnecesidadessiemprecambiantesdelosnegocios.Los documentosXMLutilizanetiquetasparadescribirlosvaloresdelosdatosquecontienen,ascomo elanidadodeetiquetasparaexpresarlasrelacionesjerrquicasqueexistenentreloselementosde losdatos.XMLpuededescribirdatosmuyestructuradoseimponerlaestructuraatravsde esquemasXML;sinembargo,tambinpuededescribirdatossemiestructuradosqueprevalecenen aplicacionesorientadasenelcontenido.

Lasarquitecturasorientadasalservicio(SOA),laintegracindeaplicacionesempresariales(EAI), laintegracindeinformacinempresarial(EII),losserviciosweb,elbusdemensajesempresarial (ESB)ylosesfuerzosdeestandarizacinenmuchasindustriastodossebasanenXMLcomola tecnologasubyacenteparaelintercambiodedatos.

Lasorganizaciones,aligualquetodaslasindustrias,hanestandarizadolosesquemasXMLpara promoverelintercambiodedatosyestndesarrollandoesosesquemasparasatisfacerlas cambiantesnecesidadesdelosnegocios.EstosesfuerzosincluyeACORDenlaindustriade seguros,FpMLyFIXMLenlaindustriafinanciera,RosettaNetenlaadministracindelacadena desuministros,ARTSenelnegociominorista,HL7enelsectordeserviciosmdicos,XBRLpara lapresentacindeinformacinempresarialyDITAparacrear,administrarypublicar documentacinimpresayenlaweb.

Esasiniciativasespecficasporindustria,ascomolosrequerimientosnormativos,sonloqueimpulsa eldesplieguedeXML.Conformemstransaccionesdenegociosserealicenatravsdeinterfases basadasenlawebyenformatoselectrnicos,lasdependenciasgubernamentalesylasempresas comercialesasumenunamayorresponsabilidadrespectodelaconservacindelospedidos,las solicitudes,lasreclamaciones,lasoperacionesolosenvosoriginales.XMLofreceunmediodirecto paracapturarymantenerlosdatosrelacionadosconesastransaccioneselectrnicas.Dehecho,los documentosXMLconfrecuenciarepresentanregistrosdetransaccionesensistemasdeprocesamiento detransaccionesbasadosenmensajes.

VentajasydesventajasdelosdatosXMLydelosdatosrelacionales
Comounformatodedatosautodescriptivo,XMLpermitequediversosdatos(conosinesquema XML)sealmacenenenunsolodocumentoofilasinsacrificarlacapacidaddeinvestigarode agregarpartesdeesosdatos.LasaplicacionespuedendesarrollarsusesquemasXMLsin provocardaosalesquemasubyacentedelabasededatos.MientrasquelaflexibilidaddeXML significaqueelexaminareinterpretardatosXMLpuedeconsumirmsrecursosdelprocesador y/odeentrada/salidaquesilosmismosdatossealmacenaranenformarelacional,factorescomo lacomplejidaddelesquemapodranhacerqueelalmacenamientodelosdatosresultasepoco prctico.

Condefinicionesdeesquemasmsrgidas,elmodelorelacionalrequiereconsiderablementemenos interpretacinypermiteoperacionesdedatosmsoptimizadas.Deesemodo,estopuedeofrecerun muyaltodesempeoperopodranosatisfacerlosrequerimientosdelasaplicacionesrespectodela flexibilidaddelesquema.Elmodelodelosdatosrelacionalesseadecuamuybienalasaplicaciones conestructurasdedatosestablesypatronesdeaccesopredecibles.Confrecuencia,XMLseadecua msaaplicacionesconestructurasdedatosvariablesycomplejasesidealparalacombinacinde informacinestructuradaynoestructurada.

Administracin de datos XML

Pgina 5

Enalgunoscasos,XMLofrecebeneficiosdedesempeoconrespectoalosmodelosrelacionales precisamentedebidoasuflexibilidad.Confrecuencia,losdatosrelacionalesrequierende normalizacinparaajustarlosdatosdenegociosenestructurasplanasytabulares.Esta normalizacindedatosdenegocioscomplejosrequieredeunatransformacincuandolosdatos sealmacenanyrecuperany,confrecuencia,dalugaraconsultasconjuntasmultidireccionalesen basesdedatosrelacionales.XMLpuedeconstituirunarepresentacinmsnaturaldelosobjetos denegocioscomplejoscontodaslasrelacionesrelevantesrepresentadasenundocumentonico. LasjerarquasdentrodeundocumentoXMLsonesencialmenteunionesprecalculadasentrelos elementosdelosdatosrelacionados.

Otraconsideracinenlaeleccindeunmodelodedatoseslaaplicacinqueutilizalosdatos. InclusosilosdatosseoriginanenXML,sielprocesamientoposteriordeesosdatosdependede quelosdatossealmacenanenunformatotabularporejemplo,cuandoseaplicaun procesamientoanalticoenlnea(OLAP)relacionalalosdatosenunalmacndedatos entonces,elalmacenarlosdatosenunformatorelacionalenvezdehacerloenXMLserala eleccincorrecta.

SolucionesXMLparalosproblemasdemodelosdedatosrelacionales
Elmodelodedatosdealmacenamientodebeconcordar,enlamedidamsampliaposible,conel modelodeusodevalormselevadoymscrticoparasusdatos.Silosdatosquesemodelanson tabularesdemaneranatural,porloregular,esmejorrepresentarlosenunformatorelacionalque hacerloconelformatoXML.Sinembargo,existenalgunoscasosenlosqueelmodelorelacional noesnecesariamentelamejorelecciny,enocasiones,inclusosetratadeunamalaeleccinpara manejarsusdatos.LassiguientessonalgunassituacionesenlasquelarepresentacinXML tiendeasermsbenficaqueelformatorelacional.

Cuandoelesquemaesvoltil.
Problema con los datos relacionales:Sielesquemadelosdatoscambiaconfrecuencia, entonceslarepresentacindelosdatosenformarelacionaltienecomoresultadoqueseincurreen costosyenunasobrecargaporlamodificacindelesquemarelacional.Mientrasquealgunas formasdemodificacinalesquemasonrelativamentesencillasenlasbasesdedatosrelacionales, comoelagregarunanuevacolumnaaunatabla,otrasformassonmscomplicadas,comoel eliminarunacolumnaoelmodificareltipodeunacolumna.Anas,hayotrasformasde modificacionesdeesquemasquesonabsolutamentedifciles,comolanormalizacindeunatablaen mltiplestablas.Lamodificacindelastablassignificaentoncesquelasaplicacionesnecesitan modificarlasinstruccionesSQLquetienenaccesoastas.

Solucin con datos XML:Laspartesdelesquemaquesonvoltilespuedenexpresarsecomouna nicacolumnaXML.LanaturalezaautodescriptivaysusceptibledeampliarsedeXMLpermiteel manejoalaperfeccindelavariabilidadylaevolucindelosesquemas.Lasmodificacionesenel formatodeldocumentoXMLtienenlugarsinnecesidaddemodificartablasocolumnasenlabasede datosy,porlogeneral,sindesarticularlasconsultasXMLexistentes.

Cuandolosdatossonjerrquicosdemaneraintrnsecaporsunaturaleza.
Problema con los datos relacionales:Losdatosquesonjerrquicosorecursivosdemanera intrnsecaconfrecuenciasondifcilesderepresentarenesquemasrelacionales.Comoejemplosdeesto seincluyenlistasdemateriales,objetosdeingenieraodatosbiolgicos.Laexplosindeunalistade materialespuedealmacenarseenunabasededatosrelacionalperoelreconstruirlaenpartesoensu totalidadpodrarequerirelusorecursivodeSQL.

Administracin de datos XML

Pgina 6

Solucin con datos XML:DadoqueXMLesunmodelodedatosjerrquico,steesuna representacinmuchomsnaturalparalosdatosdenegociosjerrquicosdemaneraintrnseca.El utilizarXMLpermiteunaccesoalosdatossimpleydenavegacinparareemplazarunconjunto deoperacionescomplejosistemismoserepresentaraenunformatotabular.

Cuandolosdatosrepresentanobjetosdenegocios.
Problema con los datos relacionales:Silosdatosdelaaplicacinrepresentanobjetosde
negocios,comoformulariosdereclamacindeunseguro,entonces,confrecuenciaesbenfico mantenerjuntosloselementosdedatosqueintegranunareclamacinenparticular,enlugarde esparcirlosenunconjuntodetablas.Estoesparticularmenteciertocuandoloselementosdelos datosindividualesdeunformulariodereclamacinnotienensignificadocomercialvlidopors mismosyslopuedeninterpretarseenelcontextodelformulariocompleto.Lanormalizacinde reclamacionesalolargodedocenasdetablasrelacionalessignificaquelaaplicacintieneque lidiarconunafragmentacincomplejaypoconaturaldesusdatosdenegocios.Estoincrementa lacomplejidadylaprobabilidaddequesepresentenerrores.

Solucin con datos XML:XMLlepermiterepresentarinclusoobjetosdenegocioscomplejos comodocumentoscohesivosydefinidosalmismotiempoquesiguecapturandotodaslasrelaciones entreloselementosdelosdatosqueintegranelobjetodenegocios.Larepresentacindecadauno delosformulariosdereclamacin(elobjetodenegocios)comoundocumentoXMLnicoenuna nicafiladeunatablaofreceunmodelodealmacenamientomuyintuitivoparaeldesarrolladorde aplicacionesypermiteunrpidodesarrollodelasaplicaciones.

Cuandolosobjetostienenatributosescasos
Problema con los datos relacionales:Algunasaplicacionestienenungrannmerode posiblesatributos,lamayoradeloscualessonescasos,estoes,losatributossonaplicablesamuy pocosobjetos.Unejemploclsicoesuncatlogodeproductosendondeelnmerodeatributosde losdiferentesproductosesenorme,loqueincluye:tamao,color,peso,longitud,altura,estilo,tipo detejido,voltaje,resolucin,resistenciaalaguayunalistacasiinterminabledeotraspropiedades. Paracualquierproductodado,slounsubconjuntodeestosatributosesrelevante.Unenfoque relacionalposibleesalmacenarestosdatosparatenerunacolumnaporatributo,loquesignificaque ungranporcentajedelasceldasenlatablacontengavaloresNULOS.Estonoesdeseableypuede resultarineficaz.Unenfoquerelacionaldiferenteparaesosdatosescasosesunatablacontres columnasquealmacenevariosparesdenombres/valoresparacadaidentificadordeproducto.Esto significaquelosnombresdelosatributosnosonlosnombresdelascolumnassinovaloresenuna columnadeltipoVARCHAR(delongitudvariable).Estoevitaquelossistemasdebasesdedatos relacionalesestimenconexactitudunaselectividadderestriccionesygenerenplanesdeconsulta eficaces.Asimismo,eldefinireimponerrestricciones,comolasingularidaddeunciertoatributo,es extremadamentecomplejo.

Solucin con datos XML:LabellezadeXMLesqueloselementosylosatributospuedenser opcionales,demodoquesimplementeseomitensinoseaplicanaunproductoespecfico.Nilos valoresNULOSnilosparesdenombres/valoressonnecesarios.ElesquemaXMLpuededefinir ungrannmerodeelementosopcionales;sinembargo,slounoscuantosdestosseutilizan paracualquierobjetodado.Mientrasqueenunatablarelacionalcadafiladebetenerelnmero exactodecolumnas,losdocumentosXMLencolumnasXMLpuedentenerdiferenteselementos deunafilaalaotra.Asimismo,unndiceXMLparaunelementoopcionalsermuypequeosi esteelementoaparecesloenunporcentajepequeodedocumentos(filas).staesunaclara ventajaconrespectoalosndicesrelacionalesquetienenexactamenteunaentradaporfila.

Administracin de datos XML

Pgina 7

Cuandolosdatosnecesitanintercambiarse
Problema con los datos relacionales:Siustedexportaunconjuntodefilasdeunatabla relacionalyloenvaaunaaplicacinuorganizacindistinta,eldestinatarionopuedeinterpretar losdatossinlosmetadatosadicionalesquedescribanlascolumnas.Estoesparticularmenteciertosi suesquemarelacionalsehamodificadodesdelaltimavezqueenvilosdatos.

Solucin con datos XML:LosdatosXMLsonautodescriptivos.LasetiquetasXMLson metadatosquedescribenlosvaloresquelesacompaan.

BeneficiosdeDB2pureXMLconrespectoaotrasopcionesde almacenamiento.DadoqueXMLsehavueltocadavezmscrticoparalasoperaciones
deunaempresa,losdocumentosXMLsonactivosquenecesitancompartirse,investigarse, protegerseyactualizarsecontotalcongruenciatransaccional.Enfuncindesuuso,losdatos XMLpodrantambinnecesitartransformarse,auditarseeintegrarseconotrosdatos.Para satisfacerestosrequerimientos,elalmacenamientodedatosXMLensuformatojerrquiconativo enunabasededatosDB2tienediversasventajas,entrelasqueseincluyen:

LaretencindelconocimientosobrelaestructurainternadelosdatosXML.Estotiene laventajaconrespectoalalmacenamientodedocumentosXMLcomoobjetosde caracteresdegrantamao(CLOBs)uobjetosbinariosdegrantamao(BLOBs)enla basededatos.Enparticular,ustedpuederealizarconsultasconfacilidadenlosdatos XMLutilizandoXQuery,XPathySQL/XMLparaaprovecharlaestructuraXMLy puedemejorareldesempeodelasconsultascreandondicesconrespectoalosdatos XML.Adems,puedeactualizar,transformarypublicarconfacilidaddatosXML utilizandoSQL,XQueryyXSLT. ElmantenimientodelanaturalezajerrquicayflexibledelosdatosXML.Estotiene ventajaconrespectoaladescomposicin(fragmentacin)delosdocumentosXMLen tablasrelacionalesendondeunadministradormapealoselementosXMLylos atributoshaciacolumnarelacionales.Despusdelafragmentacin,losvaloresdelos documentosXMLsealmacenanenestastablassinsusetiquetasoriginales.Con frecuencia,lafragmentacinrequiereungrannmerodetablasy,porloregular,esto resultademasiadocomplejoparaserprctico.LasconsultasendocumentosXML descompuestospuedenrequerirunionesSQLcomplejasquetiendenaserdifcilesde desarrollaryafinar.LoscambiosenelesquemaXMLconfrecuenciarompenelmapeo alesquemadelabasededatosrelacional.Estoconllevaincurrirenmantenimiento costosoyqueconllevamuchotiempoloqueanulalaflexibilidadporlaqueporlo regularseeligeXML.EsporestoqueDB2pureXMLlepermiteutilizarunacolumna XMLnicaparaalmacenaryrealizarconsultarendocumentosXMLqueestnbasados endiferentesesquemasXMLoenversionesdiferentesdeunesquemaXMLen evolucin. LaintegracindedocumentosXMLcondatosrelacionalesenunabasededatosnica. Estotieneventajasconrespectoalalmacenamientodedatosrelacionalesenunabasede datosydedocumentosXMLenotrabasededatosexclusivaparaXMLporseparado. Esteenfoquerequierehabilidadesypersonalparaoperarymantenerdossistemasde basesdedatosenlugardeslounsistema.Asimismo,lacombinacindedatosdedos basesdedatosporlogeneralrequierelgicaextraenlaaplicacin,loquecon frecuenciaesdifcileineficaz.CuandoustedalmacenatantodatosXMLcomo

Administracin de datos XML

Pgina 8

relacionalesenunabasededatosDB2nica,ustedpuedecombinarambostiposde datosenconsultasyrealizarunionesentrestoseinclusoconvertirlosdeunoaotro conformenecesite.Estopuederesultarpotencialmentemsrentableyofreceunmejor desempeoqueelutilizardosbasesdedatosporseparado.