Apache YARN

Definición de Yarn (Yet Another Resource Negociator) Yarn es un sistema operativo de datos y gestor de recursos distribuido, conocido también como Hadoop 2 ya que es la evolución de Hadoop Map-Reduce. Los cambios más significativos de Hadoop 2 sobre Hadoop 1 es que se incluye la tecnología HILO, esta tecnología proporciona una asignación de…

Read More »

Kerberos

Definición de Kerberos Kerberos es un protocolo de autenticación que permite a dos ordenadores demostrar su identidad mutuamente de forma segura. Implementado sobre una arquitectura cliente servidor y trabaja sobre la base de tiques que  sirven para demostrar la identidad de los usuarios. La autenticación entre dos ordenadores se lleva a cabo utilizando a un tercero…

Read More »

Cálculos sobre ventana temporal en Dataframe Scala

Cálculo de media móvil en Dataframe Scala Calcula la media móvil a partir de una ventana temporal de 3 periodos import org.apache.spark.sql.expressions.Window import org.apache.spark.sql.functions._ val df = sc.parallelize(    List((«Sensor1», «2016-05-01», 50.00),         («Sensor1», «2016-05-03», 45.00),         («Sensor1», «2016-05-04», 55.00),         («Sensor2», «2016-05-01», 25.00),         («Sensor2», «2016-05-04», 29.00),         («Sensor2», «2016-05-06», 27.00))     ).toDF(«sensor», «fecha»,…

Read More »

Storm

Definición de Storm Apache Storm es un sistema de computación distribuida en tiempo real de baja latencia y de alta disponibilidad basado en la arquitectura maestro-esclavo. Storm es ideal para trabajar con datos que necesitan ser analizados en tiempo real donde la latencia es una variable a tener muy en consideración, ejemplo de ello serían…

Read More »

Apache Flume

Definición de Flume Apache Flume es un servicio distribuido que mueve de forma fiable y eficiente grandes cantidades de datos, especialmente logs. Ideal para aplicaciones de analíticas en línea en entornos Hadoop. Flume tiene una arquitectura sencilla y flexible basada en flujos de datos en streaming, que permite construir flujos de múltiples por donde viajan los…

Read More »

Apache Kafka

Definición de Kafka Apache Kafka es un sistema de intermediación de mensajes basado en el modelo publicador/suscriptor. Se considera un sistema persistente, escalable, replicado y tolerante a fallos. A estas características se añade la velocidad de lecturas y escrituras que lo convierten en una herramienta excelente para comunicaciones en tiempo real (streaming). Proporciona multitud de…

Read More »

Apache Nifi

Definición de Nifi Apache NiFi es una plataforma integrada de procesamiento y logística de datos en tiempo real, para automatizar el movimiento de datos entre diferentes sistemas de forma rápida, fácil y segura. Apache Hifi es una herramienta ETL que se encarga de cargar datos de diferentes fuentes, los pasa por un flujo de procesos…

Read More »

Arquitectura Spark

Spark context SparkContext es el contexto básico de Spark, desde donde se crean el resto de variables. En la shell de Spark viene directamente instancia en la variable «sc», aunque en otros entornos hay que instanciarlo explícitamente. Problema que solo se puede instancias una sola vez por JVM. La configuración de la estancia se puede definir…

Read More »

Arquitectura Lambda (combinación de procesamiento batch y stream)

Antes de centrarnos en la arquitectura Lambda es conveniente especificar los dos tipos de procesamiento de datos que la componen: El procesamiento de datos en modo batch, es aquel que nos permite procesar volúmenes de datos en tiempos espaciados, por ejemplo cada 10 minutos, 1 hora o diario. Para ello el sistema dispone de lotes o batch…

Read More »