¿Qué es una arquitectura lambda?

¿Qué es una arquitectura lambda?

Una arquitectura lambda es un término elegante para un enfoque de sentido común para tratar con un flujo de datos ENORME que desea procesar tanto en detalle como CUANTO ANTES.

El solo hecho de mirar la letra griega lambda (λ) probablemente le sugiera que simplemente duplique la secuencia de datos y la procese de dos maneras diferentes. Supongo que eso es lo que Nathan Marz tenía en mente cuando nombró la arquitectura; Si no lo fue , bueno, lo viste aquí primero. 🙂

Aquí está el diagrama canónico para ilustrarlo (de λ lambda-architecture.net):

La idea de tener mecanismos de procesamiento de datos separados en los mismos datos es tan antigua como la suciedad. Sin romper ningún NDA, puedo revelar que ayudé a un cliente a diseñar e implementar tal configuración para la gestión de datos de prueba de semiconductores, casi una década antes de que λ se convirtiera en una cosa.

En resumen, cientos de evaluadores canalizaron datos de prueba en tiempo real a un servidor que enviaba toda la secuencia de datos a otros dos servidores:

  • Una distribución de resultados de la papelera calculada (en general, sitio a sitio, etc.) y otras estadísticas, luego produjo nuestros informes de EOL (final de lote) al final de cada lote de dispositivos analizados, que se podrían solicitar a pedido.
  • El otro simplemente mantuvo un conteo acumulado de dispositivos probados por probador y su rendimiento (porcentaje de aprobación), que se mostraba en un panel de control en tiempo real para obtener una visión general rápida del rendimiento del piso de pruebas.

Y ni siquiera fue idea mía , solo la sugerencia vacilante de un desarrollador de software de nuevo cuño de “um … ¿podemos procesar los datos de dos maneras?” Se sorprendió cuando lo miré y le hice una señal de aprobación.