Traducción con IA
Esta página fue traducida con IA a partir del original en inglés. Revisamos las traducciones cuidadosamente, pero puede quedar algún error.
Código AbiertoArticleNovember 2, 2026
Real-Time Analytics Architecture: Layers, Patterns, Tradeoffs

Arquitectura de análisis en tiempo real: capas, patrones y compromisos

Arquitectura de análisis en tiempo real: capas, patrones y compromisos Una arquitectura de análisis en tiempo real mueve los eventos desde el lugar donde ocurren hasta donde alguien puede actuar sobre ellos de forma continua, en vez de esperar a un proceso nocturno.

Sophia Moreau
Sophia Moreau
24 min read

Arquitectura de análisis en tiempo real: capas, patrones y compromisos

Una arquitectura de análisis en tiempo real mueve los eventos desde el lugar donde ocurren hasta donde alguien puede actuar sobre ellos de forma continua, en vez de esperar a un proceso nocturno. En la práctica, esto implica cuatro capas: ingesta, procesamiento de flujos, un almacén para servir los datos y una capa de consumo, como paneles, API o alertas. La parte difícil rara vez consiste en elegir herramientas. Consiste en decidir con qué rapidez debe estar disponible cada respuesta y pagar solo por ese nivel.

Esta guía explica las capas, los patrones Lambda y Kappa, las decisiones de diseño que causan problemas en producción y una forma de dimensionar correctamente la solución. Está dirigida a líderes empresariales, operativos y tecnológicos que patrocinarán o revisarán este tipo de sistema, no solo a los ingenieros que lo construirán.

Ridiculous Engineering
ridiculousengineering.com
Cree análisis que se adapten a sus decisiones
Ridiculous Engineering diseña sistemas de datos y análisis en torno a sus objetivos empresariales, desde la estrategia técnica hasta la implementación y el soporte continuo.
Explore los servicios de datos y análisis

Conclusiones clave

  • Una arquitectura de streaming tiene cuatro capas: ingesta, procesamiento, servicio y consumo. La latencia se acumula en todas ellas, por lo que debe medirse de extremo a extremo.
  • Parta de la decisión, no de la tecnología. Una comprobación de fraude y un panel de inventario necesitan niveles de actualización muy distintos, y la curva de costes es pronunciada.
  • Kappa (una única canalización de streaming) encaja en la mayoría de los proyectos nuevos. Lambda (procesamiento por lotes más streaming) solo justifica su coste adicional cuando deben coexistir dos estándares de precisión.
  • Los datos tardíos, la contrapresión, los cambios de esquema y la gobernanza son los factores que rompen los sistemas después del lanzamiento. Diseñe teniendo en cuenta estos aspectos desde el primer día.
  • El dimensionamiento adecuado es mejor que el máximo. Muchos equipos necesitan minutos, no milisegundos.

Tabla de contenidos

Qué es una arquitectura de análisis en tiempo real

Los sistemas por lotes recopilan datos, esperan a un proceso programado y publican los resultados horas más tarde. Un sistema en tiempo real trata los datos como un flujo continuo: cada evento se captura, se procesa y queda disponible para consultas en cuestión de segundos o menos. La guía de análisis de AWS Well-Architected describe los componentes principales de un diseño de streaming como fuentes de datos, ingesta de flujos y productores (por ejemplo, captura de datos de cambios o Kafka Connect), almacenamiento de flujos (por ejemplo, Kafka o Kinesis), procesamiento de flujos (por ejemplo, Flink o Spark) y destinos posteriores, tal como se expone en su arquitectura de referencia de streaming.

Five connected stages in a streaming architecture

Esta lista es una lista de comprobación útil para una primera sesión de pizarra. Si la propuesta de un proveedor omite alguna de estas casillas, pregunte dónde se asume esa responsabilidad.

«Tiempo real» es un término empresarial antes que técnico

Nadie necesita que todo ocurra en milisegundos. Una comprobación de fraude en un pago puede necesitar una respuesta en bastante menos de un segundo. Una vista del inventario de un almacén puede resultar perfectamente útil si se actualiza cada pocos minutos. Es posible que un informe ejecutivo semanal no necesite streaming en absoluto.

Antes de elaborar cualquier diagrama de arquitectura, anote para cada caso de uso:

  1. La decisión o acción que respaldan los datos.
  2. Quién o qué lleva a cabo esa acción (una persona, una aplicación o una regla automatizada).
  3. Cuánto pueden estar desactualizados los datos antes de que la decisión empeore.
  4. Cuánto cuesta una respuesta incorrecta o incompleta.

