Secciones

¿Qué es un servicio de Kafka?

Copiar URL

Es una oferta de servicios de nube de la plataforma de transmisión de datos denominada Apache Kafka. 

No es sencillo implementar Apache Kafka según sea necesario, sobre todo en un entorno de nube híbrida. Por eso muchos usuarios que se dedican a la transmisión de datos eligen un servicio de Kafka en el que la gestión de la infraestructura y el sistema estén a cargo de un proveedor de servicios.

Apache Kafka es una plataforma distribuida y open source de transmisión de datos que permite publicar, almacenar y procesar flujos de registros de forma inmediata, así como también suscribirse a ellos. Está diseñada para administrar los flujos de datos de varias fuentes y distribuirlos a diversos usuarios.

Apache Kafka se creó para trabajar con enormes cantidades de datos; por eso, es la solución adecuada para las aplicaciones empresariales. Además, permite gestionar la transmisión de datos con rapidez, escalabilidad horizontal y tolerancia a los fallos.

Apache Kafka es ideal para los desafíos del 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.

Apache Kafka es una excelente opción para los desarrolladores que trabajan con microservicios y que usan la integración asíncrona y basada en los eventos, ya que puede potenciar el uso de la integración sincrónica y de las interfaces de programación de aplicaciones (API).

La transmisión de datos es el flujo permanente de información inmediata, que suele representarse como un registro actualizado de los cambios o los eventos que se hayan producido en un conjunto de datos.

Los casos prácticos de transmisión de datos pueden incluir cualquier situación que requiera una respuesta inmediata a distintos eventos, desde las operaciones financieras hasta los datos del Internet de las cosas (IoT) y el control de pacientes en hospitales. 

El software que interactúa con los datos transmitidos permite procesarlos en el instante en el que se reciben; para ello, por lo general utiliza el modelo de arquitectura basada en eventos.

Con un modelo de flujo de eventos, los programas que los consumen pueden leerlos desde cualquier parte del flujo y unirse a él en cualquier momento. Un evento básico de transmisión de datos incluye una clave, un valor y una marca de tiempo. Una plataforma de transmisión de datos recibe eventos y procesos, o transforma el flujo de eventos. El procesamiento del flujo de eventos se puede usar para encontrar patrones en los flujos de datos.

A pesar de todos los beneficios de Apache Kafka, implementarlo en un entorno de nube híbrida a escala puede ser muy complejo. Los servicios de transmisión de datos tienen requisitos mucho más estrictos que otras aplicaciones de datos. 

Los flujos de datos deben enviar información secuenciada de manera inmediata, y deben ser uniformes y estar disponibles todo el tiempo. La cantidad de datos sin procesar en un flujo puede aumentar rápidamente. Los flujos de datos deben dar prioridad a la secuenciación, la uniformidad y la disponibilidad de los datos, incluso en los períodos de mayor actividad. También deben estar diseñados para resistir en caso de fallas parciales del 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 importantes. Los brokers de datos de Apache Kafka 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.

Por estos desafíos, muchos usuarios de Apache Kafka eligen un servicio gestionado de nube en el que la administración de la infraestructura y el sistema están a cargo de un proveedor de servicios.

Algunas de las ventajas de usar un servicio de Kafka son:

  • La gestión de la infraestructura está garantizada, lo cual permite que los equipos se concentren en el desarrollo de aplicaciones y en otras competencias importantes.
  • Mayor velocidad en el desarrollo de aplicaciones, ya que los equipos pueden comenzar a diseñarlas de inmediato e implementar nuevas tecnologías con rapidez.
  • Un gran ecosistema de servicios de nube adicionales, que también simplifican la distribución de aplicaciones basadas en flujos.
  • Conectores que vinculan los brokers de Kafka con los servicios distribuidos, lo cual permite consumir y compartir los datos transmitidos entre las aplicaciones y los sistemas con mayor facilidad.
  • Precios basados en el consumo, para que los clientes solo paguen por lo que necesitan en ese momento.

Los clústeres de Apache Kafka que se ejecutan en una plataforma gestionada de Kubernetes pueden extenderse a los entornos locales y a las nubes públicas, privadas o híbridas, y utilizar diferentes sistemas operativos.
 

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.

Artículos relacionados

Artículo

¿Qué es la integración?

¿Desea saber qué es la integración? Obtenga información acerca de qué es, cómo incorporarla y por qué es mucho mejor con un enfoque open source.

Artículo

¿Qué es Apache Kafka?

Apache Kafka es una plataforma distribuida de transmisión de datos que permite publicar, almacenar y procesar flujos de registros, así como suscribirse a ellos, de forma inmediata.

Artículo

¿Qué es una API?

Una API o interfaz de programación de aplicaciones es un conjunto de definiciones y protocolos que se usa para diseñar e integrar el software de las aplicaciones.

Más información sobre la integración

Productos

Red Hat Integration

Conjunto completo de tecnologías de integración y mensajería.

Red Hat Runtimes

Conjunto de productos y herramientas para desarrollar y mantener aplicaciones creadas en la nube.

Red Hat Process Automation

Conjunto de productos para automatizar los procesos y decisiones de la empresa de manera inteligente.

Red Hat Cloud Services

Los servicios de nube de Red Hat® incluyen aplicaciones, plataformas y servicios de datos alojados y gestionados que optimizan la experiencia en la nube híbrida.

Contenido adicional

Ebook

Integración ágil: el plano técnico de la arquitectura empresarial

VISION GENERAL

Red Hat Cloud Services

Servicios gestionados para el desarrollo en la nube

Capacitación

Curso de capacitación gratuito

Red Hat Agile Integration Technical Overview

Illustration - mail

Obtenga más contenido como este

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