ETL 및 변환 맵 소비자를 사용하여 데이터 임포트

  • 릴리스 버전: Zurich
  • 업데이트 날짜 2025년 07월 31일
  • 소요 시간: 5분
  • ETL 정의 및 변환 맵을 사용하여 Kafka 이벤트를 처리합니다. ETL 정의 및 변환 맵은 예약된 임포트를 통해 데이터를 가져올 때 사용할 변환 논리를 지정합니다. 동일한 ETL 정의 및 변환 맵을 사용하여 Kafka를 통해 수신된 이벤트를 변환할 수 있습니다.

    시작하기 전에

    프로시저

    1. ETL을 사용하고 맵 소비자 메시지를 변환하는 주제를 만듭니다.
      1. 다음 명령을 사용하여 Hermes에서 주제를 생성합니다.
        이 예제에서 주제 이름은 topic2입니다.
        bin/kafka-topics.sh --create --command-config config/bootcamp.properties  --bootstrap-server <instance name>.service-now.com:4000,<instance name>.service-now.com:4001,<instance name>.service-now.com:4002, <instance name>.service-now.com:4003 --topic snc.<instance name>.topic2
        <인스턴스 이름>을 인스턴스 이름으로 바꿔야 합니다.
      2. 주제를 보려면 인스턴스에 로그인하여 모두 > 통합 허브 > 스트림 커넥트 > 주제.
        주:
        주제를 생성하는 데 약 10분이 걸립니다.
    2. 주제의 데이터를 사용할 ETL 소비자를 생성합니다.
      1. 다음으로 이동 모두 > 통합 허브 > 소비자 > ETL 소비자.
      2. 새로 만들기를 선택합니다.
      3. Kafka 소비자 양식에서 이름 필드에 이름을 입력합니다.
        이 예에서는 Member Import라는 이름을 사용합니다.
      4. 견고한 임포트 세트 변환기 필드의 경우 기존의 강력한 임포트 세트 변환기를 선택합니다.
        강력한 임포트 세트 변환기의 경우 단일 열에 데이터를 저장하는 옵션을 사용하지 않는 것을 선택하십시오. 메시지를 볼 수 있으려면 강력한 임포트 세트 변환기에 자세한 정보 표시 옵션이 활성화되어 있는지 확인합니다.
      5. Data in single column(단일 열의 데이터) 옵션을 선택 취소합니다.
        이 옵션은 단일 열에 데이터가 있는 임포트 세트 테이블에 대해서만 선택해야 합니다.
      6. 열 매핑레이블로 설정합니다.

        즉, 입력 메시지의 JSON 키가 임포트 세트 테이블의 열 레이블에 매핑됩니다.

        Kafka ETL 소비자 양식입니다.
      7. 양식을 저장합니다.
      8. Kafka 스트림 생성 소비자를 위해.
      9. Kafka 스트림 양식에서 다음 필드 값을 설정합니다.
        • Topic2 스트림대한 이름입니다.
        • 주제를 앞서 생성한 주제인 topic2로 바꿉니다.
        • 최대 동시성은1입니다.
        • 소비 시작대상 첫 번째 활성화 후 받은 메시지입니다.
        • 자동으로 최적화를 위한 메시지 처리.
      10. 관련 링크 아래에서 활성화 링크를 선택합니다.

        활성화된 구독을 볼 수 있어야 합니다.

        topic2에 대한 Kafka 스트림 양식 예.
    3. topic2에 메시지를 게시합니다.
      1. 다음 명령을 실행하여 topic2에 메시지를 게시합니다.
        bin/kafka-console-producer.sh --topic snc.<instance name>.topic2  --producer.config  config/bootcamp.properties  --bootstrap-server <instance name>.service-now.com:4000,<instance name>.service-now.com:4001,<instance name>.service-now.com:4002,<instance name>.service-now.com:4003

        <인스턴스 이름>을 인스턴스 이름으로 바꿔야 합니다.

        이 명령은 메시지를 입력하라는 메시지를 표시합니다.

      2. 다음 JSON 메시지를 보냅니다.
        {"city":"San Diego","name":"Jhon","id":"SN001","state":"California"}
        어떤 값으로든 이 메시지를 보낼 수 있지만 JSON 메시지 키는 임포트 세트 테이블 레이블과 일치해야 합니다.
      3. 생성한 ETL 소비자로 다시 이동합니다.

        약 1분 후에 데이터가 임포트 세트를 통해 임포트되었을 것입니다.

        임포트 세트 탭이 채워진 Kafka 소비자 양식입니다.
      4. 임포트 세트에 대한 자세한 내용을 보려면 임포트 세트 번호를 선택합니다.
        임포트 세트의 상세 뷰입니다.
      5. 임포트 세트 행에 대한 자세한 내용을 보려면 임포트 세트 행 번호를 선택합니다.
        임포트 세트 행의 상세 뷰
    4. 데이터를 사용할 변환 맵 소비자를 만듭니다.
      1. 다음으로 이동 모두 > 통합 허브 > 소비자 > 변환 맵 소비자.
      2. 새로 만들기를 선택합니다.
      3. 변환 맵 소비자 양식에서 이름 필드에 이름을 입력합니다.
      4. 변환 맵 필드에서 기존 변환 맵을 선택합니다.
        변환 맵 소비자 양식입니다.
      5. 양식을 저장합니다.
      6. Kafka 스트림 생성 소비자를 위해.
      7. Kafka 스트림 양식에서 다음 필드 값을 설정합니다.
        • 변환 맵 스트림이름입니다.
        • 주제를 앞서 생성한 주제인 topic2로 바꿉니다.
        • 최대 동시성은1입니다.
        • 소비 시작대상 첫 번째 활성화 후 받은 메시지입니다.
        • 자동으로 최적화를 위한 메시지 처리.
      8. 관련 링크 아래에서 활성화 링크를 선택합니다.

        활성화된 구독을 볼 수 있어야 합니다.

        구독 정보가 있는 변환 맵 소비자에 대한 Kafka 스트림 양식입니다.
    5. topic2에 메시지를 게시합니다.
      1. 다음 명령을 실행하여 topic2에 메시지를 게시합니다.
        bin/kafka-console-producer.sh --topic snc.<instance name>.topic2  --producer.config  config/bootcamp.properties  --bootstrap-server <instance name>.service-now.com:4000,<instance name>.service-now.com:4001,<instance name>.service-now.com:4002,<instance name>.service-now.com:4003

        <인스턴스 이름>을 인스턴스 이름으로 바꿔야 합니다.

        이 명령은 메시지를 입력하라는 메시지를 표시합니다.

      2. 다음 JSON 메시지를 보냅니다.
        {"city":"San Diego","name":"Jhon","id":"SN001","state":"California"}
        어떤 값으로든 이 메시지를 보낼 수 있지만 JSON 메시지 키는 임포트 세트 테이블 레이블과 일치해야 합니다.
      3. 생성한 변환 맵 소비자로 이동합니다.
        약 1분 후에 데이터가 임포트 세트를 통해 임포트되었을 것입니다.
      4. 임포트 세트에 대한 자세한 내용을 보려면 위의 3d 단계와 같이 임포트 세트 번호를 선택합니다.

    다음에 수행할 작업

    Kafka 생산자 단계 및 ProducerV2 API를 사용하여 메시지 게시.