Prefacio

Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com

Kafka Connect es una herramienta impresionante para construir canalizaciones de datos fiables y escalables. Forma parte de la popular plataforma de streaming Apache Kafka, y aunque puede que no reciba tanta atención como los brokers, clientes o Kafka Streams, Kafka Connect es una herramienta a tener en cuenta. Te permite introducir y extraer datos fácilmente de tus clusters de Kafka, e incluso duplicar datos entre clusters. Su diseño conectable permite construir potentes canalizaciones sin escribir una sola línea de código.

A ambos nos apasiona compartir conocimientos, ya sea presentándonos en conferencias, escribiendo artículos en blogs o simplemente ayudando a otros entusiastas de Kafka. Como resultado, hemos pasado mucho tiempo charlando sobre Kafka y Kafka Connect con usuarios y desarrolladores de todo el mundo. Como Kafka es una tecnología tremendamente popular, hay muchos recursos disponibles, como libros, entradas de blog y tutoriales. Muchos de ellos cubren Kafka Connect, pero vemos una falta de recursos que profundicen en sus diversos casos de uso, configuraciones y procesos operativos. Aunque Kafka Connect no es difícil de empezar a utilizar con conocimientos básicos, su flexibilidad y gama de funciones significan que tener un conocimiento más profundo de su funcionamiento puede marcar realmente la diferencia.

Ambos hemos dado muchas conferencias sobre Kafka Connect que van más allá de lo básico, pero en una sesión de 40 minutos no caben muchas cosas. Al escribir este libro, hemos reunido todos los conocimientos que hemos compartido en los últimos años sobre Kafka Connect, además de todo lo que no cabe en una sesión de conferencia o en una entrada de blog. Esto incluye nuestras propias experiencias individuales dirigiéndolo y los conocimientos que hemos adquirido ayudando y asesorando a los clientes. También hemos dedicado tiempo a profundizar en cada ajuste de configuración, métrica y API para ofrecer una explicación exhaustiva del funcionamiento de Kafka Connect. Esto ha implicado a menudo escribir plug-ins personalizados para probar rutas de código, estudiar a fondo el código y charlar con otros colaboradores de Kafka.

Este libro te proporcionará todos los conocimientos necesarios para construir canalizaciones de datos fiables para tus casos de uso y ejecutarlas en producción. Kafka: La Guía Definitiva1 es el texto de referencia para Kafka (ambos tenemos una copia en nuestro escritorio) y esperamos que este libro sea lo mismo para Kafka Connect.

Quién debería leer este libro

Este libro está escrito para todos los roles que interactúan con entornos Kafka Connect. Hemos optado por utilizar los términos ingenieros de datos, ingenieros de fiabilidad del sitio y desarrolladores para distinguir entre roles. Los ingenieros de datos diseñan y construyen canalizaciones para procesar y analizar datos. Esto incluye seleccionar las herramientas correctas, diseñar el flujo de datos y probar la canalización. Los ingenieros de fiabilidad del sitio son responsables de la implementación y administración de los entornos de Kafka Connect. Pueden gestionar un único clúster de Kafka Connect o muchos, y cada clúster puede estar ejecutando múltiples canalizaciones de datos. Por último, los desarrolladores personalizan Kafka Connect creando plug-ins personalizados. Se trata de un caso de uso avanzado, pero muchos de los conocimientos aplicables a esta función también son útiles para que los ingenieros de datos evalúen las herramientas disponibles.

En muchas organizaciones, es probable que sean los mismos ingenieros los que desempeñen las tres funciones, pero en organizaciones más grandes podrían ser equipos completamente distintos. Aunque dividimos el libro en varias partes para abarcar estos distintos papeles, probablemente te resultará útil comprenderlos todos.

No necesitas ningún conocimiento previo de Kafka o Kafka Connect para leer este libro. Si ya estás familiarizado con Kafka, no dudes en saltarte el Capítulo 2, ya que cubre los aspectos básicos de Kafka que necesitas comprender para utilizar Kafka Connect. Igualmente, si ya estás familiarizado con Kafka Connect, este libro sigue estando escrito pensando en ti. A lo largo del libro compartimos buenas prácticas y consejos avanzados para ayudarte a desarrollar aún más tus conocimientos.

Versiones de Kafka

Kafka es un proyecto muy activo, y cada nueva versión (publicada aproximadamente cada cuatro meses) aporta nuevas funciones y cambios. En algún momento tuvimos que dejar de revisar y elegir una versión para poder poner el libro en manos de los lectores. Nos decidimos por Kafka 3.5.0, publicada en junio de 2023, como la versión de Kafka a la que hacer referencia.

Cualquier cambio significativo en Kafka necesita primero el voto de la comunidad. Para facilitar esto, Kafka utiliza las Propuestas de Mejora de Kafka (KIP). Una KIP es un documento en la wiki de Kafka que describe la motivación del cambio, así como sus detalles técnicos. A lo largo del libro, mencionamos KIPs que son relevantes para las características y conceptos que cubrimos. Si te interesa una función concreta, te recomendamos que consultes el KIP relacionado para ver la motivación y la historia del cambio. Ten en cuenta, sin embargo, que a veces las implementaciones finales divergen de la propuesta original.

