El conector de E/S administrada es una transformación de Apache Beam que proporciona una API común para crear fuentes y receptores.
Descripción general
Debes crear el conector de E/S administrada con el código de Apache Beam, como cualquier otro conector de E/S. Especificas una fuente o un receptor para crear una instancia y pasar un conjunto de parámetros de configuración. También puedes colocar los parámetros de configuración en un archivo YAML y proporcionar una URL al archivo.
En el backend, Dataflow trata el conector de E/S administrada como un servicio, lo que permite que Dataflow administre las operaciones de entorno de ejecución del conector. Luego, puedes enfocarte en la lógica empresarial de la canalización, en lugar de administrar estos detalles.
Para obtener más información sobre la API de E/S administrada, consulta Managed
en la documentación del SDK de Java de Apache Beam.
Apache Iceberg
En el caso de Apache Iceberg, la E/S administrada usa los siguientes parámetros de configuración:
Nombre | Tipo de datos | Descripción |
---|---|---|
table |
string | Es el identificador de la tabla de Apache Iceberg. Examplo:
"db.table1" . |
catalog_name |
string | Es el nombre del catálogo. Ejemplo: "local" . |
catalog_properties |
mapa | Un mapa de propiedades de configuración para el catálogo de Apache Iceberg. Las propiedades obligatorias dependen del catálogo. Para obtener más información, consulta CatalogUtil en la documentación de Apache Iceberg. |
config_properties |
mapa | Un conjunto opcional de propiedades de configuración de Hadoop. Para obtener más información, consulta CatalogUtil en la documentación de Apache Iceberg. |
Para obtener más información, incluidos ejemplos de código, consulta los siguientes temas:
Apache Kafka
En el caso de Apache Iceberg, la E/S administrada usa los siguientes parámetros de configuración:
Lee y escribe la configuración | Tipo de datos | Descripción |
---|---|---|
bootstrap_servers |
string | Obligatorio. . Una lista separada por comas de servidores de arranque de Kafka.
Ejemplo: localhost:9092 . |
topic |
string | Obligatorio. El tema de Kafka desde el que se leerá. |
file_descriptor_path |
string | Es la ruta de acceso a un conjunto de descriptores de archivos de búfer de protocolo. Solo se aplica si data_format es "PROTO" . |
data_format |
string | Es el formato de los mensajes. Valores admitidos: "AVRO" ,
"JSON" , "PROTO" , "RAW" . El valor predeterminado es "RAW" , que lee o escribe los bytes sin procesar de la carga útil del mensaje. |
message_name |
string | Es el nombre del mensaje del búfer de protocolo. Obligatorio si data_format es "PROTO" . |
schema |
string | El esquema de mensajes de Kafka. El tipo de esquema esperado depende del formato de datos:
En el caso de las canalización de lectura, este parámetro se ignora si se configura |
Se lee la configuración | ||
auto_offset_reset_config |
string | Especifica el comportamiento cuando no hay un desplazamiento inicial o cuando el desplazamiento actual ya no existe en el servidor de Kafka. Se admiten los siguientes valores:
El valor predeterminado es |
confluent_schema_registry_subject |
string | El asunto de un registro de esquemas de Confluent. Obligatorio si se especifica confluent_schema_registry_url . |
confluent_schema_registry_url |
string | Es la URL de un registro de esquemas de Confluent. Si se especifica, se ignora el parámetro schema . |
consumer_config_updates |
mapa | Establece parámetros de configuración para el consumidor de Kafka. Para obtener más información, consulta Configuraciones de consumidores en la documentación de Kafka. Puedes usar este parámetro para personalizar el consumidor de Kafka. |
max_read_time_seconds |
int | Es el tiempo de lectura máximo, en segundos. Esta opción produce un PCollection limitado y está destinada principalmente a pruebas o a otras situaciones que no son de producción. |
Cómo escribir la configuración | ||
producer_config_updates |
mapa | Establece los parámetros de configuración para el productor de Kafka. Para obtener más información, consulta Configuraciones de productores en la documentación de Kafka. Puedes usar este parámetro para personalizar el productor de Kafka. |
Para leer mensajes Avro o JSON, debes especificar un esquema de mensaje. Para configurar un esquema directamente, usa el parámetro schema
. Para proporcionar el esquema a través de un registro de esquemas de Confluent, configura los parámetros confluent_schema_registry_url
y confluent_schema_registry_subject
.
Para leer o escribir mensajes de Protocol Buffer, especifica un esquema de mensaje o configura el parámetro file_descriptor_path
.