🚀 Experimente o Zilliz Cloud, o Milvus totalmente gerenciado, gratuitamente—experimente um desempenho 10x mais rápido! Experimente Agora>>

milvus-logo
LFAI
Home
  • Integrações

Ligar o Apache Kafka® ao Milvus/Zilliz Cloud para ingestão de dados vectoriais em tempo real

Neste guia de início rápido, mostramos como configurar o kafka de código aberto e o Zilliz Cloud para ingerir dados vectoriais.

Este tutorial explica como usar o Apache Kafka® para transmitir e ingerir dados vetoriais no banco de dados vetorial Milvus e no Zilliz Cloud (Milvus totalmente gerenciado), permitindo aplicativos avançados em tempo real, como pesquisa semântica, sistemas de recomendação e análise alimentada por IA.

O Apache Kafka é uma plataforma de streaming de eventos distribuídos concebida para pipelines de alto rendimento e baixa latência. É amplamente utilizado para recolher, armazenar e processar fluxos de dados em tempo real de fontes como bases de dados, dispositivos IoT, aplicações móveis e serviços na nuvem. A capacidade do Kafka de lidar com grandes volumes de dados faz dele uma importante fonte de dados de bancos de dados vetoriais como Milvus ou Zilliz Cloud.

Por exemplo, o Kafka pode capturar fluxos de dados em tempo real - como interações de utilizadores, leituras de sensores, juntamente com as suas incorporações de modelos de aprendizagem automática - e publicar estes fluxos diretamente no Milvus ou no Zilliz Cloud. Uma vez na base de dados vetorial, estes dados podem ser indexados, pesquisados e analisados de forma eficiente.

A integração do Kafka com o Milvus e o Zilliz Cloud proporciona uma forma perfeita de criar pipelines poderosos para fluxos de trabalho de dados não estruturados. O conetor funciona tanto para a implantação do Kafka de código aberto quanto para serviços hospedados, como Confluent e StreamNative.

Neste tutorial, usamos o Zilliz Cloud como uma demonstração:

Etapa 1: baixar o plug-in kafka-connect-milvus

Conclua as etapas a seguir para baixar o plug-in kafka-connect-milvus.

  1. Descarregue o ficheiro zip mais recente do plugin zilliz-kafka-connect-milvus-xxx.zip a partir daqui.

Etapa 2: Baixar o Kafka

  1. Baixe o kafka mais recente daqui.
  2. Descompacte o arquivo baixado e vá para o diretório kafka.
$ tar -xzf kafka_2.13-3.6.1.tgz
$ cd kafka_2.13-3.6.1

PASSO 3: Inicie o ambiente do Kafka

NOTA: Seu ambiente local deve ter o Java 8+ instalado.

Execute os seguintes comandos para iniciar todos os serviços na ordem correta:

  1. Iniciar o serviço ZooKeeper

    $ bin/zookeeper-server-start.sh config/zookeeper.properties
    
  2. Iniciar o serviço do corretor Kafka

    Abra outra sessão de terminal e execute:

    $ bin/kafka-server-start.sh config/server.properties
    

Quando todos os serviços tiverem sido iniciados com êxito, terá um ambiente Kafka básico a funcionar e pronto a utilizar.

  • verifique o guia oficial de início rápido do kafka para obter detalhes: https://kafka.apache.org/quickstart

Etapa 4: configurar o Kafka e o Zilliz Cloud

Certifique-se de que tem o Kafka e o Zilliz Cloud instalados e configurados corretamente.

  1. Se ainda não tiver um tópico no Kafka, crie um tópico (por exemplo, topic_0) no Kafka.

    $ bin/kafka-topics.sh --create --topic topic_0 --bootstrap-server localhost:9092
    
  2. Se ainda não tiver uma coleção no Zilliz Cloud, crie uma coleção com um campo vetorial (neste exemplo, o vetor tem dimension=8). Pode utilizar o seguinte exemplo de esquema no Zilliz Cloud:

    Nota: Certifique-se de que os esquemas de ambos os lados correspondem um ao outro. No esquema, existe exatamente um campo vetorial. Os nomes de cada campo em ambos os lados são exatamente os mesmos.

Etapa 5: carregar o plug-in kafka-connect-milvus na instância do Kafka

  1. descompacte o ficheiro zilliz-kafka-connect-milvus-xxx.zip que descarregou no Passo 1.

  2. copie os diretórios zilliz-kafka-connect-milvus para o diretório libs da sua instalação do Kafka.

  3. modifique o ficheiro connect-standalone.properties no diretório config da sua instalação do Kafka.

    key.converter.schemas.enable=false
    value.converter.schemas.enable=false
    plugin.path=libs/zilliz-kafka-connect-milvus-xxx
    
  4. crie e configure um ficheiro milvus-sink-connector.properties no diretório config da sua instalação do Kafka.

    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
    

Passo 6: Iniciar o conetor

  1. Inicie o conetor com o ficheiro de configuração anterior

    $ bin/connect-standalone.sh config/connect-standalone.properties config/milvus-sink-connector.properties
    
  2. Tente produzir uma mensagem para o tópico do Kafka que acabou de criar no 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"}
    
  3. Verifique se a entidade foi inserida na coleção no Zilliz Cloud. Aqui está o aspeto no Zilliz Cloud se a inserção for bem sucedida:

Suporte

Se precisar de assistência ou tiver dúvidas sobre o Kafka Connect Milvus Connector, não hesite em contactar o responsável pelo conetor: Correio eletrónico: support@zilliz.com