<?xml version="1.0" encoding="ISO-8859-1"?><article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<front>
<journal-meta>
<journal-id>2227-1899</journal-id>
<journal-title><![CDATA[Revista Cubana de Ciencias Informáticas]]></journal-title>
<abbrev-journal-title><![CDATA[Rev cuba cienc informat]]></abbrev-journal-title>
<issn>2227-1899</issn>
<publisher>
<publisher-name><![CDATA[Editorial Ediciones Futuro]]></publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id>S2227-18992015000400007</article-id>
<title-group>
<article-title xml:lang="es"><![CDATA[Técnicas para capturar cambios en los datos y mantener actualizado un almacén de datos]]></article-title>
<article-title xml:lang="en"><![CDATA[Techniques to capture changes in data and keep updated a data warehouse]]></article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name>
<surname><![CDATA[Díaz-De-la-Paz]]></surname>
<given-names><![CDATA[Lisandra]]></given-names>
</name>
<xref ref-type="aff" rid="A01"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname><![CDATA[García-Mendoza]]></surname>
<given-names><![CDATA[Juan Luis]]></given-names>
</name>
<xref ref-type="aff" rid="A01"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname><![CDATA[López-Porrero]]></surname>
<given-names><![CDATA[Beatriz Eugenia]]></given-names>
</name>
<xref ref-type="aff" rid="A01"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname><![CDATA[González-González]]></surname>
<given-names><![CDATA[Luisa Manuela]]></given-names>
</name>
<xref ref-type="aff" rid="A01"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname><![CDATA[Lemahieu]]></surname>
<given-names><![CDATA[Wilfried]]></given-names>
</name>
<xref ref-type="aff" rid="A01"/>
</contrib>
</contrib-group>
<aff id="A01">
<institution><![CDATA[,Universidad Central Marta Abreu de Las Villas  ]]></institution>
<addr-line><![CDATA[Villa Clara Santa Clara]]></addr-line>
<country>Cuba</country>
</aff>
<aff id="A02">
<institution><![CDATA[,Katholieke Universiteit Leuven  ]]></institution>
<addr-line><![CDATA[Leuven ]]></addr-line>
<country>Belgium</country>
</aff>
<pub-date pub-type="pub">
<day>00</day>
<month>12</month>
<year>2015</year>
</pub-date>
<pub-date pub-type="epub">
<day>00</day>
<month>12</month>
<year>2015</year>
</pub-date>
<volume>9</volume>
<numero>4</numero>
<fpage>89</fpage>
<lpage>103</lpage>
<copyright-statement/>
<copyright-year/>
<self-uri xlink:href="http://scielo.sld.cu/scielo.php?script=sci_arttext&amp;pid=S2227-18992015000400007&amp;lng=en&amp;nrm=iso"></self-uri><self-uri xlink:href="http://scielo.sld.cu/scielo.php?script=sci_abstract&amp;pid=S2227-18992015000400007&amp;lng=en&amp;nrm=iso"></self-uri><self-uri xlink:href="http://scielo.sld.cu/scielo.php?script=sci_pdf&amp;pid=S2227-18992015000400007&amp;lng=en&amp;nrm=iso"></self-uri><abstract abstract-type="short" xml:lang="es"><p><![CDATA[Durante los procesos de extracción, transformación y carga es de vital importancia mantener actualizado el almacén y los mercados de datos. En la práctica, varias son las técnicas existentes que se pueden emplear para capturar los cambios en los datos. Aunque desde el punto de vista teórico han sido estudiadas estas técnicas, en la práctica no se visualiza de manera organizada su empleo. Por tanto es necesario caracterizarlas, compararlas y seleccionar la más adecuada. Teniendo en cuenta los aspectos simplicidad, tipos de fuentes en las que se puede utilizar, operaciones que detecta y la no pérdida de información, se eligió la basada en snapshot como la más apropiada. Además se propuso un conjunto de pasos a seguir para ser aplicados ante una problemática real, sugiriéndose el uso de pasos pertenecientes a la herramienta de integración de datos Pentaho Data Integration.]]></p></abstract>
<abstract abstract-type="short" xml:lang="en"><p><![CDATA[During the extraction, transformation and loading processes it is critical to keep updated the data warehouse and data marts. In practice, several techniques that can be used to capture changes in the data are available. Although from the theoretical point of view these techniques have been studied, in practice its form of use is not visualized in an organized way. Therefore, it is necessary to characterize, compare them and select the most appropriated. Given the simplicity aspects, types of sources that can be used, operations it can detect and no loss of information, it was chosen the technique based on snapshot as the most appropriated. In addition a set of steps was proposed to follow for application to a real problem, suggesting the use of steps belonging to the data integration tool Pentaho Data Integration.]]></p></abstract>
<kwd-group>
<kwd lng="es"><![CDATA[almacén de datos]]></kwd>
<kwd lng="es"><![CDATA[mercados de datos]]></kwd>
<kwd lng="es"><![CDATA[ETL]]></kwd>
<kwd lng="es"><![CDATA[snapshot]]></kwd>
<kwd lng="es"><![CDATA[técnicas de CDC]]></kwd>
<kwd lng="en"><![CDATA[CDC techniques]]></kwd>
<kwd lng="en"><![CDATA[data marts]]></kwd>
<kwd lng="en"><![CDATA[data warehouse]]></kwd>
<kwd lng="en"><![CDATA[ETL]]></kwd>
<kwd lng="en"><![CDATA[snapshot]]></kwd>
</kwd-group>
</article-meta>
</front><body><![CDATA[ <p align="right"><font face="Verdana, Arial, Helvetica, sans-serif" size="2"><B>ART&Iacute;CULO  ORIGINAL</B></font></p>     <p>&nbsp;</p>     <p><font size="4"><strong><font face="Verdana, Arial, Helvetica, sans-serif">T&eacute;cnicas  para capturar cambios en los datos y mantener actualizado un almac&eacute;n de datos</font></strong></font></p>     <p>&nbsp;</p>     <p><font size="3" face="Verdana, Arial, Helvetica, sans-serif"><strong>Techniques to capture  changes in data and keep updated a data warehouse</strong></font></p>     <p>&nbsp;</p>     <p>&nbsp;</p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Lisandra D&iacute;az-De-la-Paz<strong><strong><sup>1*</sup></strong></strong>, Juan Luis  Garc&iacute;a-Mendoza<strong><strong><sup>1</sup></strong></strong>, Beatriz Eugenia L&oacute;pez-Porrero<strong><strong><sup>1</sup></strong></strong>, Luisa Manuela  Gonz&aacute;lez-Gonz&aacute;lez<strong><strong><sup>1</sup></strong></strong>, Wilfried Lemahieu<strong><strong><sup>2    <br>   </sup></strong></strong></strong>     <br>   <sup>1</sup> Universidad  Central &ldquo;Marta Abreu&rdquo; de Las Villas. Carretera a Camajuan&iacute; km 5&frac12;. Santa Clara,  Villa Clara, Cuba. {jgarcias, blopez, luisagon}@uclv.edu.cu.     ]]></body>
<body><![CDATA[<br>   <sup>2</sup> Department of Decision  Sciences and Information Management, Katholieke Universiteit Leuven,  Naamsestraat 69, B-3000 Leuven, Belgium. <a href="mailto:Wilfried.Lemahieu@econ.kuleuven.be">Wilfried.Lemahieu@econ.kuleuven.be</a></font></p>     <P><font size="2" face="Verdana, Arial, Helvetica, sans-serif">    <br>   * Autor  para correspondencia: <a href="mailto:ldp@uclv.edu.cu">ldp@uclv.edu.cu</a></font><font size="2"></font></p>     <p>&nbsp;</p>     <p>&nbsp;</p> <hr>     <P><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>RESUMEN</b> </font>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Durante los procesos de  extracci&oacute;n, transformaci&oacute;n y carga es de vital importancia mantener actualizado  el almac&eacute;n y los mercados de datos. En la pr&aacute;ctica, varias son las t&eacute;cnicas  existentes que se pueden emplear para capturar los cambios en los datos. Aunque  desde el punto de vista te&oacute;rico han sido estudiadas estas t&eacute;cnicas, en la pr&aacute;ctica  no se visualiza de manera organizada su empleo. Por tanto es necesario caracterizarlas,  compararlas y seleccionar la m&aacute;s adecuada. Teniendo en cuenta los aspectos  simplicidad, tipos de fuentes en las que se puede utilizar, operaciones que  detecta y la no p&eacute;rdida de informaci&oacute;n, se eligi&oacute; la basada en <em>snapshot</em> como la m&aacute;s apropiada. Adem&aacute;s se  propuso un conjunto de pasos a seguir para ser aplicados ante una problem&aacute;tica  real, sugiri&eacute;ndose el uso de pasos pertenecientes a la herramienta de  integraci&oacute;n de datos <em>Pentaho Data  Integration</em>.    <br>       <br>   <strong>Palabras clave:</strong> almac&eacute;n de datos, mercados de datos, ETL, <em>snapshot</em>, t&eacute;cnicas de CDC. </font></p> <hr>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><span lang=EN-GB>ABSTRACT</span></b> </font></p>     ]]></body>
<body><![CDATA[<p><font face="Verdana, Arial, Helvetica, sans-serif"><font size="2">During the extraction,  transformation and loading processes it is critical to keep updated the data warehouse  and data marts. In practice, several techniques that can be used to capture  changes in the data are available. Although from the theoretical point of view  these techniques have been studied, in practice its form of use is not  visualized in an organized way. Therefore, it is necessary to characterize,  compare them and select the most appropriated. Given the simplicity aspects,  types of sources that can be used, operations it can detect and no loss of  information, it was chosen the technique based on snapshot as the most  appropriated. In addition a set of steps was proposed to follow for application  to a real problem, suggesting the use of steps belonging to the data  integration tool Pentaho Data Integration.    <br>       <br>   <strong>Keywords:</strong>CDC techniques,data marts, data warehouse, ETL, snapshot.</font><font size="2"></font></font></p> <hr>     <p>&nbsp;</p>     <p>&nbsp;</p>     <p><font size="3" face="Verdana, Arial, Helvetica, sans-serif"><b>INTRODUCCI&Oacute;N</b></font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Hoy en d&iacute;a, los procesos de extracci&oacute;n, transformaci&oacute;n y carga (ETL, por  sus siglas en ingl&eacute;s) son el centro de cualquier almac&eacute;n de datos (J&ouml;rg and Dessloch,  2008; J&ouml;rg andDessloch,  200; Kimball and  Caserta, 2004; Kimball and Ross,  2002) y  reciben una atenci&oacute;n considerable en el mercado de integraci&oacute;n de datos (J&ouml;rg and Dessloch,  2009). El  70% de los recursos necesarios para la implementaci&oacute;n y mantenimiento de un almac&eacute;n  de datos [acr&oacute;nimo del ingl&eacute;s <em>Data  Warehouse</em> (DWH)] son t&iacute;picamente consumidos por estos procesos (Kimball ad Caserta, 2004).    <br>       <br>   Los procesos ETL requieren las habilidades de analistas de empresas,  dise&ntilde;adores de bases de datos, desarrolladores de aplicaciones y no son eventos  &uacute;nicos. Como los datos de las fuentes se modifican, el DWH debe actualizarse  peri&oacute;dicamente. Adem&aacute;s, como el negocio cambia, las necesidades del DWH tambi&eacute;n  suelen cambiar. Los procesos ETL deben ser dise&ntilde;ados para que sean f&aacute;ciles de  modificar; adem&aacute;s, un proceso ETL s&oacute;lido, bien dise&ntilde;ado y documentado es  necesario para el &eacute;xito de un proyecto de DWH (El-Sappagh et al., 2011).     <br> Seg&uacute;n Vassiliadis (2009), las  funcionalidades de los procesos ETL pueden estar resumidas en las siguientes  tareas prominentes:</font></p> <ul type="disc">       ]]></body>
<body><![CDATA[<li><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Extraer los datos apropiados de las fuentes de       datos.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Transportarlos para un &aacute;rea de preparaci&oacute;n de los       datos [acr&oacute;nimo del ingl&eacute;s <em>Data       Staging Area</em> (DSA)] donde estos ser&aacute;n procesados.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Transformar los datos fuentes y el c&aacute;lculo de los       valores nuevos (y, posiblemente los registros) con el prop&oacute;sito de       obedecer la estructura de la relaci&oacute;n del DWH para el cual son dirigidos. </font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Aislar y limpiar los registros problem&aacute;ticos, para       garantizar que las reglas de negocio y las restricciones de la BD sean       respetadas.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Cargar los datos limpios y transformados para la       relaci&oacute;n apropiada en el DWH.</font></li>     </ul>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Kimball and Caserta (2004) crean 38  subsistemas para a&ntilde;adir estructura a las diversas tareas que son parte de un  proceso ETL y son requisitos magn&iacute;ficos para validar cualquier soluci&oacute;n ETL  implementada mediante un software de integraci&oacute;n de datos. Luego, Kimball et al. (2008) reestructuran los  subsistemas y los reducen finalmente a 34.     <br>       <br> El presente trabajo tiene como objetivos: caracterizar las t&eacute;cnicas de  captura de cambios en los datos [acr&oacute;nimo del ingl&eacute;s <em>Change Data Capture</em> (CDC)], compararlas y seleccionar la m&aacute;s  apropiada al implementar los procesos ETL para proponer un conjunto de pasos que  se deben seguir al aplicarse en un problema real. </font></p>     <p>&nbsp;</p>     ]]></body>
<body><![CDATA[<p><font face="Verdana, Arial, Helvetica, sans-serif"><strong><font size="3">MATERIALES Y M&Eacute;TODOS </font></strong></font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Durante los procesos ETL, los datos son extra&iacute;dos de m&uacute;ltiples y  heterog&eacute;neas fuentes como: bases de datos de Procesamiento de Transacciones en  L&iacute;nea [acr&oacute;nimo del ingl&eacute;s OnLine  Transaction Processing (OLTP)], archivos de texto, sistemas legados, hojas  de c&aacute;lculo, entre otras. Luego estos se transforman y limpian con el objetivo  de ajustarlos al dise&ntilde;o del DWH con la mayor calidad posible y por &uacute;ltimo se  cargan en dicho DWH, donde quedan accesibles para las aplicaciones de  inteligencia de negocios (Berson and Smith,  1997, El-Sappagh et al.,  2011).     <br>       <br>   <strong>Proceso de extracci&oacute;n</strong>    <br>       <br>   El primer paso en cualquier proceso ETL es la extracci&oacute;n de los datos (El-Sappagh et al., 2011), los cuales poseen distintas caracter&iacute;sticas que necesitan ser manejadas  por el proceso ETL para lograr una extracci&oacute;n eficaz. Durante este proceso, el  equipo de desarrollo debe estar al tanto de los drivers ODBC\JDBC utilizados  para conectarse a las bases de datos, la estructura de los datos y c&oacute;mo manejar  las fuentes con naturaleza heterog&eacute;nea. La extracci&oacute;n es la parte m&aacute;s dif&iacute;cil  de la actualizaci&oacute;n del DWH, esto es debido a dos hechos: primero, el software  de extracci&oacute;n debe provocar afectaciones m&iacute;nimas en los sistemas fuentes  durante la corrida y en segundo lugar, el software de extracci&oacute;n debe ser  instalado en el lado fuente con un m&iacute;nimo efecto en la configuraci&oacute;n del  software de la fuente (Vassiliadis, 2009). En este proceso los datos son extra&iacute;dos de sus fuentes y propagados para  el DSA (Kimball et al., 1998, Castellanos et al., 2009) y est&aacute; dividido en dos fases: la inicial y la incremental (Kimball et al., 1998; El-Sappagh et al., 2011; Yuan et al., 2011).     <br>       <br>   <a><strong>Extracci&oacute;n inicial</strong></a>     <br>       <br>   En la extracci&oacute;n inicial, se obtienen por primera vez los datos de sus  diferentes fuentes para ser cargados dentro del DWH. Este proceso se hace solo  una vez despu&eacute;s de construir el DWH para poblarlo con un gran volumen de datos (Kimball et al., 1998; El-Sappagh et al., 2011). La captura de cambios en los datos en sus fuentes no tiene importancia  porque en la mayor&iacute;a de los casos se extrae la fuente de datos entera (Kimball and Caserta, 2004).     ]]></body>
<body><![CDATA[<br>       <br>   <a><strong>Extracci&oacute;n incremental</strong></a>     <br>       <br>   La aproximaci&oacute;n m&aacute;s sencilla para la actualizaci&oacute;n del DWH es llamada full reloading, que consiste en volver a  correr el proceso ETL de carga inicial (J&ouml;rg and Dessloch,  2009, J&ouml;rg and Dessloch,  2010). De  este modo, los cambios requeridos para la actualizaci&oacute;n del DWH pueden ser  recuperados. Esta aproximaci&oacute;n es ineficiente porque frecuentemente solo una  fracci&oacute;n peque&ntilde;a de los datos fuentes cambia durante los ciclos de carga, y  solo se necesita capturar estos cambios y propagarlos para el DWH. Adem&aacute;s no es  pr&aacute;ctico eliminar y volver a cargar los datos del DWH puesto que los datos  hist&oacute;ricos tienen que ser mantenidos.    <br>       <br>   Otra aproximaci&oacute;n es la incremental, su prop&oacute;sito es capturar solo los  datos que cambiaron en las fuentes desde la &uacute;ltima extracci&oacute;n, lo que la hace  m&aacute;s eficaz que full reloading (J&ouml;rg and Dessloch,  2008; J&ouml;rg and Dessloch,  2009; J&ouml;rg and Dessloch,  2010). Los  procesos ETL utilizan diversas t&eacute;cnicas de CDC, las cuales constituyen el  subsistema dos de Kimball et al. (2008), para capturar los  datos modificados, a&ntilde;adidos y eliminados en las fuentes de datos desde la  &uacute;ltima extracci&oacute;n y actualizar el DWH (Ram and Do, 2000; Kimball and Caserta, 2004; Bouman and Van Dongen, 2009; Casters et al., 2010; J&ouml;rg and Dessloch, 2010; Eccles, 2013). Estos  procesos son peri&oacute;dicos coincidiendo con el ciclo de actualizaci&oacute;n del DWH y  las necesidades del negocio (El-Sappagh et al., 2011). Cada una de estas t&eacute;cnicas impone uno de dos estilos arquitect&oacute;nicos en  el subsistema CDC.     <br>       <br>   Las dos arquitecturas son: Pull CDC, la cual captura los cambios en los datos en las fuentes de datos y Push CDC, que detecta los cambios en los  datos en su ruta hacia las fuentes de datos. Las t&eacute;cnicas de CDC que imponen  arquitecturas Pull son las m&aacute;s  frecuentes, debido a la relativa facilidad con que se implementan. Las t&eacute;cnicas Push son rara vez usadas, pero tienen  la ventaja de estar en mejor posici&oacute;n para permitir la captura de los cambios  en los datos en tiempo real.     <br>       <br>   En el presente trabajo se analiza la arquitectura Pull CDC y se utiliza la clasificaci&oacute;n de Bouman and Van Dongen (2009) y Casters et al. (2010), porque adem&aacute;s de  conceptualizarlas ofrecen soluciones en la herramienta Pentaho Data Integration (PDI), la cual es considerada una de las  m&aacute;s flexibles y potentes en esta &aacute;rea de trabajo. De acuerdo con esta  clasificaci&oacute;n existen dos categor&iacute;as principales de t&eacute;cnicas de CDC: intrusivas  y poco intrusivas.     ]]></body>
<body><![CDATA[<br>       <br>       <a><strong>T&eacute;cnicas intrusivas</strong></a>     <br>           <br>   Las t&eacute;cnicas  intrusivas son aquellas que tienen un posible impacto en el desempe&ntilde;o de la  fuente donde los datos son recuperados, y por tanto, cualquier operaci&oacute;n que  requiera ejecutar sentencias SQL en una forma u otra es considerada una t&eacute;cnica  intrusiva (Bouman and Van  Dongen, 2009; Casters et al.,  2010). Dentro  de estas se destacan las basadas en: fuentes de datos, disparadores y snapshot.     <br>       <br>       <a><strong>T&eacute;cnica de CDC basada en fuentes de datos</strong></a>     <br>           <br> La t&eacute;cnica de CDC basada en fuentes de datos emplean columnas de auditor&iacute;a (Kimball and Caserta, 2004) y depende del hecho de que dichas columnas est&eacute;n disponibles en las  fuentes, de manera que permita al proceso ETL hacer una selecci&oacute;n de los  registros que cambiaron (Bouman and Van  Dongen, 2009; Casters et al.,  2010). Estos  atributos son usualmente poblados por disparadores de la base de datos y sirven  de criterio de selecci&oacute;n para capturar los cambios en los datos que ocurrieron  desde la &uacute;ltima extracci&oacute;n (J&ouml;rg and Dessloch,  2008; J&ouml;rg and Dessloch,  2009; J&ouml;rg and Dessloch,  2010). Existen  dos alternativas dentro de esta t&eacute;cnica:</font></p> <ul>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Lectura directa basada en timestamps (valores de fecha y tiempo): Al  menos un atributo de tipo timestamp se necesita para esta alternativa pero preferentemente se manejan dos: uno con  la fecha y tiempo de cuando se cre&oacute; el registro y otro cuando fue modificado  por &uacute;ltima vez.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Secuencias de la base de datos:  La mayor&iacute;a de las bases de datos tienen alg&uacute;n tipo de opci&oacute;n de autoincremento  para valores num&eacute;ricos en una tabla. Cuando tal secuencia es usada, es f&aacute;cil de  identificar cu&aacute;les registros se han insertado desde la &uacute;ltima vez que se  analiz&oacute; la tabla.</font></li>     ]]></body>
<body><![CDATA[</ul>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Las alternativas anteriores  requieren tablas auxiliares en el DWH para almacenar la informaci&oacute;n referente a  la &uacute;ltima fecha en la cual los datos fueron cargados o el &uacute;ltimo n&uacute;mero  recuperado de la secuencia (Bouman and Van  Dongen, 2009; Casters et al.,  2010). Una  pr&aacute;ctica com&uacute;n es crear estas tablas ya sea en un espacio separado o en el DSA,  pero nunca en el almac&eacute;n o mercado de datos. Esta t&eacute;cnica es considerada por (Bouman and Van  Dongen, 2009; Casters et al.,  2010) la m&aacute;s  simple de implementar; sin embargo, esta simplicidad es discutida, debido a la  ausencia de algunas capacidades esenciales que pueden encontrarse en opciones  m&aacute;s avanzadas:</font></p> <ul>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Distinci&oacute;n entre inserciones y  actualizaciones: Solamente cuando la fuente de datos contiene dos timestamps, uno para inserciones y otro  para las actualizaciones, esta diferencia puede ser detectada.</font></li>       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Detecci&oacute;n de registros  eliminados: Esto no es posible, a menos que el sistema fuente s&oacute;lo borre un  registro de forma l&oacute;gica. La columna tiene una fecha de eliminaci&oacute;n pero no  est&aacute; f&iacute;sicamente borrado de la tabla.</font></li>     </ul> <ul type="disc">       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Detecci&oacute;n de m&uacute;ltiples actualizaciones: Cuando un       registro es actualizado m&uacute;ltiples veces durante el per&iacute;odo comprendido       entre las cargas inicial y actual, estas actualizaciones intermedias se       pierden durante el proceso.</font></li>     </ul> <ul type="disc">       <li><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Capacidades de tiempo real: Timestamp o extracci&oacute;n basada en secuencias de datos es       siempre una operaci&oacute;n batch y       por consiguiente inadecuado para ser usado en tiempo real. </font></li>     </ul>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>T&eacute;cnicas de CDC basada en  disparadores</strong>    ]]></body>
<body><![CDATA[<br>       <br>   Los  disparadores de una base de datos pueden usarse para desencadenar acciones ante  la ocurrencia de eventos insert, update o delete (Bouman and Van  Dongen, 2009; Casters et al.,  2010). Adem&aacute;s,  pueden utilizarse para capturar los cambios en los datos y colocar los  registros cambiados en tablas intermedias en las fuentes, para luego extraerlos  o ponerlos directamente en el DSA del DWH. Esta t&eacute;cnica no es implementada muy  a menudo porque agregar disparadores a una base de datos se proh&iacute;be por  seguridad y eficiencia. Esta t&eacute;cnica es considerada la m&aacute;s intrusiva, pero tiene  la ventaja de detectar todos los cambios en los datos, permitir cargas en  tiempo real (Bouman and Van  Dongen, 2009; Casters et al.,  2010) y  capturar los cambios en los datos a trav&eacute;s de la interfaz ODBC sin necesidad de  crear o comprar herramientas especializadas (Eccles, 2013).     <br>       <br>   Las desventajas de esta t&eacute;cnica son: la necesidad de permisos por parte de los  administradores de la base de datos [acr&oacute;nimo del ingl&eacute;s Database Administrator (DBA)] para poder modificar la fuente, la  sintaxis espec&iacute;fica de las declaraciones de los disparadores y esto conlleva a  un alto costo de procesamiento y espacio de almacenamiento adicional (Bouman and Van  Dongen, 2009; Casters et al.,  2010). Una  alternativa a utilizar los disparadores directamente en las fuentes de datos es  establecer una soluci&oacute;n de replicaci&oacute;n donde todos los cambios detectados en  las tablas seleccionadas son duplicados hacia las tablas receptoras en el lado  del DWH.     <br>       <br>   <a><strong>T&eacute;cnica  de CDC basada en snapshot</strong></a>    <br>       <br>   La t&eacute;cnica snapshot guarda una  copia exacta de cada extracci&oacute;n previa en el DSA para su uso futuro y durante  la siguiente corrida, el proceso lleva la tabla fuente entera al DSA donde se  compara con los datos cargados durante el &uacute;ltimo proceso (Kimball and Caserta, 2004). Si bien no es la t&eacute;cnica m&aacute;s eficiente, es la m&aacute;s confiable de todas las  t&eacute;cnicas incrementales de extracci&oacute;n para capturar cambios en los datos porque  hace una comparaci&oacute;n fila por fila en busca de cambios y es casi imposible la  p&eacute;rdida de datos. Adicionalmente, tiene la ventaja que las filas borradas en la  fuente de datos pueden ser detectadas. Esta t&eacute;cnica, conocida tambi&eacute;n como snapshot differential, es adem&aacute;s  apropiada para todos los tipos de fuentes de datos (J&ouml;rg and Dessloch,  2008; J&ouml;rg and Dessloch,  2009) Castellanos et al. (2009). Seg&uacute;n estos  autores, los datos extra&iacute;dos, despu&eacute;s de guardados en el snapshot actual Lnew, son  comparados contra un snapshot previo  (Lold), para discriminar inserciones,  eliminaciones y actualizaciones recientes en los registros. Esta comparaci&oacute;n es  realizada a trav&eacute;s de un operador de diferencia, [Diff (&Delta;)], que revisa en busca de  igualdad s&oacute;lo en un cierto subconjunto de atributos de los registros  (generalmente la llave primaria). Considerando A, como un conjunto de atributos  y B un subconjunto de estos se pueden encontrar los registros reci&eacute;n insertados,  mediante la expresi&oacute;n: &Delta;B (Lnew, Lold) =&nbsp; <img width="348" height="23" src="/img/revistas/rcci/v9n4/fo0107415.jpg">&nbsp;donde b1,&hellip;,bn &isin; B.     <br>       <br>   Para encontrar un registro actualizado, se considera que para cada registro  de Lnew existe un registro en Lold con los mismos valores para B y al  menos un atributo perteneciente a A con un valor diferente. (Si A=B entonces se  puede utilizar el operador de diferencia de relaciones cl&aacute;sico). Invirtiendo el  uso del operador de diferencia, se obtienen los registros borrados. El &uacute;ltimo  paso de esta fase es reemplazar la snapshot  Lold con Lnew. Varios m&eacute;todos  pueden servir para eso. Uno de ellos borra la snapshot m&aacute;s antigua y simplemente renombra Lnew como Lold (primero  una supresi&oacute;n l&oacute;gica es realizada para no afectar la carga de trabajo del  sistema, y entonces en un punto posterior inactivo, la supresi&oacute;n f&iacute;sica se  hace). Otro m&eacute;todo es actualizar Lold con los registros que cambiaron. El uso de snapshot tiene un doble prop&oacute;sito. Puede ser considerada como una soluci&oacute;n de  respaldo cuando se cometen errores o servir de DSA.    ]]></body>
<body><![CDATA[<br>       <br>   <a><strong>T&eacute;cnicas  poco intrusiva</strong></a><strong>s</strong>    <br>       <br>   Las t&eacute;cnicas poco intrusivas son  aquellas que tienen un bajo impacto en el desempe&ntilde;o de la fuente donde se  recuperan los datos.    <br>       <br>   <a><strong>T&eacute;cnica de CDC basada en archivos  log</strong></a>    <br>       <br>   La forma m&aacute;s avanzada y menos intrusiva entre las t&eacute;cnicas de CDC es usar  una soluci&oacute;n basada en archivos log;  en los cuales puede ponerse cada operaci&oacute;n de inserci&oacute;n, actualizaci&oacute;n y  eliminaci&oacute;n manejada en una base de datos (Bouman and Van  Dongen, 2009; Casters et al.,  2010). Esta  t&eacute;cnica es t&iacute;picamente utilizada en conjunto con Sistemas Gestores de Bases de  Datos (SGBD). (J&ouml;rg and Dessloch,  2008; J&ouml;rg and Dessloch,  2009).  Cuando un archivo log es vaciado,  todas las transacciones dentro de &eacute;l son irrescatables. Para evitar esto se  aconseja que el DBA cree un archivo log especial  espec&iacute;ficamente para esta t&eacute;cnica de CDC porque solo se necesitan transacciones  para algunas tablas espec&iacute;ficas de la base de datos fuente (Kimball and Caserta, 2004). Existen algunas variantes para la implementaci&oacute;n de estas t&eacute;cnicas de  CDC: log scraping o log sniffing (Kimball and Caserta, 2004). Log scraping analiza  gramaticalmente los archivos log y  recupera los cambios de inter&eacute;s (Labio and  Garc&iacute;a-Molina, 1995; Labio and  Garc&iacute;a-Molina, 1996; J&ouml;rg and Dessloch,  2008; J&ouml;rg and Dessloch,  2009; J&ouml;rg and Dessloch,  2010). Log sniffing, en contraste, recorta el  archivo log y captura los cambios muy  de prisa. Mientras estas t&eacute;cnicas tienen poco impacto en la base de datos  fuente, implican alguna latencia entre la transacci&oacute;n original y los cambios  capturados. Obviamente, esta latencia es m&aacute;s alta para el acercamiento log scraping (J&ouml;rg and Dessloch,  2010).    <br>       <br>   <a><strong>Comparaci&oacute;n entre las t&eacute;cnicas</strong></a><strong> de CDC</strong>     ]]></body>
<body><![CDATA[<br>       <br> La <a href="file:///D|/v9n4/img/t0107415.jpg" target="_blank">tabla 1</a> muestra una comparaci&oacute;n entre las t&eacute;cnicas CDC analizadas.  En la cual se puede apreciar la eficiencia de las t&eacute;cnicas basadas en archivos log y disparadores (triggers) cuando las fuentes son bases de datos. Sin  embargo las basadas en snapshot son independientes del DBMS, lo que  implica que se puede aplicar en cualquier fuente de datos, adem&aacute;s permite  distinguir entre actualizaciones e inserciones y es capaz de detectar las  eliminaciones. Por tanto la t&eacute;cnica seleccionada para ilustrar el procedimiento  de la implementaci&oacute;n de procesos ETL para mantener actualizado un DWH o mercado  de datos de manera autom&aacute;tica es la basada en snapshot. </font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Uno de los algoritmos m&aacute;s usados para la implementaci&oacute;n de esta t&eacute;cnica es  el <em>MergeSort </em>(Labio and  Garc&iacute;a-Molina, 1996). Su idea general es tomar dos <em>snapshots</em>, <em>F1</em> y <em>F2</em>, compararlos y devolver uno nuevo, denominado <em>Fout</em>.     <br>       <br> La herramienta PDI en el paso <em>Merge  rows (diff)</em> utiliza un algoritmo similar al <em>MergeSort</em>. Este paso toma dos conjuntos ordenados de entrada y los  compara en las llaves especificadas (K). Las columnas a ser comparadas pueden  ser seleccionadas (<em>B</em>) y debe  especificarse un nombre para el campo que contiene la bandera de salida la cual  puede tomar uno de los siguientes valores: <em>identical</em>, <em>new</em>, <em>changed</em> o <em>deleted </em>(Casters et al.,  2010).     <br>     <br> <a></a><a><strong>Proceso de transformaci&oacute;n</strong></a>     <br>     <br> El segundo  paso en cualquier proceso ETL es la transformaci&oacute;n de los datos (Vassiliadis, 2009). Este paso realiza la limpieza y conformaci&oacute;n de los datos entrantes para  obtener datos precisos, correctos, completos, coherentes, y no ambiguos.  Tambi&eacute;n incluye depuraci&oacute;n de datos, su transformaci&oacute;n e integraci&oacute;n.    <br>     ]]></body>
<body><![CDATA[<br> La limpieza es la correcci&oacute;n en los datos de posibles errores, por ejemplo:  datos incompletos, duplicados, formatos inconsistentes en cuanto a descripci&oacute;n,  abreviaturas y unidades de medidas, falta de datos de entrada o que violen las  restricciones de integridad del sistema. Esta etapa es una de las m&aacute;s  importantes, ya que garantiza la calidad de los datos en el DWH y en ella se  deben corregir las anomal&iacute;as que se detecten en el proceso de integraci&oacute;n de  los datos. La calidad de los datos es un t&eacute;rmino que abarca el estado de los  datos, as&iacute; como el conjunto de procesos para lograrla. Cuando la informaci&oacute;n se encuentra limpia y con calidad, &eacute;sta es unificada,  conformada y normalizada. Los indicadores son calculados de una forma racional,  lo mismo que los atributos de las dimensiones, para que est&eacute;n unificados y en  todos los sitios donde aparezcan tengan la misma estructura y el mismo significado  (Kimball and Caserta, 2004; D&iacute;az et al., 2013).     <br>     <br> <a></a><a></a><a><strong>Proceso de carga</strong></a>     <br>     <br> La carga de  los datos para la estructura dimensional seleccionada es el paso final del  proceso ETL (Vassiliadis, 2009). En este paso, los datos extra&iacute;dos y transformados son escritos en las  estructuras dimensionales a las que acceden los usuarios finales y aplicaciones  de software. El paso de carga incluye las tablas de dimensiones y las de  hechos.     <br>     <br> <a></a><a></a><a><strong>Carga inicial</strong></a>     <br>     <br> En la carga  inicial, los datos extra&iacute;dos y transformados de las fuentes de datos son  cargados en el DWH (J&ouml;rg and Dessloch,  2009). <a>Este proceso no es complejo de implementar porque el DWH  debe estar vac&iacute;o.</a>     <br>     ]]></body>
<body><![CDATA[<br> <a></a><a></a><a><strong>Carga incremental</strong></a>     <br>     <br> Los procesos ETL dise&ntilde;ados para implementar la carga incremental utilizan  las t&eacute;cnicas de CDC para capturar los cambios en las fuentes de datos (J&ouml;rg and Dessloch,  2008).  Durante la misma es necesario tener en cuenta el manejo de las dimensiones  lentamente cambiantes [acr&oacute;nimo del ingl&eacute;s <em>Slowly  Changing Dimension</em> (SCD)] que se corresponde con el subsistema nueve de los  propuestos por (Kimball and Caserta, 2004; J&ouml;rg and Dessloch, 2008).    <br>     <br> Las dimensiones SCD pueden cambiar de manera ocasional o constante, siendo  de gran importancia el registro de los cambios hist&oacute;ricos realizados para  mantener la veracidad de la informaci&oacute;n cargada en el DWH (Tellez et al., 2012). Existen varios tipos de SCD, los m&aacute;s conocidos, estudiados y frecuentes  son los tipos 1, 2 y 3 propuestos por (Kimball and Caserta, 2004; Tellez et al., 2012), sin embargo (Ross, 2013) corrobora el uso de los tipos 0, 4, 5, 6 y 7.</font></p>     <p>&nbsp;</p>     <p><font face="Verdana, Arial, Helvetica, sans-serif" size="3"><B>RESULTADOS Y DISCUSI&Oacute;N </B></font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Los procesos de extracci&oacute;n, transformaci&oacute;n y carga comprenden varios  aspectos que son determinantes en el proyecto de inteligencia de negocio, por lo  que para su dise&ntilde;o e implementaci&oacute;n se propone seguir un conjunto de pasos para  su correcto desarrollo (Villarreal, 2013) usando la  t&eacute;cnica CDC basada en <em>snapshot</em>.     <br>       <br>   <a><strong>Paso 1: Extracci&oacute;n inicial</strong></a><strong>.</strong>    ]]></body>
<body><![CDATA[<br>       <br>  El dise&ntilde;o para implementar la extracci&oacute;n inicial se divide en dos fases (ver  <a href="#f01">figura 1</a>): en la primera, se extraen los datos desde las fuentes de datos hacia  el DSA y en la segunda, se extraen los datos del DSA para su utilizaci&oacute;n por  parte del paso de transformaci&oacute;n (Mundy, 2008).</font></p>     <p align="center"><img src="/img/revistas/rcci/v9n4/f0107415.jpg" alt="f01" width="397" height="145"><a name="f01"></a></p>     <p><font size="2"><a><strong><font face="Verdana, Arial, Helvetica, sans-serif">Paso 2: Extracci&oacute;n incremental</font></strong></a><font face="Verdana, Arial, Helvetica, sans-serif"><strong>.</strong>    <br>       <br> <a>La extracci&oacute;n incremental debe tener en  cuenta los datos extra&iacute;dos de las fuentes y los datos del DSA para luego compararlos  mediante el paso <em>Merge Rows (diff)</em>,  como se muestra</a> en la <a href="#f02">figura 2</a>.</font></font></p>     <p align="center"><img src="/img/revistas/rcci/v9n4/f0207415.jpg" alt="f02" width="428" height="149"><a name="f02"></a></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><a></a><a></a><a><strong>Paso 3: Transformaci&oacute;n</strong></a><strong>.</strong>    <br>       <br> En el paso de  transformaci&oacute;n se realiza la limpieza y conformaci&oacute;n de los datos. Para ello es  necesario realizar un an&aacute;lisis profundo de las fuentes y aplicar  transformaciones a cada inconsistencia detectada. Esto es, la ejecuci&oacute;n del  paso de transformaci&oacute;n ya sea por la ejecuci&oacute;n del flujo de trabajo de ETL para  la carga o por la ejecuci&oacute;n de las consultas sobre las fuentes. En la <a href="/img/revistas/rcci/v9n4/t0207415.jpg" target="_blank">tabla 2</a>  se muestran algunas de las anomal&iacute;as m&aacute;s frecuentes, se proponen posibles  soluciones y se sugieren pasos de la herramienta de integraci&oacute;n de datos PDI  para su implementaci&oacute;n.</font></p>     ]]></body>
<body><![CDATA[<p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><a></a><a></a><a><strong>Paso 4: Carga inicial.</strong></a>     <br>       <br> <a>La implementaci&oacute;n de los procesos ETL para poblar un DWH se basa en lo  planteado en </a>el paso 2 y 3 como se aprecia en la  <a href="#f03">figura 3</a>.</font></p>     <p align="center"><img src="/img/revistas/rcci/v9n4/f0307415.jpg" alt="f03" width="507" height="160"><a name="f03"></a></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><a>En los procesos ETL dise&ntilde;ados para  poblar un DWH, se recomienda utilizar los pasos del software PDI <em>Combination Lookup/Update</em> y <em>Dimension Lookup/Update </em>en las tablas de  dimensiones e <em>Insert/Update</em> para las  tablas de hechos.</a> Como se aprecia en la <a href="#f03">figura 3</a>,  primero se implementan las transformaciones que extraen los datos de sus  fuentes hacia el DSA. Luego se implementan las transformaciones que realizan la  extracci&oacute;n de los datos del DSA, su limpieza y homogeneizaci&oacute;n y la carga  dentro del mercado de datos. En la <a href="#f04">figura 4</a> se ilustra la transformaci&oacute;n <em>inicial_dim_tiempo</em> correspondiente al  caso de estudio del mercado de datos Recursos Humanos de la UCLV (Garc&iacute;a, 2014; Mas&oacute; and Castell&oacute;n, 2013) para poblar la tabla de dimensiones Tiempo, que junto a otras, suelen ser  orquestadas mediante la implementaci&oacute;n de trabajos.</font></p>     <p align="center"><img src="/img/revistas/rcci/v9n4/f0407415.jpg" alt="f04" width="523" height="193"><a name="f04"></a></p>     <p><font face="Verdana, Arial, Helvetica, sans-serif"><strong><font size="2">Paso 5: Carga incremental.</font></strong><font size="2">    <br>       <br> El dise&ntilde;o de los procesos ETL encargados de realizar la carga incremental  hacia el DWH es m&aacute;s complejo porque se debe tener en cuenta los tipos de SCD,  como se muestra en la <a href="#f05">figura 5</a>. Los procesos ETL dise&ntilde;ados para realizar la  carga incremental hacia el DWH utilizan los pasos del software PDI <em>Combination Lookup/Update</em>, <em>Dimension Lookup/Update</em> y <em>Update</em> para el tratamiento de los tipos  de SCD.</font></font></p>     <p align="center"><img src="/img/revistas/rcci/v9n4/f0507415.jpg" alt="f05" width="422" height="267"><a name="f05"></a></p>     ]]></body>
<body><![CDATA[<p align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">En la <a href="/img/revistas/rcci/v9n4/f0607415.jpg" target="_blank">figura 6</a> se muestra la transformaci&oacute;n <em>incremental_dim_persona</em> correspondiente a la tabla de dimensiones  Persona perteneciente al mercado de datos Recursos Humanos de la UCLV (Garc&iacute;a, 2014, Mas&oacute; and Castell&oacute;n, 2013). En esta transformaci&oacute;n se  utilizan los pasos <em>Dimension  Lookup/Update</em> para manejar los atributos SCD Tipo 2, <em>Insert/Update</em> para actualizar el DSA y <em>Synchronize after Merge</em> para realizar un borrado f&iacute;sico del DSA.  Adem&aacute;s, vale destacar el uso de subtransformaciones en los pasos nombrados <em>Insert</em> y <em>Update</em></font><font face="Verdana, Arial, Helvetica, sans-serif"><em></em></font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">La <a href="/img/revistas/rcci/v9n4/f0707415.jpg" target="_blank">figura 7</a>  muestra la implementaci&oacute;n de una de las sub-transformaciones implementadas en  dicho caso de estudio denominada <em>subtransformaci&oacute;n_dim_persona</em>.</font></p>     <p><font face="Verdana, Arial, Helvetica, sans-serif"><a><strong><font size="2">1.6 Comparaci&oacute;n entre las  t&eacute;cnicas full reloading y basada en snapshot.    <br> </font></strong></a><font size="2">     <br> Con el objetivo  de evaluar el rendimiento de las t&eacute;cnicas <em>full  reloading</em> y basada en <em>snapshot,</em> se realiza una comparaci&oacute;n en cuanto a duraci&oacute;n entre las transformaciones <em>inicial_dim_persona</em> (<em>full reloading</em>) e <em>incremental_dim_persona</em> (basada en <em>snapshot</em>) ejecutadas para capturar cambios en los datos luego de la  carga inicial. En la <a href="#f08">figura 8</a> se aprecia como la duraci&oacute;n de la t&eacute;cnica basada  en <em>snapshot</em> muestra una reducci&oacute;n  significativa con respecto a <em>full  reloading</em>. Esta diferencia puede aumentar en la medida que aumenten los  registros de las fuentes utilizadas. Los beneficios de la t&eacute;cnica basada en <em>snapshot</em> comparada con <em>full reloading</em> son dobles: primero, el  volumen de datos cambiados en las fuentes es muy peque&ntilde;o comparado con el  volumen global y por otra parte, la mayor&iacute;a de los datos dentro del DWH  permanecen ilesos durante la carga incremental, ya que los cambios son s&oacute;lo  aplicados donde son necesarios. </font></font></p>     <p align="center"><img src="/img/revistas/rcci/v9n4/f0807415.jpg" alt="f08" width="562" height="170"><a name="f08"></a></p>     <p align="left">&nbsp;</p>     <p><font face="Verdana, Arial, Helvetica, sans-serif" size="3"><B>CONCLUSIONES</B></font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Los procesos ETL son el centro del almac&eacute;n de datos y su calidad es de  importancia significativa para la exactitud, operatividad y usabilidad. Por  razones de eficiencia los DWH son t&iacute;picamente actualizados de forma  incremental, es decir, los cambios son capturados en las fuentes y propagados  para el DWH regularmente. Es por ello, que se considera de importancia vital  las t&eacute;cnicas de CDC. En el presente trabajo, dichas t&eacute;cnicas se caracterizan de  acuerdo con la clasificaci&oacute;n de intrusivas y poco intrusivas, se comparan y se  selecciona como la m&aacute;s apropiada para implementar los procesos ETL la basada en <em>snapshot. </em>&nbsp;La t&eacute;cnica escogida permite realizar una  comparaci&oacute;n fila a fila evitando la p&eacute;rdida de informaci&oacute;n, se puede aplicar a  cualquier tipo de fuente de datos, distingue entre inserciones y  actualizaciones y detecta las eliminaciones. Adem&aacute;s se propone un conjunto de  pasos a seguir para aplicar dicha t&eacute;cnica a un problema real. &nbsp;No obstante, a la simplicidad te&oacute;rica que  presenta el <em>snapshot</em>, la extracci&oacute;n  de los datos contin&uacute;a siendo un problema dif&iacute;cil debido mayormente a la  naturaleza heterog&eacute;nea de las fuentes, lo cual afecta al rendimiento de la  integraci&oacute;n de los datos y plantea campos de investigaci&oacute;n abiertos.</font></p>     <p>&nbsp;</p>     ]]></body>
<body><![CDATA[<p align="left"><font face="Verdana, Arial, Helvetica, sans-serif" size="3"><B>REFERENCIAS    BIBLIOGR&Aacute;FICAS</B></font>     <!-- ref --><p><font size="2"><a><font face="Verdana, Arial, Helvetica, sans-serif">BERSON, A. &amp;  SMITH, S. J. 1997. <em>Data Warehousing, Data  Mining, and OLAP</em>, McGraw-Hill, Inc.    </font></a> <font face="Verdana, Arial, Helvetica, sans-serif">    <br>       <!-- ref --><br>     <a>BOUMAN, R.  &amp; VAN DONGEN, J. 2009. </a><em>Pentaho  Solutions: Business Intelligence and Data Warehousing with Pentaho and MySQL, </em>Indianapolis,  Indiana, Wiley Publishing,     Inc.     <br>         <!-- ref --><br>     <a>CASTELLANOS, M.,  SIMITSIS, A., WILKINSON, K. &amp; DAYAL, U. 2009. Automating the Loading of  Business Process Data Warehouses. <em>Proceedings  of the 12th International Conference on Extending Database Technology: Advances  in Database Technology.</em> ACM.    </a>     <br>         ]]></body>
<body><![CDATA[<!-- ref --><br>     <a>CASTERS, M., BOUMAN,  R. &amp; VAN DONGEN, J. 2010. <em>Pentaho  Kettle Solutions: Building Open Source ETL Solutions with Pentaho Data  Integration, </em>Indianapolis, Indiana, Wiley Publishing,     Inc.</a>     <br>         <br>     <a>D&Iacute;AZ, L.,  L&Oacute;PEZ, B., GONZ&Aacute;LEZ, L., GALINDO, Y. &amp; L&Oacute;PEZ, D. 2013. Integraci&oacute;n de  Datos. &ldquo;Universidad Central &ldquo;Marta Abreu&rdquo; de las Villas&rdquo;.</a>     <br>         <!-- ref --><br>     <a>ECCLES, M. J. 2013. <em>Pragmatic Development of Service Based  Real-Time Change Data Capture.</em> </a>Aston University.    <br>         <!-- ref --><br>     <a>EL-SAPPAGH,  S. H. A., HENDAWI, A. M. A. &amp; EL BASTAWISSY, A. H. 2011. </a>A proposed  model for data warehouse ETL processes. <em>Journal  of King Saud University-Computer and Information Sciences,</em> 23<strong>,</strong> 91-104.    <br>         <br>     <a>GARC&Iacute;A, J.  L. 2014. <em>Automatizaci&oacute;n de los procesos  de carga en el mercado de datos Recursos Humanos de la UCLV.</em> Universidad  Central &ldquo;Marta Abreu&rdquo; de Las Villas.</a>     ]]></body>
<body><![CDATA[<br>         <!-- ref --><br>     <a>J&Ouml;RG, T.  &amp; DESSLOCH, S. 2008. </a>Towards generating ETL processes for  incremental loading. <em>In:</em> DESAI, B. C.  (ed.) <em>Proceedings of the 2008  international symposium on Database engineering &amp; applications.</em> Coimbra  [Portugal]: ACM.    <br>         <!-- ref --><br>     <a>J&Ouml;RG, T. &amp;  DESSLOCH, S. 2009. Formalizing ETL Jobs for Incremental Loading of Data  Warehouses.    </a>     <br>         <!-- ref --><br>     <a>J&Ouml;RG, T. &amp;  DESSLOCH, S. 2010. Near Real-Time Data Warehousing Using State-of-the-Art ETL  Tools. <em>Enabling Real-Time Business  Intelligence, Lecture Notes in Business Information Processing.</em> Springer-Verlag Heidelberg.    </a>     <br>         <!-- ref --><br>     <a>KIMBALL, R. &amp;  CASERTA, J. 2004. <em>The Data Warehouse ETL  Toolkit, </em>Indianapolis, Indiana, Wiley Publishing,     Inc.</a>     <br>         <br>     <a>KIMBALL, R., REEVES,  L., ROSS, M. &amp; THORNTHWAITE, W. 1998. <em>The  Data Warehouse Lifecycle Toolkit: Expert Methods for Designing, Developing, and  Deploying Data Warehouses, </em>Indianapolis, Indiana, Wiley Publishing, Inc.</a>     <br>         <!-- ref --><br>     <a>KIMBALL, R. &amp;  ROSS, M. 2002. <em>The Data Warehouse  Toolkit: The Complete Guide to Dimensional Modeling, </em>New York, John Wiley  and Sons,     Inc.</a>     <br>         <br>     <a>KIMBALL, R., ROSS,  M., THORTHWAITE, W., BECKER, B. &amp; MUNDY, J. 2008. <em>The Data Warehouse Lifecycle Toolkit</em>, John Wiley &amp; Sons.</a>     <br>         <!-- ref --><br>     <a>LABIO, W. J. &amp;  GARC&Iacute;A-MOLINA, H. 1995. Comparing very large database snapshots. Stanford  University.    </a>     <br>         <br>     <a>LABIO, W. J. &amp;  GARC&Iacute;A-MOLINA, H. 1996. Efficient Snapshot Differential Algorithms for Data  Warehousing. </a><em>Proceedings of VLDB &rsquo;96.</em>    <br>         <br>     <a>MAS&Oacute;, A.  &amp; CASTELL&Oacute;N, Y. 2013. <em>Mercado de  datos en apoyo a la toma de decisiones sobre el personal docente e  investigativo en el departamento de Recursos Humanos de la UCLV.</em>    <br> </a>Universidad  Central &ldquo;Marta Abreu&rdquo; de Las Villas.     <br>     <br>     <a>MUNDY, J. 2008.  Design Tip #99 Staging Areas and ETL Tools. Available: </a>http://www.kimballgroup.com/2008/03/04/design-tip-99-staging-areas-and-etl-tools/ .     <br>         <!-- ref --><br>     <a>RAM, P. &amp; DO, L.  2000. Extracting Delta for Incremental Data Warehouse Maintenance. <em>Proceedings. 16th International Conference  on Data Engineering (ICDE).</em> IEEE.    </a>     <br>         <br>     <a>ROSS, M. 2013.  Design Tip #152 Slowly Changing Dimension Types 0, 4, 5, 6 and 7. </a>Available: http://www.kimballgroup.com/2013/02/05/design-tip-152-slowlychanging-dimension-types-0-4-5-6-7/ .     <br>         <!-- ref --><br>     <a>TELLEZ,  Y., MEDINA, D. &amp; TORRES, R. E. 2012. Propuesta para la Implementaci&oacute;n de  las Dimensiones Lentamente Cambiantes con Pentaho Data Integration.    </a>     <br>         <br>     <a>VASSILIADIS, P.  2009. A survey of Extract&ndash;transform&ndash;Load technology. </a><em>International Journal of Data  Warehousing &amp; Mining,</em> 5<strong>,</strong> 1-27.     <br>         <!-- ref --><br>     <a>VILLARREAL,  R. X. 2013. <em>Estudio de metodolog&iacute;as de  Data Warehouse para la implementaci&oacute;n de repositorios de informaci&oacute;n para la  toma de decisiones gerenciales.</em>, Universidad T&eacute;cnica del Norte.    </a>     <br>         <!-- ref --><br>     <a>YUAN, G.,  LI, B. &amp; XIAO, T. 2011. </a>Improvement of Snapshot Differential  Algorithm Based on Hadoop Platform. <em>Cross  Strait Quad-Regional Radio Science and Wireless Technology Conference (CSQRWC).</em> IEEE.      </font></font></p>     <p name="_ENREF_1">&nbsp;</p>     <p name="_ENREF_1">&nbsp;</p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Recibido: 28/08/2014     <br> Aceptado: 22/06/2015 </font></p>      ]]></body><back>
<ref-list>
<ref id="B1">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[BERSON]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
<name>
<surname><![CDATA[SMITH]]></surname>
<given-names><![CDATA[S. J]]></given-names>
</name>
</person-group>
<source><![CDATA[Data Warehousing, Data Mining, and OLAP, McGraw-Hill, Inc]]></source>
<year>1997</year>
</nlm-citation>
</ref>
<ref id="B2">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[BOUMAN]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
<name>
<surname><![CDATA[VAN DONGEN]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
</person-group>
<source><![CDATA[Pentaho Solutions: Business Intelligence and Data Warehousing with Pentaho and MySQL]]></source>
<year>2009</year>
<publisher-loc><![CDATA[Indianapolis^eIndiana Indiana]]></publisher-loc>
<publisher-name><![CDATA[Wiley Publishing]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B3">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[CASTELLANOS]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[SIMITSIS]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
<name>
<surname><![CDATA[WILKINSON]]></surname>
<given-names><![CDATA[K]]></given-names>
</name>
<name>
<surname><![CDATA[DAYAL]]></surname>
<given-names><![CDATA[U]]></given-names>
</name>
</person-group>
<source><![CDATA[Automating the Loading of Business Process Data Warehouses]]></source>
<year>2009</year>
<publisher-name><![CDATA[ACM]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B4">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[CASTERS]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[BOUMAN]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
<name>
<surname><![CDATA[VAN DONGEN]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
</person-group>
<source><![CDATA[Pentaho Kettle Solutions: Building Open Source ETL Solutions with Pentaho Data Integration]]></source>
<year>2010</year>
<publisher-loc><![CDATA[Indianapolis^eIndiana Indiana]]></publisher-loc>
<publisher-name><![CDATA[Wiley Publishing]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B5">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[DÍAZ]]></surname>
<given-names><![CDATA[L]]></given-names>
</name>
<name>
<surname><![CDATA[LÓPEZ]]></surname>
<given-names><![CDATA[B]]></given-names>
</name>
<name>
<surname><![CDATA[LÓPEZ]]></surname>
<given-names><![CDATA[D]]></given-names>
</name>
</person-group>
<source><![CDATA[Integración de Datos]]></source>
<year>2013</year>
<publisher-name><![CDATA[&#8220;Universidad Central &#8220;Marta Abreu&#8221; de las Villas&#8221;]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B6">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[ECCLES]]></surname>
<given-names><![CDATA[M. J]]></given-names>
</name>
</person-group>
<source><![CDATA[Pragmatic Development of Service Based Real-Time Change Data Capture]]></source>
<year>2013</year>
<publisher-name><![CDATA[Aston University]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B7">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[EL-SAPPAGH]]></surname>
<given-names><![CDATA[S. H. A]]></given-names>
</name>
<name>
<surname><![CDATA[HENDAWI]]></surname>
<given-names><![CDATA[A. M. A]]></given-names>
</name>
<name>
<surname><![CDATA[EL BASTAWISSY]]></surname>
<given-names><![CDATA[A. H]]></given-names>
</name>
</person-group>
<source><![CDATA[A proposed model for data warehouse ETL processes]]></source>
<year>2011</year>
<volume>23</volume>
<page-range>91-104</page-range></nlm-citation>
</ref>
<ref id="B8">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[GARCÍA]]></surname>
<given-names><![CDATA[J. L]]></given-names>
</name>
</person-group>
<source><![CDATA[Automatización de los procesos de carga en el mercado de datos Recursos Humanos de la UCLV]]></source>
<year>2014</year>
<publisher-name><![CDATA[Universidad Central &#8220;Marta Abreu&#8221; de Las Villas]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B9">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[JÖRG]]></surname>
<given-names><![CDATA[T]]></given-names>
</name>
<name>
<surname><![CDATA[DESSLOCH]]></surname>
<given-names><![CDATA[S]]></given-names>
</name>
</person-group>
<source><![CDATA[Towards generating ETL processes for incremental loading]]></source>
<year>2008</year>
<publisher-loc><![CDATA[Coimbra ]]></publisher-loc>
<publisher-name><![CDATA[ACM]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B10">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[JÖRG]]></surname>
<given-names><![CDATA[T]]></given-names>
</name>
<name>
<surname><![CDATA[DESSLOCH]]></surname>
<given-names><![CDATA[S]]></given-names>
</name>
</person-group>
<source><![CDATA[Formalizing ETL Jobs for Incremental Loading of Data Warehouses]]></source>
<year>2009</year>
</nlm-citation>
</ref>
<ref id="B11">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[JÖRG]]></surname>
<given-names><![CDATA[T]]></given-names>
</name>
<name>
<surname><![CDATA[DESSLOCH]]></surname>
<given-names><![CDATA[S]]></given-names>
</name>
</person-group>
<source><![CDATA[Real-Time Data Warehousing Using State-of-the-Art ETL Tools.]]></source>
<year>2010</year>
<publisher-loc><![CDATA[Heidelberg ]]></publisher-loc>
<publisher-name><![CDATA[Springer-Verlag]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B12">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[KIMBALL]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
<name>
<surname><![CDATA[CASERTA]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
</person-group>
<source><![CDATA[The Data Warehouse ETL Toolkit]]></source>
<year>2004</year>
<publisher-loc><![CDATA[Indianapolis^eIndiana Indiana]]></publisher-loc>
<publisher-name><![CDATA[Wiley Publishing]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B13">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[KIMBALL]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
<name>
<surname><![CDATA[REEVES]]></surname>
<given-names><![CDATA[L]]></given-names>
</name>
</person-group>
<source><![CDATA[The Data Warehouse Lifecycle Toolkit: Expert Methods for Designing, Developing, and Deploying Data Warehouses]]></source>
<year>1998</year>
<publisher-loc><![CDATA[Indianapolis^eIndiana Indiana]]></publisher-loc>
<publisher-name><![CDATA[Wiley Publishing]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B14">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[KIMBALL]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
<name>
<surname><![CDATA[ROSS]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
</person-group>
<source><![CDATA[The Data Warehouse Toolkit: The Complete Guide to Dimensional Modeling]]></source>
<year>2002</year>
<publisher-loc><![CDATA[New York ]]></publisher-loc>
<publisher-name><![CDATA[John Wiley and Sons]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B15">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[KIMBALL]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
<name>
<surname><![CDATA[ROSS]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
</person-group>
<source><![CDATA[The Data Warehouse Lifecycle Toolkit]]></source>
<year>2008</year>
<publisher-name><![CDATA[John Wiley & Sons]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B16">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[LABIO]]></surname>
<given-names><![CDATA[W. J]]></given-names>
</name>
<name>
<surname><![CDATA[GARCÍA-MOLINA]]></surname>
<given-names><![CDATA[H]]></given-names>
</name>
</person-group>
<source><![CDATA[Comparing very large database snapshots]]></source>
<year>1995</year>
<publisher-name><![CDATA[Stanford University]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B17">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[LABIO]]></surname>
<given-names><![CDATA[W. J]]></given-names>
</name>
<name>
<surname><![CDATA[GARCÍA-MOLINA]]></surname>
<given-names><![CDATA[H]]></given-names>
</name>
</person-group>
<source><![CDATA[Efficient Snapshot Differential Algorithms for Data Warehousing]]></source>
<year>1996</year>
<publisher-name><![CDATA[Proceedings of VLDB &#8217;96]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B18">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[MASÓ]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
<name>
<surname><![CDATA[CASTELLÓN]]></surname>
<given-names><![CDATA[Y]]></given-names>
</name>
</person-group>
<source><![CDATA[Mercado de datos en apoyo a la toma de decisiones sobre el personal docente e investigativo en el departamento de Recursos Humanos de la UCLV.]]></source>
<year>2013</year>
<publisher-name><![CDATA[Universidad Central &#8220;Marta Abreu&#8221; de Las Villas.]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B19">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[MUNDY]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
</person-group>
<source><![CDATA[Design Tip #99 Staging Areas and ETL Tools]]></source>
<year>2008</year>
<month>20</month>
<day>15</day>
</nlm-citation>
</ref>
<ref id="B20">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[RAM]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
<name>
<surname><![CDATA[DO]]></surname>
<given-names><![CDATA[L]]></given-names>
</name>
</person-group>
<source><![CDATA[Extracting Delta for Incremental Data Warehouse Maintenance]]></source>
<year>2000</year>
<publisher-name><![CDATA[IEEE]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B21">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[ROSS]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
</person-group>
<source><![CDATA[Design Tip #152 Slowly Changing Dimension Types 0, 4, 5, 6 and 7]]></source>
<year>2013</year>
</nlm-citation>
</ref>
<ref id="B22">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[TELLEZ]]></surname>
<given-names><![CDATA[Y]]></given-names>
</name>
<name>
<surname><![CDATA[MEDINA]]></surname>
<given-names><![CDATA[D]]></given-names>
</name>
<name>
<surname><![CDATA[TORRES]]></surname>
<given-names><![CDATA[R. E]]></given-names>
</name>
</person-group>
<source><![CDATA[Propuesta para la Implementación de las Dimensiones Lentamente Cambiantes con Pentaho Data Integration]]></source>
<year>2012</year>
</nlm-citation>
</ref>
<ref id="B23">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[VASSILIADIS]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
</person-group>
<source><![CDATA[A survey of Extract-transform-Load technology]]></source>
<year>2009</year>
<volume>5</volume>
</nlm-citation>
</ref>
<ref id="B24">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[VILLARREAL]]></surname>
<given-names><![CDATA[R. X]]></given-names>
</name>
</person-group>
<source><![CDATA[Estudio de metodologías de Data Warehouse para la implementación de repositorios de información para la toma de decisiones gerenciales]]></source>
<year>2013</year>
<publisher-name><![CDATA[Universidad Técnica del Norte]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B25">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[YUAN]]></surname>
<given-names><![CDATA[G]]></given-names>
</name>
<name>
<surname><![CDATA[LI]]></surname>
<given-names><![CDATA[B]]></given-names>
</name>
<name>
<surname><![CDATA[XIAO]]></surname>
<given-names><![CDATA[T]]></given-names>
</name>
</person-group>
<source><![CDATA[Improvement of Snapshot Differential Algorithm Based on Hadoop Platform]]></source>
<year>2011</year>
<publisher-name><![CDATA[IEEE]]></publisher-name>
</nlm-citation>
</ref>
</ref-list>
</back>
</article>
