Menu Docs
Página inicial do Docs
/
MongoDB Atlas
/ / /

Distribua uma instância de banco de dados federado

Nesta página

  • Pré-requisitos
  • Procedimento

Esta página descreve como implantar uma instância do banco de dados federado para acessar dados em seus contêineres do Azure Blob Storage.

Antes de começar, cumpra os seguintes pré-requisitos:

  • Crie uma conta do MongoDB Atlas , se ainda não tiver uma.

  • Instale o Azure PowerShell ou Azure CLI. Para saber mais sobre essas ferramentas, consulte Escolher a ferramenta de linha de comando Azure correta.

  • Configurar o Azure PowerShell ou CLI do Azure.

  • Opcional. Configure o acesso principal de serviço do Azure.

Para criar um novo reconhecimento de data center Data Federation utilizando o Atlas CLI, execute o seguinte comando:

atlas dataFederation create <name> [options]

Para saber mais sobre a sintaxe e os parâmetros do comando, consulte a documentação do Atlas CLI para criar o Atlas dataFederation.

Dica

Veja: links relacionados

1
2
3
  1. Clique no menu suspenso Create New Federated Database.

  2. Selecione Manual Setup.

4

Você pode selecionar Amazon Web Services Azure Google Cloud PlatformAmazon Web Services , Azure ou Google Cloud Platform . Após sua instância do banco de dados federado ser criada, você não poderá alterar o provedor de nuvem onde o Atlas Data Federation processa suas queries.

Se estiver configurando uma instância do banco de dados federado para dados em um container do Azure Blob Storage, não será possível escolher um fornecedor de nuvem diferente do fornecedor de nuvem que está hospedando seus dados. Ou seja, você deve escolher Azure.

5

O padrão é FederatedDatabaseInstance[n]. Após sua instância do banco de dados federado ser criada, você não poderá alterar seu nome.

6
  • Para uma experiência guiada, clique em Visual Editor.

  • Para editar o JSON bruto, clique em JSON Editor.

7
  1. Selecione o conjunto de dados para sua instância do banco de dados federado na seção Data Sources .

    Clique em Add Data Sources para selecionar seu armazenamento de dados.

  2. Especifique seu armazenamento de dados.

    Escolha Azure para configurar uma instância do banco de dados federado para dados em contêineres do Azure Blob Storage.

    Corresponde à configuração stores.[n].provider JSON.

  3. Selecione um Azure Service Principal para o Atlas.

    Você pode selecionar um Service Azure existente para o qual o Atlas está autorizado a partir do menu suspenso Service Principal ou escolher Authorize an Azure Service Principal para autorizar um novo Service Principal.

    Se você selecionou um principal de serviço existente para o qual o Atlas está autorizado, prossiga para a próxima etapa.

    Se você estiver autorizando o Atlas para um principal de serviço existente ou estiver criando um novo principal de serviço, conclua as seguintes etapas antes de prosseguir para a próxima etapa:

    1. Selecione Authorize an Azure Service Principal para autorizar um principal de serviço novo ou existente e clique em Continue.

      Use o Azure Service Principal AppId na seção Add Atlas to your Azure Service Principal para conceder acesso ao Atlas por meio de um Azure Service Principal existente ou novo.

    2. Siga as etapas na guia PowerShell ou AzureCLI na IU do Atlas para criar um novo principal de serviço ou modificar um principal de serviço existente.

    3. Insira o ID do inquilino e o ID do service principal nos respectivos campos depois de concluir as etapas na IU do Atlas.

    4. Clique em Validate and Finish para prosseguir para a próxima etapa.

  4. Configure o acesso ao seu Azure Blob Storage.

    Na página Configure Azure Blob Storage, você deve configurar a delegação de credencial da Conta de Armazenamento do Azure e o acesso ao contêiner de Armazenamento. Para fazer isso:

    1. Insira a ID do recurso da sua conta de armazenamento no campo Storage Account Credential Delegation .

      Para saber mais, veja Obter a ID do recurso para uma conta de armazenamento.

    2. Copie e execute o comando da etapa Storage Account Credential Delegation em seu Azure PowerShell para configurar a delegação de credenciais.

    3. Especifique se o contêiner de armazenamento permite operações Read only ou Read and write .

      O Atlas só pode executar query de Read-only containers; se você deseja consultar e salvar os resultados da consulta no contêiner do Azure Blob Storage, escolha Read and write.

      O Atlas Data Federation não suporta gravações em seu contêiner do Azure Blob Storage usando $out.

    4. Insira o nome do Contêiner de armazenamento.

    5. Copie e execute o comando mostrado na etapa Storage Container Access em seu Azure PowerShell para configurar o acesso ao contêiner blob.

    6. Clique em Continue.

  5. Defina a estrutura de caminho para seus arquivos no contêiner do Azure Blob Storage e clique em Next.

    1. Insira o caminho de armazenamento para seu contêiner do Azure Blob Storage.

      Por exemplo:

      https://<storage-account>.blob.core.windows.net/<container>/<file-name>

      Para adicionar caminhos adicionais para dados em seu contêiner do Azure Blob Storage, clique em Add Data Source e insira o caminho. Para saber mais sobre caminhos, consulte Definir caminho para dados S3 .

      Corresponde à configuração databases.[n].collections.[n].dataSources.[n].path JSON.

    2. Opcional. Especifique os campos de partição que o Data Federation deve usar ao pesquisar os arquivos no contêiner do Azure Blob Storage e o tipo de valor do campo .

      Se omitido, o Data Federation faz uma pesquisa recursiva para todos os arquivos a partir da raiz do contêiner Armazenamento de Blob do Azure. Se você não selecionar um tipo de valor de campo específico, o Data Federation adicionará qualquer valor nesse caminho em todas as queries.

      Corresponde às definições de configuração JSON stores.[n].prefix e databases.[n].collections.[n].dataSources.[n].path.

  6. Crie os bancos de dados, collections e visualizações virtuais e mapeie os bancos de dados, collections e visualizações para seu armazenamento de dados.

    1. (Opcional) Clique em para o:

      • Banco de dados para editar o nome do banco de dados. Padrão é VirtualDatabase[n].

        Corresponde à configuração JSON do databases.[n].name.

      • Coleção para editar o nome da coleção. O padrão é VirtualCollection[n].

        Corresponde à configuração JSON do databases.[n].collections.[n].name.

      • Visualizar para editar o nome da visualização.

      Você pode clicar em:

      • Add Database para adicionar bancos de dados e coleções.

      • associado ao banco de dados para adicionar coleções ao banco de dados.

      • associado à collection para adicionar visualizações na collection. Para criar uma visualização, você deve especificar:

        • O nome da visualização.

        • O pipeline a ser aplicado à visualização.

          O pipeline de definição de visualização não pode incluir o estágio $out ou $merge . Se a definição de visualização incluir estágios de pipeline aninhados, como $lookup ou $facet, essa restrição também se aplicará a esses pipelines aninhados.

        Para saber mais sobre visualizações, consulte:

      • associado ao banco de dados, coleção ou visualização para removê-la.

    2. Selecione Azure Blob Storage no menu suspenso da seção Data Sources .

    3. Arraste e solte o armazenamento de dados para mapear com a collection.

      Corresponde à configuração JSON do databases.[n].collections.[n].dataSources.

