Stream vs. Batch: En realidad, se trata de Push vs. Pull
El debate común "Stream vs. Batch" es engañoso. Muchos sistemas de streaming usan internamente procesamiento por lotes para mejorar el rendimiento, pero la verdadera distinción radica en la semántica de procesamiento de datos: los sistemas 'push' entregan datos en tiempo real, proporcionando una vista completa y actualizada; los sistemas 'pull' consultan datos periódicamente, perdiendo potencialmente actualizaciones y eliminaciones. Si bien 'push' es más complejo, su ventaja en tiempo real es convincente. Una vez que experimente la magia de la frescura de datos a nivel de segundos, no querrá volver atrás. En la práctica, ambos enfoques se complementan, con el procesamiento por lotes a menudo utilizado para retroalimentación en sistemas de streaming.