Novedades Apache Zeppelin 0.9.0: NoteServingTask

En este vídeo, Moonsoo Lee, el creador de Zeppelin y cofundador de Zepl nos presenta las novedades de la próxima versión de Zeppelin, la 0.9.0.

En esta versión se han centrado en cómo desplegar notebooks hechos en Zeppelin a Producción. Siendo conscientes de los posibles problemas que tiene usar un notebook en Producción como son:

  • El servidor de Notebooks puede quedar offline afectando a todos los notebooks creados
  • ¿Cómo integro Tests en un Notebook?
  • Las llamadas a través del API REST de Zeppelin necesita parseos
  • Un notebook es servidor por un conjunto de intérpretes lo que puede no escalar
  • Las llamadas a los notebooks no tienen métricas asociadas: número de peticiones, tiempo en responder…

Con estos retos en mente se ha creado el concepto de NoteServingTask = Note + Interpreter + Server

  • Un NoteServingTask actúa como un servidor de ese Notebook y los intérpretes necesarios
  • El NoteServingTask permite crear múltiples instancias para hacer balanceo de carga
  • Creación dinámica de Endpoints REST
  • El NoteServingTask está versionado
  • Posibilidad de hacer tests unitarios sobre el note
  • Incluye métricas básicas
  • Que permita un despliegue desde el propio Zeppelin

Veamos un ejemplo de funcionamiento.

En este caso estoy definiendo un párrafo en el que defino un código de ejemplo, luego lo testeo (de modo que si no se cumple la condición el Notebook no continua la ejecución y finalmente publico el API con un nombre:

Si pongo el Notebook en ejecución desde el propio UI:

Puedo ver la URL en la que el Notebook se está sirviendo:

Además de un conjunto de métricas:

Que puedo ampliar de forma muy sencilla:

Deja una respuesta

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Salir /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Salir /  Cambiar )

Conectando a %s