이 장에서는 Kafka CDC 데이터를 Flink SQL을 사용하여 OpenSearch와 통합하는 방법을 자세히 설명합니다. 아키텍처는 Debezium을 사용하여 PostgreSQL에서 데이터 변경 사항을 캡처하고, Kafka를 통해 스트리밍한 다음, Flink로 처리하여 OpenSearch에 쓰는 방식을 포함합니다. PostgreSQL, Kafka, Debezium, Flink 및 OpenSearch와 같은 필수 구성 요소를 설정하는 것이 중요한데, 이는 종종 Docker Compose를 사용하여 관리됩니다. Kafka 및 OpenSearch용 특정 Flink 커넥터 JAR을 Flink 라이브러리에 추가해야 합니다. 데이터를 저장하기 위해 미리 정의된 매핑을 가진 OpenSearch 인덱스가 생성됩니다. Flink SQL 스크립트는 Kafka에서 CDC 데이터를 읽어 OpenSearch에 쓰는 방식으로 정의됩니다. 이 스크립트는 Kafka 소스 및 OpenSearch 싱크 테이블을 생성하고 INSERT 문을 사용하여 데이터를 변환하고 라우팅합니다. 그런 다음 Flink SQL 클라이언트를 사용하여 Flink 작업을 실행하여 데이터를 처리합니다. 마지막으로 인덱스를 쿼리하여 OpenSearch에서 데이터를 확인합니다. 이는 데이터베이스 변경 사항에서 OpenSearch의 검색 가능한 인덱스까지의 완전한 CDC 파이프라인을 보여줍니다. 이 프로세스를 통해 검색 및 분석을 위해 데이터베이스 변경 사항을 거의 실시간으로 인덱싱할 수 있습니다.
dev.to
Connecting RDBs and Search Engines — Chapter 4 Part 2