Estas cuatro respuestas establecen su presupuesto de latencia. Todo lo que aparece a continuación está diseñado para cumplirlo, no para superarlo.

Las cuatro capas y cómo circulan los datos entre ellas

1. Ingesta: capturar y almacenar en búfer

Los eventos proceden de bases de datos de aplicaciones, clics de usuarios, sistemas de pago, sensores del Internet de las cosas (IoT), registros y API de terceros. La ingesta los captura de forma fiable y los coloca en un medio duradero. Dos enfoques habituales:

  • Publicación de eventos desde las aplicaciones. La aplicación emite un evento de negocio («pedido realizado») a un flujo. La semántica es clara, pero requiere cambios en el código de la aplicación.
  • Captura de datos modificados (CDC). Un conector lee el registro de cambios de la base de datos y publica cada inserción o actualización. Es menos invasivo para los sistemas heredados, por eso aparece con tanta frecuencia en proyectos de modernización.

El búfer importa tanto como la captura. Una plataforma de streaming funciona como un registro distribuido de solo anexado, en el que los eventos se conservan durante un periodo configurable, desde horas hasta meses o incluso indefinidamente, y permanecen disponibles para que cualquier consumidor los lea, tal como describe una guía del sector sobre aplicaciones de análisis en tiempo real . Esa retención permite reproducir el historial después de corregir un error o añadir más adelante un consumidor nuevo sin tocar el sistema de origen. Si desea una visión de ingeniería más profunda de esta capa, nuestra guía práctica sobre el streaming de eventos con Kafka abarca los temas, las particiones y las garantías de entrega.

2. Procesamiento: validar, enriquecer y agregar

La capa de procesamiento convierte los eventos sin procesar en algo útil: los valida, los combina con datos de referencia, calcula totales acumulados, detecta patrones o les asigna una puntuación mediante un modelo. La orientación de Microsoft sobre cómo elegir una tecnología de procesamiento de flujos señala que la decisión suele depender de si necesita un procesamiento con estado o sin estado y de si necesita ventanas temporales, ya sean de tipo tumbling (fijas y no superpuestas) o sliding (superpuestas), para las agregaciones basadas en el tiempo.

En términos sencillos:

  • Sin estado El trabajo (filtrado, análisis sintáctico y transformaciones simples) es económico y fácil de escalar.
  • Con estado El trabajo («número de inicios de sesión fallidos por usuario en los últimos cinco minutos») debe recordar información, lo que afecta a la memoria, la recuperación y el coste.
  • Ventanas Definen «los últimos cinco minutos» y es donde se producen la mayoría de las sorpresas relacionadas con la corrección.

3. Servicio: un almacén diseñado para la consulta

Los datos procesados se almacenan en un sistema adaptado a la forma en que se consultarán. No existe una única respuesta correcta:

Patrón de acceso Opción habitual para servir los datos Motivo
Segmentación ad hoc y paneles sobre datos actualizados Almacén analítico (OLAP) o tablas de lakehouse Agregaciones rápidas sobre grandes volúmenes
Consultas por cliente o por elemento desde una aplicación Almacén de clave-valor o de documentos Lecturas de un solo registro con baja latencia
Análisis histórico y reciente combinado Lakehouse con streaming y procesamiento por lotes sobre las mismas tablas Una única copia de los datos

Para el caso de las consultas, la escenario de referencia de lakehouse en tiempo casi real de Microsoft desnormaliza los datos en un almacén NoSQL, como Azure Cosmos DB, para admitir respuestas de API en milisegundos de un solo dígito. Para el caso del lakehouse, el mismo escenario utiliza Delta Lake, que proporciona semántica ACID y un procesamiento unificado de streaming y por lotes sobre un lago de datos.

El principio de diseño: adaptar los datos al lector. Preagregar y desnormalizar en el momento de la escritura es lo que permite acelerar las lecturas.

4. Consumo: paneles, API, alertas y modelos

Aquí es donde la empresa percibe el valor y donde más difieren los requisitos de latencia. Una pantalla de operaciones en directo, una métrica visible para los clientes dentro de su producto, una alerta para un responsable de guardia y un flujo de características para un modelo de aprendizaje automático leen de la capa de servicio de maneras distintas. Planifique primero los consumidores y trabaje hacia atrás.

Un panel en el que nadie confía o que nadie entiende desperdicia todo el trabajo de la canalización. Las personas que consultan datos en directo también necesitan saber interpretarlos, por eso algunas organizaciones acompañan la implementación de una plataforma con un curso de analítica web para los analistas y responsables que trabajarán habitualmente con los paneles. Nuestra guía sobre analítica de autoservicio profundiza en cómo hacer que esa última etapa funcione.

