Cuenta Iniciar sesión
Jump to section

¿Qué es la transmisión de datos?

Copiar URL

La transmisión de datos hace referencia al flujo constante de información inmediata, y es el elemento principal del modelo de software de la arquitectura basada en eventos. Las aplicaciones modernas pueden utilizarla para procesar, almacenar y analizar los datos. 

Es como un registro constante de las modificaciones o los eventos que se producen en un conjunto de datos, el cual suele cambiar con mucha rapidez.

Los conjuntos grandes y cambiantes, que funcionan como fuentes de transmisión de datos, son muy variados: las transacciones financieras, la información de los sensores del Internet de las cosas (IoT), las operaciones logísticas, las órdenes de compra minorista o el control de los pacientes en los hospitales. La transmisión de datos es un tipo de mensajería de última generación; por eso, es ideal para las situaciones que requieren una respuesta inmediata a los acontecimientos.

Un claro ejemplo son los datos de los eventos, los cuales constituyen la base para la arquitectura basada en eventos, que combina los microservicios sin conexión directa como parte del desarrollo ágil.

Los usuarios de las aplicaciones buscan experiencias digitales con respuesta inmediata. Las aplicaciones que pueden utilizar y procesar los datos mejoran el rendimiento y la satisfacción de los clientes.

Tradicionalmente, aquellas que necesitaban responder de forma inmediata a los eventos dependían de las bases de datos y de los sistemas de procesamiento de mensajes; sin embargo, estos ya no pueden lidiar con la enorme cantidad de datos que se generan hoy en día. Por ejemplo, es posible que los sistemas tradicionales basados en solicitudes tengan dificultades para responder en poco tiempo a las solicitudes de datos, las cuales provienen de diversas fuentes y cambian rápidamente.

Con el modelo de flujo de eventos, estos se escriben en un registro, en lugar de almacenarse en la base de datos. Además, los programas que los consumen no solo pueden leerlos desde cualquier parte del flujo, sino también unirse a él en cualquier momento.

El procesamiento de los flujos de eventos se utiliza para detectar patrones significativos en ellos, y emplea una plataforma de transmisión de datos para incorporar los eventos y procesar o transformar los flujos.

La transmisión de datos implica el uso de aplicaciones que procesan la información de manera inmediata. Estos son algunos de los casos prácticos comunes:

  • Experiencias digitales que dependen del acceso inmediato a la información
  • Aplicaciones de microservicios que respaldan el desarrollo ágil de sistemas de software
  • Casos de transmisión que modernizan las aplicaciones que dependen de las bases de datos, las cuales solían basarse en el procesamiento por lotes
  • Análisis inmediatos, especialmente los que incorporan datos de varias fuentes
  • Entornos de edge computing que combinan los datos de varios dispositivos y sistemas diferentes

Las aplicaciones diseñadas para la mensajería, la geolocalización, las transacciones bursátiles, la detección de fraudes, la gestión de inventarios, el análisis de marketing, la supervisión de sistemas de TI y los datos del IoT industrial son algunos casos prácticos conocidos de transmisión de datos.

Hoy en día, la herramienta más utilizada para la transmisión inmediata de grandes cantidades de datos es Apache Kafka, una solución distribuida y open source.

Los desarrolladores de software utilizan Kafka para diseñar canales de procesamiento de datos y aplicaciones para transmitirlos. Con esta tecnología, las aplicaciones pueden:

  • Publicar flujos de registros y suscribirse a ellos
  • Almacenar flujos de registros
  • Procesar los registros a medida que se generan

Kafka también permite gestionar la transmisión de datos con rapidez, capacidad de ajuste y tolerancia a los errores. Además, puede reducir la latencia a milisegundos, ya que disminuye la necesidad de contar con integraciones directas entre las fuentes para el intercambio de datos en ciertas aplicaciones. Los usuarios acceden a los datos en menos tiempo, lo cual puede ser una ventaja en los casos prácticos que requieren la disponibilidad inmediata de la información, como las operaciones de TI y el comercio electrónico, entre muchos otros.

Apache Kafka puede gestionar millones de datos por segundo, así que es ideal para abordar los desafíos relacionados con el big data. En muchos casos prácticos de procesamiento, como el IoT y las redes sociales, los datos aumentan exponencialmente y pueden sobrecargar en poco tiempo una aplicación diseñada en función del volumen de datos actual.

Por definición, los flujos de datos deben transmitir información secuenciada de forma inmediata. Las aplicaciones de transmisión de datos necesitan que los flujos sean uniformes y estén siempre disponibles, incluso durante los períodos de mayor actividad. Sin embargo, distribuir o utilizar un flujo de datos que cumpla con estas características puede ser todo un desafío.

La cantidad de datos sin procesar en un flujo puede aumentar rápidamente. Piense en el crecimiento exponencial y repentino de los datos nuevos que generan las transacciones bursátiles durante una venta masiva de acciones en el mercado, las publicaciones en las redes sociales durante un evento deportivo importante o la actividad en los registros durante una falla del sistema. La función de capacidad de ajuste debe incorporarse a los flujos de datos en la etapa de diseño. Incluso en los períodos de mayor actividad, deben priorizar la secuenciación, la uniformidad y la disponibilidad de los datos. También deben estar diseñados para resistir en caso de que se produzcan fallas parciales en el sistema.

En un entorno distribuido de nube híbrida, un clúster de transmisión de datos exige que se tengan en cuenta algunos aspectos específicos. Los agentes típicos de transmisión de datos son sistemas con estado y deben preservarse en caso de que se reinicie el equipo. El ajuste requiere una organización minuciosa de los sistemas, para garantizar que los servicios de mensajería funcionen según lo previsto y que no se pierda ningún registro.

Ventajas de utilizar un servicio de transmisión de datos

El problema de ofrecer una plataforma de transmisión de datos compleja, con respuesta inmediata y de alta disponibilidad es que puede implicar el uso de una cantidad importante de recursos. En general, es necesario acudir a especialistas y sistemas de hardware externos al departamento de TI de la empresa.

Por eso, muchos usuarios de la transmisión de datos eligen un servicio de nube gestionado en el que la administración de la infraestructura y el sistema están a cargo de un proveedor de servicios. Esta alternativa permite que las empresas se centren en sus actividades más importantes, en lugar de encargarse de la gestión y la administración de una solución compleja de transmisión de datos.

Pruebe Kafka sin costo

Acceda a Red Hat OpenShift Streams for Apache Kafka, un servicio de Kafka totalmente gestionado y alojado para las aplicaciones de flujos de datos.

Recursos relacionados

Serie de aprendizaje

Obtenga información sobre Kafka en Kubernetes

Nuestros especialistas le enseñarán a usar arquitecturas basadas en eventos con Apache Kafka y OpenShift.

Ebook

Simplifique la gestión de las aplicaciones en los entornos de Kubernetes

Aprenda a automatizar las tareas de gestión del ciclo de vida de las aplicaciones para que su empresa obtenga más beneficios.

Informe de analistas

Aplicaciones dirigidas por eventos con AMQ Streams de Red Hat

AMQ Streams de Red Hat puede ayudar a las empresas basadas en eventos a aprovechar Apache Kafka en OpenShift.

Illustration - mail

Obtenga más contenido como este

Suscríbase a nuestro boletín informativo: Red Hat Shares.