Date post: | 29-Jun-2015 |
Category: |
Engineering |
Upload: | francisco-javier-pulido-pinero |
View: | 188 times |
Download: | 1 times |
Técnicas de Inyección / Extracción de Datos en #BigData +
Técnicas Drag & Drop en Apache Cassandra
@javituiter www.franciscojavierpulido.com
@exploradata www.exploradata.com
Sobre mí
Graduado en Ingeniera del So;ware
Master en Sistemas en
Ingeniería de la Información
Big Data Specialist www.ExploraData.com
Bloguero &
Tuitero
ExploraBrand: Marketing Digital
www.explorabrand.com
Inyección/Extracción de Datos en #BigData
Inyección / Extracción de datos en #BigData
Inyección / Extracción de datos en #BigData
Inyección / Extracción de datos en #BigData
Inyección/Extracción de Datos
en Cassandra
Inyección / Extración de datos en Cassandra
Comando COPY
Inyección / Extración de datos en Cassandra
Comando COPY
-‐ Desarrollar desde 0 un programa para lanzar múlMples instancias del comando (secuencialmente, ya que paralelamente estaba sujeto a errores de concurrencia)
-‐ Paralelizable en varios nodos manualmente -‐ Limitado a 500.000 registros por hilo/lanzamiento
Inyección / Extración de datos en Cassandra
Apache Sqoop
·∙ Relacional ·∙ NoSQL
·∙ Relacional ·∙ NoSQL
Hadoop
Inyección / Extración de datos en Cassandra
Apache Flume
-‐ Herramienta exclusiva para la etapa de Obtención de datos -‐ Source -‐ Channel -‐ Sink -‐ Interceptor
Inyección / Extración de datos en Cassandra
Apache Flume
Channel 1
Channel N
Source 1 . . .
.
.
.
Source 2
Sink 1
Sink 2
Inyección / Extración de datos en Cassandra
Apache Flume
Inyección / Extración de datos en Cassandra
Apache Flume
+ Sink a Cassandra Personalizado
hbp://www.treselle.com/blog/flume-‐with-‐cassandra-‐integraMon
Inyección / Extración de datos en Cassandra
DataStax: SSTableLoader
Técnicas Drag&Drop en Cassandra
Técnicas Drag&Drop en Cassandra
ETL • Extraer, Transformar y Cargar (Load). En definitiva:
• Extraer datos de múltiples fuentes
• Aplicar calidad y consistencia (limpiar) a los datos
• Conformar (unificar) los datos
• Cargar los datos en un DW
• La idea de Flujo.
• Actividad inicial y con ejecución periódica/programable.
• Herramientas: Talend, JasperSoft, Pentaho Data Integration
Técnicas Drag&Drop en Cassandra
Pentaho Data IntegraMon • PDI es un set de herramientas, que permite diseñar ETLs, mediante transformaciones y trabajos que pueden ser ejecutadas por las herramientas de Spoon, Pan y Kitchen. Antes se le conocía con el nombre de Kettle.
• Spoon interfaz gráfica para diseño de trasformaciones y trabajos ETL.
• Pan es un motor capaz de ejecutar múltiples transformaciones de datos como leer, manipular y escribir desde y en distintos orígenes de datos.
• Kitchen es un programa que ejecuta los trabajos diseñados por Spoon. Normalmente estos trabajos son planificados en modo batch para ejecutar automáticamente a periodos regulares (crontab -e).
Técnicas Drag&Drop en Cassandra
Técnicas Drag&Drop en Cassandra
Conectores Big Data en PDI • En PDI tenemos múltiples conectores para sistemas Big Data:
• AVRO
• Cassandra
• CouchDB
• Hadoop
• Hbase
• Map Reduce
• MongoDB
Técnicas Drag&Drop en Cassandra
Cassandra en PDI • Tenemos tres tipos de “pasos” para Apache Cassandra:
• Cassandra Input: se utiliza para realizar lecturas
• Cassandra Output: se utiliza para realizar escrituras
• SSTable Output: se utiliza para volcar a una SSTable de Cassandra.
• Requisitos:
• Apache Cassandra 1.2.X
• PDI 5.0.1 Stable
• Librerías oficiales de Apache Cassandra para PDI
• Limitaciones:
• Los “pasos” funcionan correctamente con hasta 500K registros
Técnicas Drag&Drop en Cassandra
Cassandra Input
Técnicas Drag&Drop en Cassandra
Cassandra Output
Técnicas Drag&Drop en Cassandra
SSTable Output
* Este paso necesita ser ejecutado siempre en un nodo de Cassandra.
PDI en Acción
? ¿ Dudas ?
@javituiter www.franciscojavierpulido.com
@exploradata www.exploradata.com