Cómo Gestionar Big Data Mediante DB2

11
 Desarrolle y despliegue su próxima app en Bluemix, la plataforma cloud de IBM. Comience su prueba gratuita IBM Bluemix ¡Desarrolla en la nube en un click! Comience su prueba gratuita Hoy en día con el incremento de la información y la diversidad de formatos en la que están representados se convierte en un reto el análisis de la información con grandes volúmenes de información desde un solo manejador de base de datos. Con las características de DB2 ver 10.1 la explotación y análisis de la información se logra de una manera fácil. Se desempeña como Database Migration Specialist para Information Management en IBM para México y Latinoamérica y ha trabajado 17 años con distintas Tecnologías de la Información como Analista, Diseñador, Desarrollador e Implementador de Sistemas. Cuenta con certificaciones en IBM DB2 para LUW de la versión 9.7 - 10.1, IBM IT Specialist, OPEN Group Master IT Specialist y OCP en Oracle. 30-09-2013 Big Data Los datos son una de las partes más importantes de las empresas y el factor principal en una base. Como el aceite, en su forma pura tiene poco valor, pero una vez procesado y refinado ayuda a alimentar al mundo. Big Data ha llegado a los distintos tipos de organizaciones para el procesamiento y análisis de la información. Podemos citar algunos e  jemplos: Empresas de salud donde se pueden procesar más de dos millones de pacientes al año. Incremento de análisis de información en los medios sociales tales como Facebook, Twitter y sitios web para tratar de entender las necesidades del cliente, qué los motiva, qué desean, entre otras. Las empresas están inundadas de datos relacionados a los hábitos de compra de los clientes y a la eficacia de cadena de suministro. Sin embargo, muchos directores luchan por darle sentido a los números. DB2 está construido para manejar grandes volúmenes de datos. Ha permitido a Hadoop el procesamiento distribuido mediante el uso de MPP por años (DB2 PE, DPF, EEE, ICE, BCU, Smart  Analytics Syst em, PureData). DB2 también permite alta compresión administrando mayores volúmenes de datos a un menor costo. También se han implementado numerosas características para almacenar y consultar más datos de una forma más rápida. Por ejemplo la utilería Ingest permite leer datos desde archivos de una manera más rápida sin afectar la disponibilidad de la información y con la opción de hacer transformaciones de los datos.  dev elope rWorks en esp añol Temas Técn icos Information mgm t Biblioteca técn ica Cómo gestionar Big Data mediante DB2 Manejo de datos SQL y NoSQL

description

informacion sobre big data

