Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
En esta sección se explican los conceptos e interacciones principales de la biblioteca de clientes de Kinesis (KCL). Estos conceptos son fundamentales para desarrollar y gestionar las aplicaciones de consumo de KCL.
-
Aplicación KCL para consumidores: una aplicación personalizada diseñada para leer y procesar registros de transmisiones de datos de Kinesis mediante la biblioteca de clientes de Kinesis.
-
Trabajador: las aplicaciones para consumidores de KCL suelen estar distribuidas y uno o más trabajadores se ejecutan simultáneamente. KCL coordina a los trabajadores para que consuman los datos del flujo de manera distribuida y equilibra la carga de manera uniforme entre varios trabajadores.
-
Planificador: una clase de alto nivel que un trabajador de KCL utiliza para empezar a procesar los datos. Cada trabajador de KCL tiene un programador. El programador inicializa y supervisa diversas tareas, como la sincronización de la información de los fragmentos de los flujos de datos de Kinesis, el seguimiento de las asignaciones de fragmentos entre los trabajadores y el procesamiento de los datos de la transmisión en función de los fragmentos asignados al trabajador. El programador puede adoptar diversas configuraciones que afectan a su comportamiento, como el nombre de la transmisión que se va a procesar y las credenciales. AWS El programador inicia la entrega de los registros de datos del flujo a los procesadores de registros.
-
Procesador de registros: define la lógica de cómo su aplicación de consumo de KCL procesa los datos que recibe de los flujos de datos. Debe implementar su propia lógica de procesamiento de datos personalizada en el procesador de registros. Un trabajador de KCL crea una instancia de un programador. A continuación, el programador crea una instancia de un procesador de registros por cada fragmento que tiene en arrendamiento. Un trabajador puede ejecutar varios procesadores de registros.
-
Arrendamiento: define la asignación entre un trabajador y un fragmento. Las aplicaciones de consumo de KCL utilizan los arrendamientos para distribuir el procesamiento de registros de datos entre varios trabajadores. Cada fragmento está vinculado a un solo trabajador mediante un contrato de arrendamiento en un momento dado y cada trabajador puede tener uno o más contratos de arrendamiento simultáneamente. Cuando un trabajador deja de ser titular de un contrato de arrendamiento por suspenderlo o incumplirlo, KCL asigna a otro trabajador para que se quede con el contrato de arrendamiento. Para obtener más información sobre el arrendamiento, consulta la documentación de Github: Ciclo de vida del arrendamiento
. -
Tabla de arrendamientos: es una tabla exclusiva de Amazon DynamoDB que se utiliza para realizar un seguimiento de todos los arrendamientos de la aplicación de consumo de KCL. Cada aplicación de consumo de KCL crea su propia tabla de arrendamientos. La tabla de arrendamientos se utiliza para mantener el estado de todos los trabajadores y coordinar el procesamiento de los datos. Para obtener más información, consulte Tablas de metadatos de DynamoDB y equilibrio de carga en KCL.
-
Los puntos de control son el proceso de almacenar de forma persistente en un fragmento la posición del último registro procesado correctamente. KCL gestiona los puntos de control para garantizar que el procesamiento se pueda reanudar desde la última posición del punto de control en caso de que un trabajador falle o se reinicie la aplicación. Los puntos de control se almacenan en la tabla de concesiones de DynamoDB como parte de los metadatos de la concesión. Esto permite a los trabajadores continuar procesando desde donde paró el trabajador anterior.