La latencia es la suma de todas las etapas

Es tentador comparar el rendimiento del motor de procesamiento y dar el trabajo por terminado. Sin embargo, la latencia integral es el total de la captura, el tránsito por la red, el almacenamiento en búfer, el procesamiento, la escritura en el almacén, el tiempo de consulta y la actualización del panel. Instrumente cada salto con marcas de tiempo desde el primer día. Cuando una parte interesada diga «el panel parece lento», querrá saber qué etapa consumió esos segundos.

Streaming frente a procesamiento por lotes: qué cambia realmente

Más allá de la frescura de los datos, los dos modelos implican compromisos de ingeniería distintos. Las investigaciones sobre el tema señalan que los motores de streaming afrontan compromisos entre latencia y rendimiento: confirmar los mensajes uno a uno para garantizar la entrega añade sobrecarga y es menos eficiente que procesarlos por lotes, según el análisis de Jimmy Lin sobre las arquitecturas Lambda y Kappa publicado por IEEE.

Esto tiene consecuencias prácticas para la planificación:

  • El streaming cuesta más por registro que el procesamiento por lotes cuando se ejecuta las 24 horas. Si una actualización cada hora satisface la decisión, el procesamiento por lotes es la respuesta honesta.
  • El streaming obliga a gestionar aspectos que el procesamiento por lotes oculta: eventos desordenados, entregas duplicadas y resultados parciales.
  • Las operaciones cambian. Un trabajo nocturno que falla puede volver a ejecutarse por la mañana. Un flujo que se detiene a las 2 de la madrugada es un incidente.

Un enfoque híbrido es lo habitual. Muchas empresas procesan mediante streaming el 10 % de los datos que impulsan decisiones sensibles al tiempo y dejan el resto para el procesamiento por lotes.

Lambda frente a Kappa: qué patrón encaja

Estos dos nombres aparecen en casi todas las revisiones de arquitectura, por lo que conviene ser precisos.

Lambda fue propuesta por Nathan Marz alrededor de 2011. Ejecuta una capa de procesamiento por lotes y una capa transitoria en tiempo real en paralelo, con una capa de combinación que integra sus resultados. La capa de procesamiento por lotes proporciona respuestas precisas y completas con el tiempo. La capa de velocidad proporciona respuestas aproximadas de inmediato.

Kappa fue propuesta por Jay Kreps en una publicación de blog de 2014. Utiliza un único motor de procesamiento de streams para todos los datos y evita la complejidad de la doble canalización de Lambda. Los datos históricos se vuelven a procesar reproduciendo el registro mediante el mismo código. Ambas descripciones proceden del artículo de Lin.

La disyuntiva real

Lambda Kappa
Canalizaciones que hay que crear y ejecutar Dos (por lotes y streaming) Una
Lógica de negocio A menudo se escribe dos veces y debe mantenerse sincronizada Se escribe una vez
Reprocesamiento histórico Trabajo por lotes Reproducción desde el registro
Carga operativa Mayor Más bajo, pero necesita una retención duradera de los registros
Es mejor cuando Distintos estándares de precisión para distintos consumidores Un estándar coherente para todos los consumidores

La lógica duplicada es el coste real de Lambda. Cuando dos bases de código calculan los «ingresos», acabarán discrepando y alguien pasará una semana averiguando por qué.

Nuestra recomendación para la mayoría de los sistemas nuevos: empiece adoptando un enfoque Kappa. Mantenga un registro de eventos duradero, escriba la lógica una sola vez y vuelva a reproducirla cuando necesite corregir el historial. Añada una ruta de procesamiento por lotes independiente solo cuando tenga un motivo documentado, como el requisito de que la facturación sea exacta mientras un panel de operaciones tolere pequeños errores. Las tablas modernas de lakehouse que gestionan streaming y procesamiento por lotes sobre los mismos datos reducen aún más la diferencia, porque obtiene una sola capa de almacenamiento con dos formas de leerla.

Decisiones de diseño que determinan si resistirá

El diagrama parece el mismo en todos los proyectos. Las diferencias importantes se indican a continuación.

Datos tardíos y desordenados

Los eventos no llegan en el orden en que ocurrieron. Los dispositivos móviles se desconectan, las redes se ralentizan y los sistemas ascendentes reintentan las operaciones. Los procesadores de streams gestionan esto mediante marcas de agua: una estimación móvil del progreso del tiempo de los eventos, que se utiliza para decidir cuándo una ventana está suficientemente completa para publicarse.

