Grandes datos

Cómo Apache Kafka lleva la corriente de datos a la corriente principal

data

Uno de los proyectos de código abierto más emocionantes que surgieron del movimiento de big data es Apache Kafka. Originalmente incubado en LinkedIn, Kafka es ahora una parte cada vez más importante de la amplia comunidad de desarrollo de código abierto. De hecho, Kafka ha llegado a un momento crucial, ya que se utiliza como plataforma central para administrar la transmisión de datos en organizaciones que incluyen: operaciones de IoT, fraude y seguridad en la industria de servicios financieros y seguimiento de inventario de tiendas en la industria minorista, entre otros.

Kafka es uno de los mejores ejemplos de cómo LinkedIn dirige el código interno a una comunidad vibrante de código abierto.

Neha Narkhede, cofundadora y CTO de Confluent y exdirectora de infraestructura de transmisión en LinkedIn, conversa con Tecnopedia sobre las mejores formas para que las empresas adopten Kafka y administren datos de transmisión.

República tecnológica: ¿Cómo se convirtió Apache Kafka en la corriente principal de la empresa?

nahred: Según una encuesta reciente de la comunidad de Kafka, el 68 % de los usuarios de Kafka planea agregar más procesamiento de secuencias en los próximos 6 a 12 meses, y el 65 % de las organizaciones encuestadas planea contratar empleados con habilidades de Kafka en los próximos 12 meses porque las aplicaciones La cantidad de Los programas que usan Kafka continúan creciendo.

Viendo que Apache Kafka está en auge, pero ¿deberías usarlo? (República tecnológica)

En la Cumbre de Kafka reciente, escuchamos que compañías como Uber, Netflix, Dropbox, HomeAway, Goldman Sachs y más están usando Kafka para tomar decisiones comerciales en tiempo real.

Cobertura de Big Data de lectura obligada

Por ejemplo, Uber mejoró su sistema de procesamiento de flujo para manejar muchos casos de uso en Uber Marketplace, y Kafka desempeñó un papel importante en la creación de canalizaciones de datos sólidas y eficientes. Uno de los ejemplos más comunes es el aumento de precios. Imagine obtener todos los datos para hacer esto en tiempo real: desde la demanda del usuario hasta la cantidad de automóviles en la carretera, y cada minuto para decidir cuál debería ser el precio.

LEER  Revisión de herramientas de migración de datos

Este es un gran ejemplo de una canalización de datos en tiempo real.

HomeAway es otro gran ejemplo. Como líder en alquileres de vacaciones, tienen más de un millón de listados (y siguen creciendo). Con Kafka, HomeAway conecta fuentes de datos dispares para respaldar una variedad de casos de uso que incluyen monitoreo de SLA, pruebas A/B, segmentación de visitantes, detección de fraude, ETL en tiempo real y más.

Confluent, la compañía que cofundé después de dejar LinkedIn, se enfoca en escalar Apache Kafka usando la plataforma Confluent para satisfacer las necesidades de las empresas que necesitan administrar datos a escala y rápidamente. Esto incluye herramientas como Kafka Streams, Kafka Connect y Control Center, que brindan un nuevo nivel de visibilidad e intensidad operativa a sus clústeres de Kafka a gran escala.

República tecnológica: ¿En qué situaciones Kafka es definitivamente más adecuado como marco? ¿Qué caso de uso?

nahred: Los casos de uso más comunes de Kafka son para la transferencia de datos en tiempo real, la integración y el procesamiento de flujos en tiempo real.

Para la transferencia e integración de datos, los usuarios aplican Kafka Connect para conectar datos a aplicaciones para que todos los sistemas puedan acceder a los datos más recientes. Esto incluye cosas como datos de registro, cambios en la base de datos, datos de sensores y dispositivos, flujos de monitoreo, registros de datos de llamadas y datos de cotizaciones bursátiles.

¿Ve si Concord puede derrocar a Apache Spark de su trono de big data? (República tecnológica)

Para el procesamiento de transmisiones en tiempo real, Kafka Streams es una extensión de Kafka Core que permite a los desarrolladores de aplicaciones escribir consultas continuas, transformaciones, alertas activadas por eventos y funcionalidades similares sin necesidad de un marco de procesamiento de transmisiones dedicado. Estas capacidades se utilizan normalmente para el control de seguridad, operaciones en tiempo real (como Uber) y aplicaciones asincrónicas (como controles de inventario para minoristas).

República tecnológica: ¿Qué tan importante es la localidad de los datos cuando ejecuta este tipo de canalizaciones de datos en tiempo real? Escuché que al ejecutarse en DC/OS, Kafka puede leer datos localmente entre Kafka-Cassandra. ¿Cómo describiría la oportunidad de ejecutar marcos complementarios en el mismo clúster, en términos de por qué la industria se pasó a la abstracción implementada por Mesosphere DC/OS?

nahred: La administración de servicios a escala del centro de datos presenta muchas oportunidades de optimización que son difíciles de obtener cuando administra cada servicio individualmente. Si bien la capacidad de ubicar conjuntamente los servicios relacionados es un beneficio obvio, en algunos casos no tiene sentido, lo que necesita es la capacidad de asignar recursos dedicados a aplicaciones con estado para el aislamiento. Esto último es lo que necesita cuando implementa aplicaciones con estado como Kafka y Cassandra, y Mesos agrega soporte para expresar los requisitos de implementación avanzados necesarios para administrar aplicaciones con estado a escala.

Nos aseguramos de que la implementación de Mesos de Confluent Platform mantenga la localización de datos cuando sea necesario (por el propio agente). Nuestros componentes, el agente Kafka REST y el registro de esquemas, prácticamente no tienen estado y pueden ejecutarse dentro de este tipo de marcos. Y los servicios con estado, como los corredores de Kafka, se pueden administrar de diferentes maneras. Ambos servicios son necesarios en toda la Plataforma Confluent. Brinda a los clientes una mayor flexibilidad al admitir una plataforma completa.

República tecnológica: ¿Cuál es la importancia del programador secundario Mesosphere DC/OS? ¿Por qué atraer el apoyo de socios/ecosistemas (por ejemplo, de la multitud de Confluent/DataStax) está en una posición diferente?

nahred: Los diferentes servicios tienen diferentes requisitos para los recursos del clúster y la implementación. El programador de dos niveles aborda las necesidades de implementación de aplicaciones con estado, como Kafka, que necesitan optimizar la ubicación de los datos tanto como sea posible para ahorrar ancho de banda de E/S y red. Esto brinda a los clientes una mejor experiencia operativa sin sacrificar el rendimiento proporcionado por Kafka.

LEER  Cómo crear una base de datos relacional MySQL en AWS

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba