밀버스와 카프카 연결하기
이 빠른 시작 가이드에서는 벡터 데이터를 수집하기 위해 오픈 소스 kafka와 Zilliz Cloud를 설정하는 방법을 설명합니다.
1단계: kafka-connect-milvus 플러그인 다운로드하기
다음 단계를 완료하여 kafka-connect-milvus 플러그인을 다운로드하세요.
- 여기에서 최신 플러그인 zip 파일(
zilliz-kafka-connect-milvus-xxx.zip
)을 다운로드하세요.
2단계: Kafka 다운로드
- 여기에서 최신 kafka를 다운로드합니다.
- 다운로드한 파일의 압축을 풀고 kafka 디렉토리로 이동합니다.
$ tar -xzf kafka_2.13-3.6.1.tgz
$ cd kafka_2.13-3.6.1
3단계: Kafka 환경 시작하기
참고: 로컬 환경에 Java 8 이상이 설치되어 있어야 합니다.
모든 서비스를 올바른 순서로 시작하려면 다음 명령을 실행하세요:
ZooKeeper 서비스 시작
$ bin/zookeeper-server-start.sh config/zookeeper.properties
Kafka 브로커 서비스 시작
다른 터미널 세션을 열고 실행합니다:
$ bin/kafka-server-start.sh config/server.properties
모든 서비스가 성공적으로 시작되면 기본 Kafka 환경이 실행되고 사용할 준비가 된 것입니다.
- 자세한 내용은 공식 빠른 시작 가이드 양식 Kafka를 확인하세요: https://kafka.apache.org/quickstart
4단계: Kafka 및 Zilliz Cloud 구성하기
Kafka와 Zilliz Cloud가 설치되어 있고 올바르게 구성되었는지 확인합니다.
Kafka에 아직 토픽이 없는 경우, Kafka에서 토픽(예:
topic_0
)을 만드세요.$ bin/kafka-topics.sh --create --topic topic_0 --bootstrap-server localhost:9092
질리즈 클라우드에 아직 컬렉션이 없는 경우, 벡터 필드가 있는 컬렉션을 생성합니다(이 예제에서는 벡터가
dimension=8
). 질리즈 클라우드에서 다음 예제 스키마를 사용할 수 있습니다:참고: 양쪽의 스키마가 서로 일치하는지 확인하세요. 스키마에는 정확히 하나의 벡터 필드가 있습니다. 양쪽의 각 필드 이름은 정확히 동일합니다.
5단계: Kafka 인스턴스에 kafka-connect-milvus 플러그인 로드하기
1단계에서 다운로드한
zilliz-kafka-connect-milvus-xxx.zip
파일의 압축을 풉니다.zilliz-kafka-connect-milvus
디렉터리를 Kafka 설치의libs
디렉터리에 복사합니다.Kafka 설치의
config
디렉터리에 있는connect-standalone.properties
파일을 수정합니다.key.converter.schemas.enable=false value.converter.schemas.enable=false plugin.path=libs/zilliz-kafka-connect-milvus-xxx
Kafka 설치의
config
디렉터리에milvus-sink-connector.properties
파일을 생성하고 구성합니다.name=zilliz-kafka-connect-milvus connector.class=com.milvus.io.kafka.MilvusSinkConnector public.endpoint=https://<public.endpoint>:port token=***************************************** collection.name=topic_0 topics=topic_0
6단계: 커넥터 시작
이전 구성 파일로 커넥터를 시작하세요.
$ bin/connect-standalone.sh config/connect-standalone.properties config/milvus-sink-connector.properties
Kafka에서 방금 만든 Kafka 토픽에 메시지를 생성해 보세요.
bin/kafka-console-producer.sh --topic topic_0 --bootstrap-server localhost:9092 >{"id": 0, "title": "The Reported Mortality Rate of Coronavirus Is Not Important", "title_vector": [0.041732933, 0.013779674, -0.027564144, -0.013061441, 0.009748648, 0.00082446384, -0.00071647146, 0.048612226], "link": "https://medium.com/swlh/the-reported-mortality-rate-of-coronavirus-is-not-important-369989c8d912"}
Zilliz Cloud의 컬렉션에 엔티티가 삽입되었는지 확인합니다. 삽입에 성공하면 Zilliz Cloud에서 다음과 같이 표시됩니다:
지원
Kafka Connect Milvus 커넥터와 관련하여 도움이 필요하거나 궁금한 점이 있으면 언제든지 지원팀에 문의해 주세요: 이메일: support@zilliz.com