Sua configuração para o armazenamento de dados do Azure Blob Storage deve ser semelhante a esta:

{
"stores" : [
{
"name" : "<string>",
"provider": "<string>",
"region" : "<string>",
"serviceURL" : "<string>",
"containerName" : "<string>",
"delimiter" : "<string>",
"prefix": "<string>",
"public": <boolean>
}
],
"databases" : [
{
"name" : "<string>",
"collections" : [
{
"name" : "<string>",
"dataSources" : [
{
"storeName" : "<string>",
"path" : "<string>",
"defaultFormat" : "<string>",
"provenanceFieldName": "<string>",
"omitAttributes": <boolean>
}
]
}
],
"maxWildcardCollections" : <integer>,
"views" : [
{
"name" : "<string>",
"source" : "<string>",
"pipeline" : "<string>"
}
]
}
]
}

Para obter mais informações sobre as definições de configuração, consulte Definir armazenamentos de dados para uma instância de banco de dados federado.

  1. Defina seu armazenamento de dados do Armazenamento de Blobs do Azure.

    Edite as definições de configuração JSON mostradas na interface do usuário para stores. Sua configuração de configuração do stores deve ser semelhante ao seguinte:

    "stores" : [
    {
    "name" : "<string>",
    "provider" : "<string>",
    "region" : "<string>",
    "serviceURL" : "<string>",
    "containerName" : "<string>",
    "delimiter": "<string",
    "prefix" : "<string>",
    "public": <boolean>
    }
    ]

    Para saber mais sobre essas definições de configuração, consulte stores.

  2. Defina seus bancos de dados virtuais, collections e visualizações de instância do banco de dados federado .

    Edite as definições de configuração JSON mostradas na interface do usuário para databases. Sua configuração de configuração do databases deve ser semelhante ao seguinte:

    "databases" : [
    {
    "name" : "<string>",
    "collections" : [
    {
    "name" : "<string>",
    "dataSources" : [
    {
    "storeName" : "<string>",
    "defaultFormat" : "<string>",
    "path" : "<string>",
    "provenanceFieldName": "<string>",
    "omitAttributes": <boolean>
    }
    ]
    }
    ],
    "maxWildcardCollections" : <integer>,
    "views" : [
    {
    "name" : "<string>",
    "source" : "<string>",
    "pipeline" : "<string>"
    }
    ]
    }
    ]

    Para saber mais sobre essas definições de configuração, consulte databases.

8

Para adicionar outros armazenamentos de dados para consultas federadas, consulte:

Observação

Não é possível criar um armazenamento de dados Amazon Web Services para executar query em diferentes fornecedor de cloud.

9

Voltar

Armazenamento de blobs Azure