Capítulo 13. Operaciones avanzadas con estado
Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com
ElCapítulo 8 demostró en lo fácil que es expresar una agregación en Streaming Estructurado utilizando las funciones de agregación existentes en las API estructuradas de Spark. El Capítulo 12 mostró la eficacia del soporte incorporado de Spark para utilizar la información temporal incrustada en el flujo de eventos, el llamado procesamiento evento-tiempo.
Sin embargo, hay casos en los que necesitamos cumplir criterios de agregación personalizados que no admiten directamente los modelos incorporados. En este capítulo, exploramos cómo realizar operaciones avanzadas con estado para abordar estas situaciones.
Structured Streaming ofrece una API para implementar el procesamiento arbitrario de estados. Esta API está representada por dos operaciones: mapGroupsWithState
y flatMapGroupsWithState
. Ambas operaciones nos permiten crear una definición personalizada de un estado, establecer las reglas de cómo evoluciona este estado a medida que entran nuevos datos en el tiempo, determinar cuándo caduca, y nos proporcionan un método para combinar esta definición de estado con los datos entrantes para producir resultados.
La principal diferencia entre mapGroupsWithState
y flatMapGroupsWithState
es que el primero debe producir un único resultado por cada grupo procesado, mientras que el segundo puede producir cero o más resultados. Semánticamente, ...
Get Procesamiento de flujos con Apache Spark now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.