Saltar al contenido

Procesamiento en tiempo real

El procesamiento en tiempo real sigue un objetivo de latencia definido. Hay que distinguir la hora del evento de la de procesamiento y prever datos tardíos.

También conocido comoReal-Time Processing
APIs y contratos de datos

El procesamiento en tiempo real trata los eventos entrantes de forma continua según un objetivo de latencia definido para la aplicación. En lugar de esperar a un lote completo, la aplicación reacciona a un flujo de datos. La expresión «tiempo real» no fija por sí sola un límite en milisegundos ni un tiempo máximo de respuesta garantizado.

En un ejemplo ficticio, un panel cuenta por minuto los trabajos de exportación terminados. El evento de finalización de J-31 se produce a las 10:04, pero llega al procesamiento a las 10:07. Ambas horas usan la misma zona horaria. Un cálculo por hora del evento lo asigna al minuto 10:04; un cálculo por hora de procesamiento lo asigna al minuto 10:07. Responden a preguntas distintas.

Coordinar una visualización rápida y resultados completos

Si el panel cuenta por hora del evento, necesita una regla para las llegadas tardías: ¿se corrige el total de un minuto ya mostrado o se registra el evento tardío por separado? Esperar más puede incluir más eventos retrasados, pero aplaza el resultado. Un watermark marca el avance supuesto del tiempo de los eventos. Después aún pueden llegar eventos con marcas de tiempo anteriores.

Defina dónde empieza y termina la medición de latencia, la antigüedad del registro pendiente más antiguo y cómo hacer visible la acumulación. Las marcas de tiempo y la sincronización de relojes también forman parte de una asignación temporal fiable. Un panel que se actualiza regularmente no demuestra por sí solo que todos los eventos subyacentes ya se hayan procesado.

Fuentes