A Voyage AI se une ao MongoDB para impulsionar aplicativos de AI mais precisos e confiáveis no Atlas.

Explore o novo chatbot do Developer Center! O MongoDB AI chatbot pode ser acessado na parte superior da sua navegação para responder a todas as suas perguntas sobre o MongoDB .

Transmissão de dados do MongoDB para o BigQuery usando conectores Confluent

Venkatesh Shanbhag, Ozan Güzeldereli4 min read • Published Jan 24, 2023 • Updated Jul 11, 2023
Facebook Icontwitter iconlinkedin icon
Avaliar este tutorial
star-empty
star-empty
star-empty
star-empty
star-empty
Muitos clientes corporativos do MongoDB e do Google Cloud têm a carga de trabalho da operação principal em execução no MongoDB e executam suas análises no BigQuery. Para facilitar a movimentação de dados entre o MongoDB e o BigQuery, o MongoDB introduziu os modelos do Google Dataflow. Embora esses modelos atendam à maioria dos casos de uso comuns, ainda é necessário algum esforço para configurar o modelo de change stream (CDC). A configuração do CDC exige que os usuários criem seu próprio código personalizado para monitorar as alterações que estão ocorrendo em sua collection do MongoDB Atlas. O desenvolvimento de códigos personalizados consome tempo e requer muito tempo para desenvolvimento, suporte, gerenciamento e operações.
MongoDB to BigQuery pipeline using Dataflow templates
A superação do esforço adicional necessário para configurar CDCs para o MongoDB para modelos de fluxo de dados do BigQuery pode ser obtida usando o Confluent Cloud. O Confluent é uma plataforma de dados em escala completa capaz de processamento, integração e transmissão de dados contínuos e em tempo real em qualquer infraestrutura. O Confluent fornece integração de dados declarativa e conectável por meio de seus conectores. Com os conectores de origem MongoDB da Confluent, o processo de criação e implantação de um módulo para CDCs pode ser eliminado. O Confluent Cloud fornece um connector de origem MongoDB Atlas que pode ser facilmente configurado a partir do Confluent Cloud, que lerá as alterações da origem do MongoDB e publicará essas alterações em um tópico. A leitura do MongoDB como fonte é a parte da solução que é aprimorada ainda mais com um connector de coletor Confluent BigQuery para ler as alterações que são publicadas no tópico e, em seguida, gravadas na tabela BigQuery.
Architecture for MongoDB to BigQuery pipeline using Confluent connectors
Este artigo explica como configurar o cluster MongoDB, o cluster Confluent e o MongoDB Atlas source connector para ler alterações do cluster MongoDB, conjunto de dados BigQuery e Confluent BigQuery sink connector.
Como pré-requisito, precisamos de um MongoDB Atlas cluster, cluster Confluent Cloud e conta do Google Cloud. Se você não tiver as contas, as próximas seções ajudarão você a entender como configurá-las.

Configure seu cluster do MongoDB Atlas

Para configurar seu primeiro cluster MongoDB Atlas, você pode se registrar no MongoDB no Google Marketplace ou na página de registro. Uma vez registrado no MongoDB Atlas, você pode configurar seu primeiro cluster Shared M0 camada gratuita. Siga as etapas na documentação do MongoDB para definir o usuário do bancode dados e as configurações derede do cluster.
MongoDB Atlas Sandbox cluster set up
Depois que o cluster e a configuração do acesso forem concluídos, podemos carregar alguns dados de exemplo no cluster. Navegue até "browse collection " na página inicial do Atlas e clique em "Create Database. " Nomeie seu banco de dados "Sample_company " e a coleção "Sample_employee. "
Insira seu primeiro documento no banco de dados:
1{
2"Name":"Jane Doe",
3"Address":{
4"Phone":{"$numberLong":"999999"},
5"City":"Wonderland"
6}
7}
8}

Configure um conjunto de dados do BigQuery no Google Cloud

Como pré-requisito para configurar o pipeline, precisamos criar um conjunto de dados na mesma região do cluster Confluent. Consulte a documentaçãodo Google para entender como criar um conjunto de dados para o seu projeto. Nomeie seu conjunto de dados “Sample_Dataset.”

Configurar o cluster e os conectores do Confluent Cloud

Depois de configurar os conjuntos de dados MongoDB e BigQuery, o Confluent será a plataforma para criar o pipeline de dados entre essas plataformas.
Para se inscrever usando o Confluent Cloud, você pode acessar o site do Confluent ou se registrar no Google Marketplace. Novas inscrições recebem US$400 para gastar durante os primeiros 30 dias, e um cartão de crédito não é necessário. Para criar o cluster, você pode seguir a primeira etapa na documentação. Um ponto importante a considerar é que a região do cluster deve ser a mesma região do cluster do GCP BigQuery.

Configure seu conector de origem do MongoDB Atlas no Confluent

