Este curso comenzará con una introducción a Apache Flink que consistirá en poner en contexto este framework y compararlo con otros similares como pueden ser Spark o Storm, entendiendo la arquitectura. Se abordará el desarrollo de aplicaciones en distintos entornos.
Se detallarán las partes básicas de Flink: Flink Batch, Flink Streaming, Table Api, SQL. Todas estas partes de Flink se impartirán de la manera más practica posible, implementado diversos ejercicios que ayudarán al alumno a familiarizarse con el framework.
Temario
- Introducción a Apache Flink
- El contexto de Flink: Comparación con Spark.
- Arquitectura de Flink
- Instalar el entorno en local
- Instalar en arquitectura yarn
- Integración en Ambari/Hortonworks
- Integrar en Zeppelin
- Desarrollo con IntelliJ
- Conceptos básicos
- Dataset y DataStream
- Anatomia de un programa Flink
- Ejecución Lazy
- Funciones de transformación
- Tipos de Datos soportados
- Accumulators & Counters
- Plan de ejecución: Web Interface
- Ejercicios
- Flink Batch
- Transformaciones en DataSet
- Data Sources
- Data Sinks
- Variables de tipo Broadcast
- Distributed Cache
- Ejercicios
- Flink Streaming
- Transformaciones en DataStream
- Data Sources
- Data Sinks
- Ejercicios
- Integración con Kafka
- Integración con Twitter
- Event Time
- Processing Time
- Ingestion Time
- Watermarks
- Ejercicios
- Window Assigners
- Funciones Window
- Triggers
- Ejercicios
- Table API
- Registro de tablas
- Operaciones
- Sintaxis
- Ejercicios
- SQL Flink
- SQL on Batch Tables
- SQL on Streaming Tables
- Ejercicios
Casos prácticos
- Se realizarán ejercicios prácticos de Flink con lenguaje Scala.
- Integración con Kafka. Hablando de la gran utilidad que supone esta integración en casos reales de proyectos de Big Data.
Material
Es recomendable que el usuario que desee aplicar lo aprendido en el curso online disponga de un equipo de al menos 8Gb de memoria RAM, la CPU sea de 64bits con 4 cores, hortonworks sandbox 2.5.
DevAcademy puede valorar la creación de máquinas virtuales en Cloud dependiendo del caso para que el alumno pueda optimizar su aprendizaje independientemente de los recursos de hardware que disponga (contacta con nosotros)
Requisitos y conocimientos previos
El alumno debe tener unos conocimientos mínimos de big data, lenguaje scala (o al menos de java), hdfs, y es recomendable conocer SQL.
Fechas, horario y lugar
Los cursos de DevAcademy son en horario NO LABORAL los VIERNES (16hrs – 21hrs) y SÁBADOS (9hrs-14hrs), pensado para que puedan asistir aquellos que estén trabajando.
FECHAS: 01-02/03, 08-09/03 de 2019
El curso tendrá lugar en las aulas situadas en las instalaciones DevAcademy
Responsabilidades profesor
- Presentar el contenido conforme lo presentado en el programa de formación
- Dar acceso al material necesario (PDFs, ejercicios, software, etcs) para el curso contratado
- Proveer de local para impartir la formación
Responsabilidades alumno
Participar en la formación en el periodo determinado, trayendo un notebook con los requisitos mínimos necesarios para la participación en la formación, siendo estos los siguientes:
- Mínimo de 4GB de memoria RAM
- Mínimo de 10GB de espacio en disco (HD).
- Habilitada la virtualización tanto en software como hardware
- Poseer privilegios de administración
Observaciones importantes
Confirmaciones
Las confirmaciones serán enviadas a la dirección de e-mail enviada por el alumno
Cancelaciones
Los plazos para el cancelamiento de inscripciones solicitadas, son de 5 días laborales antes del inicio del curso.
En caso de cancelamiento fuera de plazo por parte del alumno, DevAcademy se reserva el derecho a cobrar un porcentaje (20%) del valor del curso.
DevAcademy se reserva el derecho de cancelar o posponer la formación, siempre y cuando avise al contratante y/o devuelva el importe íntegro en caso de cancelación
Obligaciones del alumno
Es obligatorio que el alumno cumpla con todos las obligaciones recomendadas por el profesor para seguir todos los ejercicios y no demorar ni perjudicar la clase. Es posible que días antes se envie un email como recordatorio al alumno con instrucciones a seguir u obligaciones desarrollar para poder estar preparado al comienzo de la clase.
Si quieres información sobre más cursos, haz click aquí