La disyuntiva es directa. Una marca de agua ajustada publica los resultados rápidamente, pero descarta o gestiona incorrectamente los eventos rezagados. Una más holgada espera más tiempo, mejora la integridad, pero aumenta el retraso y el estado que el sistema debe conservar. Elija el valor a partir de la tardanza observada en sus datos reales, no de un valor predeterminado. Después, decida explícitamente qué ocurre con los eventos que llegan una vez cerrada la ventana: descartarlos, dirigirlos a una ruta de corrección o actualizar el resultado.

Control de presión y durabilidad

¿Qué ocurre cuando un almacén de datos descendente se ralentiza? Sin un plan, la respuesta es la pérdida de datos o un fallo en cascada. Una buena canalización almacena temporalmente los datos en el registro duradero, ralentiza a los productores o escala los consumidores y avisa a alguien, en lugar de descartar registros silenciosamente. Pida a su equipo que lo demuestre ralentizando deliberadamente un consumidor en un entorno de pruebas.

Garantías de entrega

«Exactamente una vez» es el objetivo para todo lo relacionado con las finanzas o el inventario, pero es una propiedad de toda la canalización, no de un solo componente. Cuando no se pueda garantizar de extremo a extremo, diseñe las escrituras para que sean idempotentes, de modo que un evento reproducido no se contabilice dos veces.

Cambio de esquema y calidad de los datos

Los productores cambian los formatos de sus eventos, normalmente sin previo aviso. Utilice un registro de esquemas, valide los datos durante la ingesta y envíe los registros incorrectos a un stream de cuarentena con una alerta, en lugar de dejar que contaminen las tablas descendentes. La misma disciplina que aplica a las versiones de la aplicación se aplica aquí: nuestro artículo sobre CI/CD para canalizaciones de datos muestra cómo las comprobaciones de esquemas condicionadas a las solicitudes de incorporación de cambios detectan cambios incompatibles antes de que lleguen a producción.

Seguridad y gobernanza

El streaming no le exime de la gobernanza. De hecho, eleva las exigencias, ya que los datos se mueven más rápido de lo que puede revisarlos una persona manualmente. Considere el control de acceso, el cifrado, la retención, el linaje y la propiedad de los esquemas como parte de la arquitectura, especialmente en entornos regulados como la sanidad, las finanzas y la administración pública, donde la gobernanza debe funcionar al mismo ritmo que los datos. Decida quién es responsable de cada tipo de evento, quién puede leerlo y durante cuánto tiempo se conserva antes de que fluya el primer evento.

Lleve la inteligencia al extremo cuando permita ahorrar dinero

En el caso de cámaras, sensores y máquinas que producen grandes volúmenes de datos, filtre y ejecute la inferencia localmente y envíe aguas arriba solo los agregados o las excepciones. Esto reduce el ancho de banda y el gasto en la nube, y acorta el tiempo de respuesta de las acciones locales.

Una ruta dimensionada adecuadamente desde la idea hasta producción

La mayoría de los proyectos de tiempo real que fracasaron no eligieron la tecnología equivocada. Intentaron transmitirlo todo de una vez. Una secuencia que funciona:

  1. Elija una decisión. Por ejemplo, marque los pedidos estancados en un plazo de dos minutos o muestre los niveles de existencias en directo por almacén. Defina el presupuesto de latencia y el coste de una respuesta incorrecta.
  2. Trace las fuentes. ¿Qué sistemas contienen los eventos? ¿Puede publicarlos o necesita CDC? ¿Cuáles de estos sistemas son lo bastante antiguos como para dificultarlo?
  3. Construya el tramo vertical más reducido posible. Una fuente, un trabajo de procesamiento, un almacén de servicio y un consumidor, con instrumentación del tiempo de extremo a extremo.
  4. Añada las rutas de fallo. Datos tardíos, reproducción, cuarentena, alertas y un manual de operaciones para el stream detenido.
  5. Mida el resultado. ¿Mejoró la decisión? ¿Menos roturas de stock, retenciones por fraude más rápidas o tiempos de respuesta más cortos? Si la cifra no cambia, deténgase antes de escalar.
  6. Amplíe de forma deliberada. Añada fuentes y consumidores de uno en uno, reutilizando la plataforma.

La justificación empresarial se aborda en nuestra visión general de por qué los datos en tiempo real cambian la forma en que operan las empresas. En resumen: el beneficio proviene de tomar decisiones más rápido, no de la tecnología de streaming en sí.