Transcript of Cómo Gestionar Big Data Mediante DB2

  • 24/6/2015 CmogestionarBigDatamedianteDB2

    https://www.ibm.com/developerworks/ssa/library/bddatossqlynosqlendb2/ 1/11

    DesarrolleydesplieguesuprximaappenBluemix,laplataformacloudde

    IBM.

    Comiencesupruebagratuita

    IBMBluemixDesarrollaenlanubeenunclick!Comiencesupruebagratuita

    Hoyendaconelincrementodelainformacinyladiversidaddeformatosenlaqueestnrepresentadosseconvierteenunretoelanlisisdelainformacincongrandesvolmenesdeinformacindesdeunsolomanejadordebasededatos.ConlascaractersticasdeDB2ver10.1laexplotacinyanlisisdelainformacinselogradeunamanerafcil.

    SedesempeacomoDatabaseMigrationSpecialistparaInformationManagementenIBMparaMxicoyLatinoamricayhatrabajado17aoscondistintasTecnologasdelaInformacincomoAnalista,Diseador,DesarrolladoreImplementadordeSistemas.CuentaconcertificacionesenIBMDB2paraLUWdelaversin9.710.1,IBMITSpecialist,OPENGroupMasterITSpecialistyOCPenOracle.

    30092013

    BigDataLosdatossonunadelaspartesmsimportantesdelasempresasyelfactorprincipalenunabase.Comoelaceite,ensuformapuratienepocovalor,perounavezprocesadoyrefinadoayudaaalimentaralmundo.BigDatahallegadoalosdistintostiposdeorganizacionesparaelprocesamientoyanlisisdelainformacin.Podemoscitaralgunosejemplos:

    Empresasdesaluddondesepuedenprocesarmsdedosmillonesdepacientesalao.

    IncrementodeanlisisdeinformacinenlosmediossocialestalescomoFacebook,Twitterysitioswebparatratardeentenderlasnecesidadesdelcliente,qulosmotiva,qudesean,entreotras.

    Lasempresasestninundadasdedatosrelacionadosaloshbitosdecompradelosclientesyalaeficaciadecadenadesuministro.Sinembargo,muchosdirectoresluchanpordarlesentidoalosnmeros.

    DB2estconstruidoparamanejargrandesvolmenesdedatos.HapermitidoaHadoopelprocesamientodistribuidomedianteelusodeMPPporaos(DB2PE,DPF,EEE,ICE,BCU,SmartAnalyticsSystem,PureData).DB2tambinpermitealtacompresinadministrandomayoresvolmenesdedatosaunmenorcosto.

    Tambinsehanimplementadonumerosascaractersticasparaalmacenaryconsultarmsdatosdeunaformamsrpida.PorejemplolautileraIngestpermiteleerdatosdesdearchivosdeunamaneramsrpidasinafectarladisponibilidaddelainformacinyconlaopcindehacertransformacionesdelosdatos.

    developerWorksenespaol TemasTcnicos Informationmgmt Bibliotecatcnica

    CmogestionarBigDatamedianteDB2ManejodedatosSQLyNoSQL

  • 24/6/2015 CmogestionarBigDatamedianteDB2

    https://www.ibm.com/developerworks/ssa/library/bddatossqlynosqlendb2/ 2/11

    DB2estaconstruidoparamanejarlavariedaddedatostalescomo:

    BigData,unmundollenodedatosnoestructuradosporejemplodocumentosdetextos,imgenes,XML,audio,entreotros.

    HaadministradodatosXMLporaos(XMLExtenderinv7,pureXMLinDB29.1).

    PermiteunprocesamientomasrpidodedatosXML:MejoraelprocesamientodelafuncinXMLTableyXQueryparalasconsultas

    CreacindendicesdetipoDECIMAL,INTEGER,FN:UPPERCASE,FN:EXISTS

    VelocidadenlatransferenciadedatosXMLentreaplicacionesyDB2conXMLBinario(XDBX)

    TextSearchmejoradoparasoportarbsquedasdifusas,bsquedasdeproximidad,ejecutarbsquedasdetextosenunservidorindependientealservidorDB2.

    CapacidadparalasaplicacionesdealmacenaryconsultardatosRDFyNoSQLenDB2.

    Estalistoparacualquiernube.Porejemplo:Amazonwebservices,GoGrid,Eucalyptus,RightScale,Cloud.comyRackspacehosting.

    CaractersticasdeBigDataAnalizacolectivamentelaampliavariedaddedatos.80%deellosenelmundosonnoestructurados.

    Costoeficientealprocesargrandesvolmenesdeinformacin.

    Establecelaveracidaddelasfuentesdeinformacinengrandesvolmenes.Unadecadatresempresasnoconfanenlainformacinqueutilizanparatomardecisiones.

    Imaginelasposibilidadesdeanalizartodoslosdatosdisponiblescomoporejemplo:

    Anlisisdelabajalatenciaenlared.

    Detencindeamenazasprecisayoportuna.

    Predeciryactuarsobrelaintencindecompra.

    Detencinderiesgosyfraudes.

    Entenderyactuarsobrelaconfianzadelcliente.

    Optimizacindelflujodetraficoentiemporeal.

    BigDataesuntemacalienteporquelatecnologapermitehacerposibleelanlisisdetodoslosdatosdisponiblesancuandovienendediferentesfuentescondistintosformatos.

    Figura1.Fuentesdeinformacin

  • 24/6/2015 CmogestionarBigDatamedianteDB2

    https://www.ibm.com/developerworks/ssa/library/bddatossqlynosqlendb2/ 3/11

    IntegracinconBigData(Hadoop)FrameworkApacheHadoopesunframeworkdesoftwarequepermitealasaplicacionestrabajarconmilesdenodosypetabytesdedatos.HadoopestinspiradoentecnologasGoogle(MapReduceyGFS).InicialmenteconstruidoparahacerfrentealosproblemasdeescalabilidaddeNutch,unawebdecdigoabiertodelatecnologadebsqueda.OtradelascaractersticasimportantesdeHadoopesquepermitealasaplicacionestrabajarconmilesdenodosypetabytesdedatosenparalelo,demanerarentable.

    CPU+cajadediscos=Hadoopnodo.

    Lascajaspuedensercombinadasengrupos.

    Sepuedenagregarnodossegnseanecesariosinhacerningncambio:Formatodedatos

    Comolosdatossoncargados

    ComolosJobssonescritos

    EcosistemaHadoopLossiguienteselementosformanpartedelecosistemaHadoop:

    Hadoop=HDFS+Map/Reduce

    HDFS=HadoopDistributionFileSystem

    MapReduce=Esprocesargrandesconjuntosdedatosmedianteladistribucindetrabajoatravsdegrannumerodenodos.

    PIG=esunlenguajedealtonivelquegeneraprogramasMapReduce.

    Hive=utilizaunlenguajesimilaraSQLparaaccederadatos.

    Oozie=esunprogramadordeflujodetrabajoparaHadoop.

    ZooKeeper=esunaconfiguracincentralizadadeserviciosyelnombramientoderegistroparalosgrandessistemasdistribuidos.

    HBase=Norelacionales,sonbasesdedatosdistribuidasqueseejecutanenlapartesuperiordeHDFS.

  • 24/6/2015 CmogestionarBigDatamedianteDB2

    https://www.ibm.com/developerworks/ssa/library/bddatossqlynosqlendb2/ 4/11

    Enlasiguientefigurapodemosobservarcomoelarchivosedivideenlosdiferentesnodosyseescribeenbloquesdiferentesadiferentesmaquinas.Llamadotambinparalelismo.

    Figura2.EscribiendoaunHDFS

    Enlasiguientefigurasepodrobservarcomoseobtienelainformacindeunaformarpida.

    Figura3.Procesamientodedatos(Reduccin)

    MoviendodatosentreHadoopyDB2ConlaversinDB210sepuedenrealizarlassiguientesoperacionesconlosdatos:

    AlmacenarlosresultadosdelanlisisdeHadoop

    JalardatosdesdeHDFSaDB2MedianteDB2SQLAPIexendidoparaBigData

    HdfsRead()paraleerlosarchivosdedatosdesdeHDFS

    JaqlSubmit()parainvocarJaqlJobs

    EmpujardatosHDFSaDB2UtilizandoJaqljobparaleerdesdeHDFSyJDBCparaescribiraDB2

    Escribirprimeroatablastemporalesycopiaralatabladestino

    AnalizardatosDB2conHadoopjuntoconotrasfuentesdedatosUtilizarJaqljobparaleerdatosDB2utilizandoJDBC

    LosJobspuedenutilizarmltiplesconexionesJDBCparaparalelizarlalectura

  • 24/6/2015 CmogestionarBigDatamedianteDB2

    https://www.ibm.com/developerworks/ssa/library/bddatossqlynosqlendb2/ 5/11

    UtilicemltiplestareasparaescribirenHDFS

    RDMSyHadoopSoncomplementariosynocompiten.Aqusemuestranlasdiferenciasentrecadaunodeellos.

    TablaDiferenciasentreRDMSyHadoop

    Tabla1.DatosestructuradosconesquemasconocidosRDMS Hadoop

    Datosestructuradosconesquemasconocidos

    Noestructuradosyestructurados

    Registros,camposlargos,objetos,XML Archivos

    Sepermitenactualizaciones SolosepermiteInsertaryEliminar

    SQLyXQuery Hive,PigyJaql

    Respuestarpida,accesoaleatorio Procesamientoporlotes

    Laperdidadedatosnoesaceptable Laperdidadedatospuedeocurriraveces

    SeguridadyAuditoria Anno

    Encriptacin Anno

    Sofisticadacompresindedatos Compresinsimpledearchivos

    Msde30aosdeinnovacin Dosotresaosdeedadtecnolgica

    Accesoaleatorio(Indexacin) Soloaccesoaarchivos(streaming)

    ComunidadgrandedeDBAyaplicaciones Pequeonmerodeempresasloutilizanenproduccin

    Figura4.UntpicoclusterHadoop

    AnlisisconBigDataBigDatayanlisisdenegociosrepresentanelnuevocampodebatalladeTI.Lacantidadylostiposdedatosquesoncapturadosparaelanlisisdenegociosescadavezmayor.Unejemploclsicodeestesperconjuntodedatosesweblogs,elcualcontienedatosnoestructuradososinestructura.

    Estasinfraestructurasabarcanhardwareysoftware,talescomonuevossistemasdearchivos,lenguajesdeconsultayelectrodomsticos.

    UnbuenejemploesHadoop:EsunFrameworkbasadoenJavaquesoportaaplicacionesdistribuidas

  • 24/6/2015 CmogestionarBigDatamedianteDB2

    https://www.ibm.com/developerworks/ssa/library/bddatossqlynosqlendb2/ 6/11

    conusoinmensodedatos.Permitealasaplicacionestrabajarconmilesdenodosypetabytesdedatos.Seutilizaunsistemadearchivosdistribuidoqueestdiseadoparaseraltamentetoleranteafallos.

    Porejemplo,unaempresaquerecopiladatossobresusclientesdediversasfuentes,talescomoregistroshistricosdenavegacinenunsitioweb,datossobrecomprasanteriores,ylosdatosdelasencuestasenarchivosplanos.Laempresadeseautilizarestosdatosparaponerenmarchaunacampaadepublicidadqueserdeintersparasusclientes.Losretosdeestaempresasondeterminarlosdatosquenecesitaparasucampaadepublicidad,reunirlosdatosdelasdiferentesfuentes,eintegraresosdatosenregistrossignificativosqueproporcionaraninformacintilparafuturasconsultasanalticas.TodoloanterioresposiblemedianteelusodeHadoopdentrodeDB2.AtravsdeHadoopsetienelaposibilidaddeobtenerdinmicamentelainformacinyluegointegrarlosperfectamentemedianteelusodesentenciasSQL.

    Figura5.AnlisisconHadoop

    FuncindeTablaJavaGenericDB2tambinproporcionalacapacidaddedefinirunafuncindetablaquepuedereaccionaradiferentesconjuntosderesultadosdediversasinfraestructurassinnecesidaddeunanuevadefinicindelafuncin.UstedslotienequeutilizarlasinstruccionesSQLparahacerreferenciaalafuncindetablagenricayluegodefinirlaformadelatabladesalida,incluyendolosnombresdecolumnasytiposdedatos.

    SololosparmetrosdeentradaseespecificanenlafuncinDDLCREATE.Estacaractersticaproporcionaunamayorflexibilidadyproductividad.Losdesarrolladorespuedenutilizarlamismafuncinparagenerarlasalidayadaptarseadiferentesescenariosdenegocio.Adems,estasfuncionesproporcionanunpuntodeintegracinflexibleensentenciasSQLyentrelasaplicacionesDB2yotros.

    UnusuariodefinelaFuncindetablaescritaenellenguajedeprogramacinJava.LaimplementacinesproporcionadaporunaaplicacinfueradeDB2.

    UnaFuncindetablaregresaunconjuntoregistrosofilas.

    PorquesGeneric?Porqueescompatiblecondiversosformatosdesalida,loscualessedeclaranentiempodeejecucin.

    SalidadeFuncindeTablaSeaccedanatravsdesentenciasSQL.

    RegresadiferentesresultadosconsolomodificarlasentenciaSQL.

    Figura6.AnlisisdedatosconfuncindeTablaJavaGeneric

  • 24/6/2015 CmogestionarBigDatamedianteDB2

    https://www.ibm.com/developerworks/ssa/library/bddatossqlynosqlendb2/ 7/11

    1. PasosparacrearunafuncindeTablaJavaGeneric:a. CrearunprogramaJavaquetomeelarchivoCSVylomanejecomounInput,leerelarchivoy

    regresarlosregistrosdedatosaDB2.i. ParaprogramarlarutinaenJavaasegresedeutilizarlasinterfacesoclasesjavasdiseadas

    paramanejarstoreproceduresyUDFs.ii. LaclaseUDFCOM.ibm.db2.appsoportaUDFsexternalJavaGenerictable.

    b. CompilarlarutinaexternadeJava.c. Copiarelarchivojavaclassenlaruta$INSTALLDIR/sqllib/functiondentrodesusistemadebasede

    datos.TodoslosarchivosjavaclassoJARsnecesitanresidireneldirectoriosqllib/functionoenelCLASSPATHdeladministradordelabasededatos.

    d. RegistrarlafuncinJavaenDB2e. UnavezregistradaustedpuedeutilizarlanuevafuncinJavaparatrabajarconsusdatos.

    LasFuncionesdetablasonineficientesycomplejasdeutilizarenaquelloscasosdondelosescenariosdelnegociocambianodondesetienenvariasentradascondiferentesesquemas.ComolasUDFutilizanlanuevacaractersticadeDB2GenericTable,esopuedeserutilizadoparaintegrardatosdediferentesfuentesymejorarlainteraccinentreaplicaciones.EnelcasodeHadoopsepuedencrearresultadosestandarizadosbasadosendiferentesestructurasdedatossintenerquecambiarladefinicindelafuncin.

    RDFGraphStoreRecordemosquepureXMLestambinunabasededatosNoSQLdentrodeDB2yquesoportaelXQueryoriginalmentedesarrolladoparaRationalJazzdondeseestabanexperimentandoproblemasdedesempeoconlasprincipalestiendasdecdigoabiertoRDF.

    UnadelastendenciasemergentessellamalatiendadegrficoRDF,quesignificaResourceDescriptionFrameworkyesunafamiliadeespecificacionesW3,quesepuedeutilizarcomounmarcodeintercambiodedatosestndarparaelmodeladodeinformacin.EnIBM,nosdamoscuentadequelascapacidadesdeNoSQLcondatosnoestructuradosXMLyRDFtriplesgrficosesunatendenciacadavezmayoryserequiereenaplicacionesdeprximageneracin,porlotantopermitequelasaplicacionesDB2almacenenyconsultendatosXMLyRDF.

    Figura7.Diferenciasentrelasestructurasdedatos

  • 24/6/2015 CmogestionarBigDatamedianteDB2

    https://www.ibm.com/developerworks/ssa/library/bddatossqlynosqlendb2/ 8/11

    RDFesunanuevaimplementacindeinsertarymanipulardatosenunformatodeNoSQL.Crearelacionesentrelosdatosenformadegrficotriplesocudruples.Porejemplo,tienesunapersonallamadaHaroldAnguiano,esdueodeuncocheyeltipodesuauto.Notienequeestarenunaestructurarelacional.RDFempleaidentificadoresuniformesderecursos(URI)paracrearunarelacinentrelosdatoscomounatriple,porejemplo,enformadeexpresionesSujetoPredicadoObjeto.Puedevincular,exponerycompartirdatosestructuradosysemiestructuradosatravsdediferentesaplicacionesmedianteelusodeestemodelosimple.

    Figura8.ManeraoptimizadaparaalmacenartriplesgrficosenDB2

    Cadatripledescribelarelacinentredoscosas.Ejemplo.(HaroldAnguiano,tieneun,Automvil).UnconjuntodetriplesdefineunGraph.Lasrelacionessonpartedelosdatos,nopartedelaestructuradelabasededatos.

    CasosdeusoRDFGraphStoreSonprincipalmentetresloscasosdeusoparaRDF,principalmenteporqueRDFpermiteconsultascomplejasatravsdedatosconesquemasvariables.

    Laintegracindedatos.Cadafuentededatostienesupropiomodelodedatoyelesquemadecadamodeloevolucionademaneradiferentecondiferentes/igualesentidadesypropiedades.

    Accesoadatosnoestructurados.Losmetadatosgeneradosporlosextractoresparavideos,textoseimgenestienendiferentesentidadesyrelaciones.

    Desarrolladoencolaboracinconrepositoriosdelconocimiento.

  • 24/6/2015 CmogestionarBigDatamedianteDB2

    https://www.ibm.com/developerworks/ssa/library/bddatossqlynosqlendb2/ 9/11

    Porejemplo,Wikipedia/DBpedia,Freebasetienenentidadesypropiedadesqueevolucionanamedidaquelosusuariosagreganentidadesdentrodelsistema.

    Tabla2.EjemplosdeRDFSujeto Predicado Objeto

    IBM esuna compaa

    IBM vende DB2

    IBM tiene BusinessPartners

    IBM tiene BusinessPartners

    Dafros esBPde IBM

    XML esnativoen DB2

    Dafros esuna compaa

    ... ... ...

    Figura9.RepresentacingrficadeunRDF

    EnDB210,sehaagregadoelsoportedelladodelclienteparaellenguajeSPARQLparapermitirquelasaplicacionesseanescritasenesteidiomaparaelapoyoRDF.LasaplicacionesRDFutilizanellenguajedeconsultaSPARQLpararecuperardatosenbasesdedatosDB2.

    EsteapoyoledalacapacidaddesermsflexibleenelusodelascapacidadesdeRDFydisfrutardelosbeneficiosdesuformatonoestructuradoaltiempodeaprovecharlasfortalezasfundamentalescomoseguridad,manejabilidad,resistenciaydisponibilidaddeDB2.

    LasaplicacionespuedenalmacenaryconsultardatosRDFenDB2EnterpriseServerEditionparaLinux,UNIXyWindows.UnatiendaRDFenDB2esunconjuntodetablasdeusuariodentrodeunesquemadebasededatosquealmacenaunconjuntodedatosRDF.Unnombredetiendanicoestasociadoconcadaconjuntodeestastablas.CadatiendaRDFtieneunatablaquecontienelosmetadatosdelatienda.Estatablatieneelmismonombrequelatienda.

    SPARQL1.0LenguajedeconsultaparaRDFQusignificaSPARQL,ProtocoloSPARQLyLenguajedeConsultaRDF?DB210.1tambinsoportael

  • 24/6/2015 CmogestionarBigDatamedianteDB2

    https://www.ibm.com/developerworks/ssa/library/bddatossqlynosqlendb2/ 10/11

    IBMPureSystemsLanuevafamiliadesistemasexpertosintegradosdeIBMestaqu.

    Lacarrerahacomenzado!ObtengaWASpara

    lenguajeSPA,RQLelcualesutilizadopararealizarconsultasatravsdediferentesfuentesdedatos,sealmacenandemaneranativaenRDFyobtenerlassiguientesventajas:

    Altodesempeo.LograrhastacuatrovecesmsrapidezquelasemnticautilizadaenelmarcodecdigoabiertoparaWebFramework

    Bajoscostos.Rpidodesarrollodeaplicaciones.

    Fciladaptacinconformeevolucionanlasnecesidades.

    Simplificacinenlaadministracindedatosparatriples.

    Ejemplo:MostrartodaslascompaasquevendanDB2.

    SELECT?comp,?producto

    WHERE{?comp[esuna][Compaa]

    ?comp[vende]?producto

    }

    Resultados:

    ?compIBM

    ?compDafros

    ?productoDB2

    ConclusinActualmente,elnuevoconceptoenmanejodegrandesvolmenesdeinformacinagranescalasellamaBigData.IBMDB210.1muestraque,atravsdelusodesuscapacidades,sepuedenmanipulargrandesvolmenesdeinformacinnosolocondatosestructuradossinotambincondatosnoestructuradoscomoporejemploPureXML,RDFyaplicacionesdesarrolladasenHTML.AqusemuestranlascapacidadesquesepuedenaprovecharparamanipularlainformacindeunaformarpidayflexibleconsentenciasSQLyNOSQL.DB2tambinescapazdeinteractuarcondiferentesfuentesdeinformacinentrelosmsfamososGoogle,FacebookyHadoop,entreotros.

    ReferenciasTutorialdeHadoop

    CreacinymantenimientodeunaRDFStore

    BuscardatosRDFutilizandoSPARQL

  • 24/6/2015 CmogestionarBigDatamedianteDB2

    https://www.ibm.com/developerworks/ssa/library/bddatossqlynosqlendb2/ 11/11

    desarrolladoressincosto.

    Descargagratuita:RationalTeamConcertforPowerSystemsSoftwareStandardEdition