Los procesos ETL son probablemente los componentes ms
importantes y de mayor valor aadido en una infraestructura que implique la integracin de varias fuentes de datos. En consecuencia, representan un pilar fundamental tanto de simples proyectos de recopilacin como de soluciones complejas de Big Data o Business Intelligence, especialmente si se requiere mucha precisin o actualizacin en los datos. Aunque suelen resultar transparentes a los usuarios, los procesos ETL son los encargados de recuperar informacin de todos los orgenes necesarios, formatearla, limpiarla e integrarla en un datamart, un datawarehouse, una base de conocimiento o cualquier otro tipo de repositorio digital. En resumen, los procesos ETL recopilan los datos y hacen posible que la informacin subyacente pueda ser presentada mediante las herramientas de anlisis y reporting pertinentes. En el caso de Classora, los propios robots son los encargados de complementar y enriquecer cada dato con los metadatos correspondientes (fecha de carga, fuente, fiabilidad del dato, frecuencia de refresco, significado, relaciones etc.) que permiten su posterior procesado y recuperacin.
Como su propio nombre indica, los procesos ETL se dividen en
tres fases:
Extraccin: consiste en obtener los datos del sistema
origen, realizando volcados completos o incrementales. En ocasiones esta etapa suele apoyarse en un almacn intermedio, llamado ODS (Operational Data Store), que acta como pasarela entre los sistemas fuente y los sistemas destino, y cuyo principal objetivo consiste en evitar la saturacin de los servidores funcionales de la organizacin.
Transformacin: los datos procedentes de repositorios
digitales distintos no suelen coincidir en formato. Por tanto, para lograr integrarlos resulta imprescindible realizar operaciones de transformacin. El objetivo no es otro que evitar duplicidades innecesarias e impedir la generacin de islas de datos inconexas. Las transformaciones aplican una serie de reglas de negocio (o funciones) sobre los datos extrados para convertirlos en datos destino.
Carga: se trata de introducir los datos, ya adaptados al
formato deseado, dentro del sistema destino. En algunos casos se sobreescribe la informacin antigua con la nueva, mientras que en otros se guarda un historial de cambios que permite consultas retrospectivas en el tiempo, as como revertir modificaciones. Para la carga masiva de datos suele ser necesario desactivar temporalmente laintegridad referencial de la base de datos destino. Para los que nos dedicamos profesionalmente a la monitorizacin continua de fuentes Open Datadisponibles en Internet, existen numerosos desafos si queremos implementar unos procesos ETL eficaces y fiables, que se pueden resumir en los siguientes puntos:
Los volmenes de datos estn creciendo de forma
exponencial, especialmente los que se vierten de manera incesante sobre Internet. Precisamente para cosas como sta nacieron las soluciones Big Data. Por su parte, la Web Semntica, de la que ya hemos hablado en anteriores
ocasiones, es un intento de poner orden y organizar este
vertido constante de informacin desestructurada a la Red.
A mayor disparidad de fuentes, mayor dificultad
de integracin, a medida que los sistemas de informacin crecen en diversidad, tambin aumenta la complejidad de su integracin. Crear reglas de transformacin customizadas para cada nueva fuente supone un esfuerzo manual inviable en sistemas que pretenden ser escalables. De ah, una vez ms, la patente necesidad de respetar estndares como RDF o XML para publicar informacin.
Las transformaciones implicadas pueden llegar a
ser muy complejas. Los datos necesitan agregarse, analizarse, computarse, procesarse estadsticamente etc. En ocasiones tambin se necesitan transformaciones demasiado costosas desde el punto de vista computacional. Los procesos ETL necesitan una mayor flexibilidad para conseguir respuestas en tiempo real. Actualmente, existen herramientas comerciales, e incluso de software libre, con una gran potencia para la extraccin de datos. De hecho, los problemas de rapidez y rendimiento no suelen suponer hoy en da un gran escollo tcnico para la extraccin y la carga. Donde realmente se sita el cuello de botella es en la transformacin de datos: en este punto la informacin desestructurada debe ser convertida en informacin estructurada para poder ser integrada con el resto de los datos que ya existen en el sistema destino. De hecho, la automatizacin de este proceso es slo uno de los grandes retos de la Web Semntica.
El caso de Classora Knowledge Base
Para que la base de conocimiento de Classora tenga informacin actualizada y realmente til es necesario que se nutra constantemente de datos disponibles en distintas fuentes pblicas. De hecho, dada la amplitud proyecto, estas fuentes pueden oscilar desde plataformas de referencia oficiales y completamente estructuradas (como es el caso de Eurostat, el
Instituto Nacional de Estadstica, o la FIFA) hasta fuentes no
oficiales, escritas en texto plano o dotadas de escasos niveles de estructuracin (como pueden ser blogs, noticias de medios digitales o incluso la propia Wikipedia). Con este fin, Classora Technologies ha desarrollado tres tipos de robots para la gestin de datos:
Crawlers de extraccin: encargados de la carga masiva
de informes a partir de fuentes pblicas oficiales. Sirven tanto para cargas absolutas como incrementales.
Exploradores de datos: encargados de buscar y
actualizar atributos concretos de una unidad de conocimiento a partir de una fuente determinada.
Agregadores de contenidos: no se conectan a fuentes
externas, sino que utilizan datos internos de Classora para generar nueva informacin (histrica, agregada etc.). No obstante, en valores absolutos, los millones de unidades de conocimiento que atesora Classora Knowledge Base son una cantidad minscula de la informacin pblica realmente disponible en La Red. Adems, como hemos visto antes, cada nueva fuente de datos incorporada aumenta la complejidad de la integracin con los datos previamente cargados, ya que se incrementa el nmero de transformaciones. Sin una supervisin manual (cada vez ms costosa e inviable), esto se traduce a medio plazo en que la calidad de los datos puede disminuir a medida que crece la cantidad de los mismos. Sin embargo, estas limitaciones se pueden paliar parcialmente con un mayor esfuerzo en I+D+i. Por ello, nuestra empresa plantea un proceso de mejora continua para los robots de carga que permitan incorporar ms fuentes de datos, con menor nivel de estructuracin, en ms idiomas, y con una mejor integracin con los datos previamente cargados. El problema original al que nos enfrentamos es, en el fondo, uno de los mayores retos que ha impuesto la evolucin tecnolgica: la transformacin de informacin desestructurada a informacin estructurada.
Ms acerca de los procesos de Extraccin,
Transformacin y Carga Si te interesa saber ms sobre el tema no dudes en contactar con nosotros para que te enviemos documentacin adicional. Esperamos haber conseguido despejar algunas dudas sobre los procesos ETL, tan importantes para muchos proyectos de Big Data, Open Data, Linked Data y Business Intelligence, y que sin embargo suelen permanecer en la sombra, pasando desapercibidos para el usuario que los utiliza en ltima instancia.
Guía de Actividades y Rúbrica de Evaluación - Unidad 3 - Tarea 4 - Elaboración de Documento de Aplicación de Prueba de Hipótesis e Intervalos de Confianza