2.5. Kafka 연결 내의 데이터에 작업 적용
Kamelet과 Kafka 주제 간에 전달되는 데이터에 대해 작업을 수행하려면 Kamelet Binding 내의 중간 단계로 action Kamelets를 사용합니다.
2.5.1. 이벤트 데이터를 다른 대상 주제로 라우팅 링크 복사링크가 클립보드에 복사되었습니다!
Kafka 인스턴스에 대한 연결을 구성할 때 선택적으로 이벤트 데이터에서 주제 정보를 변환하여 이벤트가 다른 Kafka 주제로 라우팅되도록 할 수 있습니다. 다음 변환 동작 Kamelets 중 하나를 사용합니다.
-
regex 라우터 - 정규식과 대체 문자열을 사용하여 메시지의 주제를 수정합니다. 예를 들어 주제 접두사를 제거하거나 접두사를 추가하거나 주제 이름의 일부를 제거합니다. Regex Router Action Kamelet(
regex-router-action)을 구성합니다. -
timestamp - 원본 주제와 메시지의 타임스탬프를 기반으로 메시지의 주제를 수정합니다. 예를 들어 타임스탬프에 따라 다른 테이블 또는 인덱스에 써야 하는 싱크를 사용하는 경우입니다. 예를 들어 Kafka에서 Elasticsearch에 이벤트를 작성하려면 각 이벤트는 이벤트 자체의 정보를 기반으로 다른 인덱스로 이동해야 합니다. Timestamp 라우터 동작 Kamelet(
timestamp-router-action)을 구성합니다. -
메시지 TimeStamp - 원본 주제 값과 메시지 값 필드에서 들어오는 timestamp 필드를 기반으로 메시지의 주제를 수정합니다. Message Timestamp Router Action Kamelet(Message
-timestamp-router-action)을 구성합니다. -
서술자 - Predicate Filter Action Kamelet(
predicate-filter-action)을 구성하여 지정된 JSON 경로 표현식을 기반으로 이벤트를 필터링합니다.
사전 요구 사항
-
Kamelet Binding의 Kafka 항목에 데이터 소스를 연결하는 방법에 설명된 대로 싱크가
kafka-sinkKamelet인 Kamelet 바인딩 을 생성했습니다. - Kamelet Binding에 추가할 변환 유형을 알고 있습니다.
절차
대상 주제를 변환하려면 변환 동작 Kamelets 중 하나를 Kamelet Binding 내에서 중간 단계로 사용하십시오.
Kamelet Binding에 작업 Kameletlet을 추가하는 방법에 대한 자세한 내용은 Kamelet Binding에 작업 추가를 참조하십시오.
2.5.2. 특정 Kafka 항목에 대한 이벤트 데이터 필터링 링크 복사링크가 클립보드에 복사되었습니다!
다양한 Kafka 항목에 레코드를 생성하는 소스 Kamelet을 사용하고 하나의 Kafka 항목에 레코드를 필터링하려면 topic-name-matches-filter-action Kamelet을 Kamelet Binding의 중간 단계로 추가합니다.
사전 요구 사항
- YAML 파일에 Kamelet Binding을 생성했습니다.
- 이벤트 데이터를 필터링하려는 Kafka 항목의 이름을 알고 있습니다.
절차
Kamelet 바인딩을 편집하여
topic-name-matches-filter-actionKamelet을 소스와 sink Kamelets 간의 중간 단계로 포함합니다.일반적으로
kafka-sourceKamelet을 소스 Kamelet으로 사용하며 필요한topic매개변수의 값으로 주제를 제공합니다.다음 Kamelet Binding 예에서
kafka-sourceKamelet은test-topic, test-topic-2 및 test-topic-3Kafka 주제와topic-matches-filter-actionKamelet을 지정하여topic-test주제에서 이벤트 데이터를 필터링합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow kafka-sourceKamelet 이외의 소스 Kamelet에서 제공하는 항목을 필터링하려면 Kafka 주제 정보를 제공해야 합니다. 다음 예와 같이insert-header-actionKamelet을 사용하여 Kafka topic 필드를 중개 단계로 추가할 수 있습니다. 이 필드는 Kamelet Binding의topic-name-matches-filter-action단계에서 다음과 같습니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Kamelet Binding YAML 파일을 저장합니다.