Desarrollar, comprar o combinar

Los servicios en la nube gestionados reducen el trabajo operativo, pero aumentan la dependencia del proveedor y los costes recurrentes. Los motores de código abierto ofrecen control, pero requieren personal que los opere. El código personalizado que se construye alrededor de cualquiera de las dos opciones es donde viven la lógica de su negocio y sus diferencias competitivas. La combinación adecuada depende del tamaño de su equipo, sus necesidades de cumplimiento normativo y cuántos sistemas deben conectarse. Desconfíe de cualquier enfoque que no pueda explicar qué ocurre a las 2:00 cuando algo falla.

Cómo ayuda Ridiculous Engineering

Diseñamos y construimos las piezas que conectan su problema de negocio con un sistema operativo: ingesta de eventos de fuentes heredadas y modernas, canalizaciones de procesamiento, almacenes de datos para servir información y los paneles y las aplicaciones que se apoyan en ellos. Nuestro trabajo de analítica de datos e inteligencia empresarial comienza con la decisión que necesita mejorar y la latencia que realmente requiere; después dimensionamos la arquitectura para adaptarla. Cuando el consumidor es una aplicación o un flujo de trabajo, nuestro equipo de desarrollo de software personalizado construye esa parte con los mismos ingenieros sénior, y nuestro trabajo de desarrollo de IA y automatización abarca los modelos y las acciones automatizadas alimentadas por datos en tiempo real. El precio depende del alcance, por lo que el siguiente paso es conversar sobre su caso de uso y elaborar un presupuesto.

Preguntas frecuentes

¿Cuál es la diferencia entre la analítica en tiempo real y la analítica de streaming?

En el uso cotidiano, los términos se solapan. El streaming describe la técnica: procesar eventos continuamente a medida que llegan. El tiempo real describe el resultado: datos lo bastante recientes como para actuar dentro de un plazo que usted define. Puede transmitir datos y aun así ofrecer resultados cada pocos minutos, lo que suele ser suficiente para las necesidades de la empresa.

¿Debería elegir Lambda o Kappa?

Para la mayoría de los sistemas nuevos, empiece con Kappa: una única canalización de streaming, lógica escrita una sola vez y un historial que se vuelve a procesar reproduciendo un registro duradero. Elija Lambda solo cuando dos consumidores necesiten garantías de precisión diferentes, como cifras exactas de facturación junto con un panel en tiempo real tolerante a cierta imprecisión. Sopese esta opción frente al coste de mantener dos rutas de código.

¿Qué velocidad necesita mi sistema?

Parta de la decisión y trabaje hacia atrás. Una comprobación de fraude puede requerir respuestas en menos de un segundo, mientras que un panel de inventario o ventas puede funcionar bien actualizándose cada pocos minutos. Cada reducción de la latencia aumenta el coste y el esfuerzo operativo, así que establezca el objetivo a partir del valor de la decisión, no de lo que pueden hacer las herramientas.

¿Necesitamos Kafka?

No siempre. Un registro de eventos duradero que pueda reproducirse es la capacidad importante, y Kafka es una forma habitual de obtenerla. Si su volumen es moderado y sus fuentes son pocas, puede bastar con un servicio de streaming gestionado o incluso con microprocesamientos por lotes frecuentes. Nuestra guía de Kafka para ingenieros puede ayudarle a decidir.

¿Qué suele fallar con más frecuencia después del lanzamiento?

Las causas habituales son los cambios de esquema en los sistemas de origen, los eventos tardíos o duplicados y los almacenes de destino lentos que generan contrapresión. La validación durante la ingesta, las escrituras idempotentes, una ruta de cuarentena para los registros incorrectos y las alertas sobre el retraso solucionan la mayoría de estos problemas.

Fuentes

Ridiculous Engineering
Hable sobre su arquitectura de analítica
Comparta con nuestro equipo sus retos de datos y analítica para explorar una solución tecnológica práctica adaptada a su organización.
Panoramic view of the Roys Peak in New Zealand with low mountains in the distance under cloudscape
Open Source

Video

Open Source: 5 Keys To Success

Considering using open-source software for product development, internal operations, or customer-facing tools? Ridiculous Engineering shares five steps to keep in mind to help you build a successful open-source strategy.

Ridiculous EngineeringFeb 11, 2025

Data Analytics and Business Intelligence

Turn your data into useful decisions

We can help you connect data sources, plan your analytics architecture and build reporting that gives your team a clearer view of the business.