Dependendo das configurações, pode levar alguns minutos para provisionar seu cluster, mas, depois que o cluster for provisionado, podemos obter os dados de amostra do cluster MongoDB para o cluster Confluent.
O connector MongoDB Atlas Source do Confluent ajuda a ler os dados do change stream do MongoDB database e escrevê-los no tópico. Este connector é totalmente gerenciado pelo Confluent e você não precisa operá-lo. Para configurar um connector, navegue até Confluent Cloud e procure o connector de origem do MongoDB Atlas emConnectors. " "A documentação do connector fornece as etapas para provisionar o connector.
Abaixo está a configuração de exemplo para o connector de origem MongoDB.
  1. Para Seleção de tópico, deixe o prefixo vazio.
  2. Gere credenciais Kafka e clique emContinue.“”
  3. Em Autenticação, forneça os detalhes:
    1. Host de conexão: forneça apenas o nome do host MongoDB no formato "mongodbcluster.mongodb.net. "
    2. Usuário da conexão: nome de usuário da conexão MongoDB.
    3. Senha de conexão: Senha do usuário que está sendo autenticado.
    4. Nome do banco dedados: sample_database e nome da collection:sample_collection .
  4. Na configuração, selecione o formato de registro Kafka de saída como JSON_SR e clique em "Continue. "
  5. Deixe o dimensionamento padrão e clique em "Continue. "
  6. Revise e clique em "Continue. "
Confluent connector configuration for MongoDB source connector
1{
2 "name": "MongoDbAtlasSourceConnector",
3 "config": {
4 "connector.class": "MongoDbAtlasSource",
5 "name": "MongoDbAtlasSourceConnector",
6 "kafka.auth.mode": "KAFKA_API_KEY",
7 "kafka.api.key": "****************",
8 "kafka.api.secret": "****************************************************************",
9 "connection.host": "mongodbcluster.mongodb.net",
10 "connection.user": "testuser",
11 "connection.password": "*********",
12 "database": "Sample_Company",
13 "collection": "Sample_Employee",
14 "output.data.format": "JSON_SR",
15 "publish.full.document.only": "true",
16 "tasks.max": "1"
17 }
18}

Configurar o connector de coletor Confluent cloud: BigQuery

Depois de configurar nosso BigQuery, precisamos provisionar um connector de coletor para coletar os dados do Confluent Cluster para o Google BigQuery. O connector Confluent Cloud to BigQuery Sink pode transmitir registros de tabela de tópicos do Kafka para o Google BigQuery. Os registros da tabela são transmitidos a altas taxas de rendimento para facilitar as queries analíticas em tempo real.
Para configurar o connector de coletor do Bigquery, siga as etapas na documentação.
1{
2 "name": "BigQuerySinkConnector_0",
3 "config": {
4 "topics": "AppEngineTest.emp",
5 "input.data.format": "JSON_SR",
6 "connector.class": "BigQuerySink",
7 "name": "BigQuerySinkConnector_0",
8 "kafka.auth.mode": "KAFKA_API_KEY",
9 "kafka.api.key": "****************",
10 "kafka.api.secret": "****************************************************************",
11 "keyfile": "******************************************************************************
12—--
13***************************************",
14 "project": "googleproject-id",
15 "datasets": "Sample_Dataset",
16 "auto.create.tables": "true",
17 "auto.update.schemas": "true",
18 "tasks.max": "1"
19 }
20}
Para ver os dados sendo carregados no BigQuery, faça algumas alterações na collection do MongoDB. Quaisquer inserções e atualizações serão registradas do MongoDB e enviadas para o BigQuery.
Insira o documento abaixo em sua MongoDB collection usando a UI do MongoDB Atlas. (Navegue até sua collection e clique em "INSERT DOCUMENT. ")
1{
2"Name":"John Doe",
3"Address":{
4"Phone":{"$numberLong":"8888888"},
5"City":"Narnia"
6}
7}
8}

Resumo

O MongoDB e o Confluent estão posicionados no centro de muitas arquiteturas de dados modernas que ajudam os desenvolvedores a criar facilmente pipelines de dados robustos e reativos que transmitem eventos entre aplicativos e serviços em tempo real. Neste exemplo, fornecemos um modelo para criar um pipeline do MongoDB para o Bigquery no Confluent Cloud. O Confluent Cloud fornece mais de 200 conectores para criar esses pipelines entre muitas soluções. Embora as soluções mudem, a abordagem geral é usar esses conectores para construir pipelines.

O que vem a seguir?

  1. Para entender os recursos dos conectores de origem e coletor do MongoDB gerenciados pela Confluent Cloud, você pode assistir a este webinar.
  2. Saiba mais sobre o connectordo coletor do BigQuery.
  3. Um pipeline de dados para MongoDB Atlas e BigQuery usando Dataflow.
  4. Configure seu primeiro MongoDB cluster usando o Google Marketplace.
  5. Execute análises usando o BigQuery usando o BigQuery ML.

Facebook Icontwitter iconlinkedin icon
Avaliar este tutorial
star-empty
star-empty
star-empty
star-empty
star-empty
Relacionado
Tutorial

Como usar regras de arquivamento personalizadas e o particionamento no MongoDB Atlas Online Archive


May 31, 2023 | 5 min read
Artigo

Melhores práticas e um tutorial para usar o Google Cloud Functions com o MongoDB Atlas


Jun 13, 2023 | 13 min read
Artigo

Análise de consultas, parte 2: ajustando o sistema


Jan 17, 2024 | 10 min read
Artigo

Implantação fácil do MEAN stack com MongoDB Atlas, Cloud Run e HashiCorp Terraform


Jan 30, 2023 | 4 min read