Apache Kafka용 Dataflow 관리형 I/O

관리형 I/O는 Apache Kafka에 읽기 및 쓰기를 지원합니다.

요구사항

Java용 Apache Beam SDK 버전 2.58.0 이상이 필요합니다.

구성

관리형 I/O는 Apache Kafka에 다음 구성 매개변수를 사용합니다.

읽기 및 쓰기 구성 데이터 유형 설명
bootstrap_servers 문자열 필수. 쉼표로 구분된 Kafka 부트스트랩 서버 목록입니다. 예: localhost:9092
topic 문자열 필수. 읽거나 쓸 Kafka 주제입니다.
file_descriptor_path 문자열 설정된 프로토콜 버퍼 파일 설명자의 경로입니다. data_format"PROTO"인 경우에만 적용됩니다.
data_format 문자열 메시지의 형식입니다. 지원되는 값: "AVRO", "JSON", "PROTO", "RAW". 기본값은 "RAW"이며 메시지 페이로드의 원시 바이트를 읽거나 씁니다.
message_name 문자열 프로토콜 버퍼 메시지의 이름입니다. data_format"PROTO"인 경우에 필요합니다.
schema 문자열

Kafka 메시지 스키마입니다. 예상되는 스키마 유형은 데이터 형식에 따라 달라집니다.

읽기 파이프라인의 경우 confluent_schema_registry_url이 설정되었으면 이 매개변수가 무시됩니다.

읽기 구성 데이터 유형 설명
auto_offset_reset_config 문자열

초기 오프셋이 없거나 현재 오프셋이 Kafka 서버에 더 이상 없는 경우의 동작을 지정합니다. 다음과 같은 값이 지원됩니다.

  • "earliest": 오프셋을 가장 빠른 오프셋으로 재설정합니다.
  • "latest": 오프셋을 최신 오프셋으로 재설정합니다.

기본값은 "latest"입니다.

confluent_schema_registry_subject 문자열 Confluent 스키마 레지스트리의 제목입니다. confluent_schema_registry_url이 지정된 경우 필수입니다.
confluent_schema_registry_url 문자열 Confluent 스키마 레지스트리의 URL입니다. 지정하면 schema 매개변수가 무시됩니다.
consumer_config_updates 지도 Kafka 소비자의 구성 매개변수를 설정합니다. 자세한 내용은 Kafka 문서의 소비자 구성을 참조하세요. 이 매개변수를 사용하여 Kafka 소비자를 맞춤설정할 수 있습니다.
max_read_time_seconds int 최대 읽기 시간(초)입니다. 이 옵션은 제한된 PCollection을 생성하며 주로 테스트 또는 기타 비프로덕션 시나리오에 사용됩니다.
쓰기 구성 데이터 유형 설명
producer_config_updates 지도 Kafka 프로듀서의 구성 매개변수를 설정합니다. 자세한 내용은 Kafka 문서의 프로듀서 구성을 참조하세요. 이 매개변수를 사용하여 Kafka 프로듀서를 맞춤설정할 수 있습니다.

Avro 또는 JSON 메시지를 읽으려면 메시지 스키마를 지정해야 합니다. 스키마를 직접 설정하려면 schema 매개변수를 사용하세요. Confluent 스키마 레지스트리를 통해 스키마를 제공하려면 confluent_schema_registry_urlconfluent_schema_registry_subject 매개변수를 설정합니다.

프로토콜 버퍼 메시지를 읽거나 쓰려면 메시지 스키마를 지정하거나 file_descriptor_path 매개변수를 설정합니다.

자세한 내용과 코드 예시는 다음 주제를 참고하세요.