Convenciones utilizadas en este libro

En este libro se utilizan las siguientes convenciones tipográficas:

Cursiva

Indica nuevos términos, URL, direcciones de correo electrónico, nombres de archivo y extensiones de archivo.

Constant width

Se utiliza en los listados de programas, así como dentro de los párrafos para referirse a elementos del programa como nombres de variables o funciones, bases de datos, tipos de datos, variables de entorno, sentencias y palabras clave.

Constant width bold

Muestra comandos u otros textos que deben ser tecleados literalmente por el usuario.

<REPLACE_ME>

El texto entre corchetes angulares debe sustituirse por valores proporcionados por el usuario o por valores determinados por el contexto. Por ejemplo, si ejecutas un archivo para un conector llamado my-source, el texto puede mostrar /connectors/<CONNECTOR_NAME>/config, y debes actualizarlo para que sea /connectors/my-source/config.

Consejo

Este elemento significa un consejo o sugerencia.

Nota

Este elemento significa una nota general.

Advertencia

Este elemento indica una advertencia o precaución.

Aprendizaje en línea O'Reilly

Nota

Durante más de 40 años, O'Reilly Media ha proporcionado formación tecnológica y empresarial, conocimientos y perspectivas para ayudar a las empresas a alcanzar el éxito.

Nuestra red única de expertos e innovadores comparten sus conocimientos y experiencia a través de libros, artículos y nuestra plataforma de aprendizaje online. La plataforma de aprendizaje en línea de O'Reilly te ofrece acceso bajo demanda a cursos de formación en directo, rutas de aprendizaje en profundidad, entornos de codificación interactivos y una amplia colección de textos y vídeos de O'Reilly y de más de 200 editoriales. Para más información, visita https://oreilly.com.

Cómo contactar con nosotros

Dirige tus comentarios y preguntas sobre este libro a la editorial:

Tenemos una página web para este libro, donde se enumeran erratas, ejemplos y cualquier información adicional. Puedes acceder a esta página en https://oreil.ly/KafkaConnect.

Para obtener noticias e información sobre nuestros libros y cursos, visita https://oreilly.com.

Encuéntranos en LinkedIn: https://linkedin.com/company/oreilly-media.

Síguenos en Twitter: https://twitter.com/oreillymedia.

Míranos en YouTube: https://youtube.com/oreillymedia.

Agradecimientos

En primer lugar, nos gustaría dar las gracias a todos los colaboradores y miembros de la comunidad Apache Kafka. Esta comunidad vibrante y acogedora es una de las razones por las que Kafka es tan popular y sigue creciendo y mejorando continuamente. Un agradecimiento especial a Jay Kreps, que ha dedicado su tiempo a escribir el Prólogo de este libro.

También damos las gracias a los numerosos revisores que nos han proporcionado sus comentarios a lo largo del proceso de redacción de este libro: Robin Moffatt, Randall Hauch, Chris Egerton, Ryanne Dolan, Dale Lane, Gerard Ryan, Jakub Scholz, Paolo Patierno, Federico Valeri, Andrew Schofield y Chris Cranford. Vuestras aportaciones han marcado realmente la diferencia y han mejorado en gran medida la calidad de este libro. Además, damos las gracias a los lectores que nos enviaron sus comentarios tras leer la versión de acceso anticipado en el sitio web de O'Reilly.

Gracias a Eric Johnson y Jess Haberman por hacer realidad este libro y a Aaron Black y Gregory Hyman del equipo de O'Reilly. También damos las gracias a nuestro editor de desarrollo de O'Reilly, Jeff Bleiel, por toda su ayuda para conseguir escribir el libro y por ajustar los plazos para ajustarse a nuestras limitaciones de tiempo personales.

Queremos dar las gracias a todos los miembros del equipo Kafka de Red Hat por habernos dado el espacio necesario para trabajar en este libro durante muchos meses.

Mickael quiere dar las gracias a su familia y amigos por apoyarle a lo largo de este proyecto. Escribir un libro lleva mucho tiempo, y su ayuda fue muy importante para mantenerle centrado y permitirle terminar este libro.

Kate quiere dar las gracias a su marido, Russell, por su paciencia y apoyo durante el proceso de escritura. Sin su ayuda no habría podido compaginar la finalización de un libro con el hecho de ser madre primeriza. También quiere dar las gracias a sus padres por animarla constantemente en todos sus proyectos. Por último, Kate da las gracias a sus mentoras Holly y Erin por mostrarle de lo que son capaces las mujeres tecnológicas.

1 Gwen Shapira, Todd Palino, Rajini Sivaram y Krit Petty, Kafka: The Definitive Guide, 2ª Ed. (O'Reilly, 2021); Neha Narkhede, Gwen Shapira y Todd Palino, 1ª Ed. (2017).

Get Conexión Kafka now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.