Sobre a Migração do MongoDB para o Oracle NoSQL Database Cloud Service

Sua organização decidiu migrar dados de MongoDB para o Oracle NoSQL Database Cloud Service para manter dados em um banco de dados não relacional e manter alta disponibilidade e escalabilidade. Este manual apresenta as etapas para migrar dados de MongoDB no local e MongoDB Atlas para o Oracle NoSQL Database Cloud Service usando o Oracle NoSQL Database Migrator.

Arquitetura

Nesta arquitetura, o Oracle NoSQL Database Migrator é instalado em uma Instância do OCI Compute. Recomendamos o uso de uma instância do OCI Always Free Compute para reduzir custos.

Os arquivos JSON formatados em MongoDB são migrados para o Oracle NoSQL Database Cloud Service usando o OCI Object Storage (armazenamento intermediário) e uma instância do OCI Compute que executa o Oracle NoSQL Database Migrator.

Observação:

Ao migrar dados, o Oracle reserva e gerencia os recursos para atender aos seus requisitos e provisiona a capacidade. A capacidade é especificada com unidades de leitura e gravação por throughput e GB para unidades de armazenamento.

O diagrama a seguir ilustra essa arquitetura.



migration-mongodb-oracle-nosql-architecture.zip

Essa arquitetura suporta os seguintes componentes:

  • Região

    Região do Oracle Cloud Infrastructure é uma área geográfica localizada que contém um ou mais data centers, denominada domínios de disponibilidade. As regiões são independentes de outras regiões, e grandes distâncias podem separá-las (entre países ou até mesmo continentes).

  • Domínio de disponibilidade

    Domínios de disponibilidade são data centers stand-alone e independentes dentro de uma região. Os recursos físicos de cada domínio de disponibilidade são isolados dos recursos de outros domínios de disponibilidade, o que oferece tolerância a falhas. Os domínios de disponibilidade não compartilham infraestrutura como energia ou refrigeração ou a rede interna do domínio de disponibilidade. Portanto, é improvável que uma falha em um domínio de disponibilidade afete os outros domínios de disponibilidade na região.

  • Domínio de falha

    Um domínio de falha é um agrupamento de hardware e infraestrutura dentro de um domínio de disponibilidade. Cada domínio de disponibilidade tem três domínios de falha com energia e hardware independentes. Quando você distribui recursos entre vários domínios de falha, seus aplicativos podem tolerar falhas físicas do servidor, manutenção do sistema e falhas de energia dentro de um domínio de falha.

  • VCN (rede virtual na nuvem) e sub-rede

    Uma VCN é uma rede personalizável definida por software que você configura em uma região do Oracle Cloud Infrastructure. Como as redes tradicionais de data center, as VCNs oferecem total controle sobre seu ambiente de rede. Uma VCN pode ter vários blocos CIDR não sobrepostos que você pode alterar após a criação da VCN. Você pode segmentar uma VCN em sub-redes, com escopo definido para uma região ou para um domínio de disponibilidade. Cada sub-rede consiste em um intervalo contíguo de endereços que não se sobrepõem a outras sub-redes da VCN. Você pode alterar o tamanho de uma sub-rede após a criação. Uma sub-rede pode ser pública ou privada.

  • Gateway de internet

    O gateway de internet permite tráfego entre as sub-redes públicas em uma VCN e a internet pública.

  • Gateway de serviço

    O gateway de serviço fornece acesso de uma VCN a outros serviços, como o Oracle Cloud Infrastructure Object Storage. O tráfego da VCN para o serviço Oracle percorre a malha da rede Oracle e nunca atravessa a internet.

  • Serviço IAM (Identity and Access Management)

    O Oracle Cloud Infrastructure Identity and Access Management (IAM) é o plano de controle de acesso para o Oracle Cloud Infrastructure (OCI) e o Oracle Cloud Applications. A API do serviço IAM e a interface do usuário permitem que você gerencie domínios de identidade e os recursos dentro do domínio de identidades. Cada domínio de identidades do OCI IAM representa uma solução independente de gerenciamento de identidade e acesso ou uma população de usuários diferente.

  • Object Storage

    O armazenamento de objetos fornece acesso rápido a grandes quantidades de dados estruturados e não estruturados de qualquer tipo de conteúdo, incluindo backups de bancos de dados, dados de análise e conteúdo avançado, como imagens e vídeos. Você pode armazenar de forma segura e depois recuperar dados diretamente da internet ou de dentro da plataforma da nuvem. Você pode dimensionar facilmente o armazenamento sem prejudicar o desempenho ou a confiabilidade do serviço. Use o armazenamento padrão para armazenamento de acesso frequente que você precisa para acessar de forma rápida, imediata e com frequência. Use o armazenamento de arquivos compactados para armazenamento "frio" que você mantém por longos períodos de tempo e raramente acessa.

  • Oracle NoSQL Database Cloud Service

    O Oracle NoSQL Database Cloud Service facilita para os desenvolvedores a criação de aplicativos usando modelos de banco de dados de documentos, colunas e valores-chave, oferecendo tempos de resposta previsíveis de um dígito em milissegundos com replicação de dados para alta disponibilidade. O serviço oferece transações ACID, dimensionamento sem servidor, segurança abrangente e baixo preço de pagamento por uso para modos de capacidade sob demanda e provisionados, incluindo 100% de compatibilidade com o Oracle NoSQL Database local.

Antes de Começar

Antes de começar, verifique as versões dos principais componentes usados nessa definição e revise a documentação do produto para obter uma referência posterior.

Revisar Requisitos

  • MongoDB em execução no servidor Oracle Linux
  • Certifique-se de que a OCI Compute Instance que executa o Oracle NoSQL Database Migrator tenha pelo menos 1 OCPU com 16 GB de RAM executando o Oracle Linux 8.
  • A Instância do OCI Compute deve estar executando o Oracle NoSQL Database Migrator versão 1.5.0 e o Java 11.
  • O armazenamento intermediário deve incluir o OCI Object Storage

Faça download dos binários do Oracle NoSQL Database Migrator 1.5.0 (V1033765-01.zip) em "Oracle NoSQL Database Migrator and Analytics Integrator":

Sobre produtos e funções necessários

Esta solução requer os seguintes produtos e funções:

  • Oracle Cloud Infrastructure Identity and Access Management
  • Oracle NoSQL Database Cloud Service
  • Oracle Cloud Infrastructure Compute
  • Oracle Cloud Infrastructure Object Storage
  • MongoDB

Essas são as funções necessárias para cada produto.

Nome do Produto: Função Obrigatório para...
Oracle Cloud Infrastructure Identity and Access Management: user Crie uma chave de API para acessar o OCI para criar tabelas e importar dados para o Oracle NoSQL Database Cloud Service.
Oracle NoSQL Database Cloud Service: admin Criar tabelas e importar dados.
Oracle Cloud Infrastructure Compute: admin Crie uma instância de computação do OCI para executar o Oracle NoSQL Data Migrator.
VM do Oracle Cloud Infrastructure Compute: opc Instale e execute o Oracle NoSQL Data Migrator.
Oracle Cloud Infrastructure Object Storage: user Faça upload e download de arquivos do Bucket do Oracle Cloud Infrastructure Object Storage e leia-os.
MongoDB: admin Exporte coleções MongoDB para arquivo.

Consulte Produtos, Soluções e Serviços Oracle para obter o que você precisa.

Considerações sobre Migração

Antes de iniciar a migração, revise essas considerações.

  • Há um limite de 13.500 registros por arquivo JSON formatado MongoDB ao migrar dados usando o OCI Object Storage como armazenamento intermediário. Se um arquivo JSON exceder o limite de registro 13.500, use o comando split do Oracle Linux para dividir o arquivo em vários segmentos.
  • Em arquivos JSON formatados MongoDB, a primeira coluna é chamada de _id. No Oracle NoSQL Database Cloud Service, os nomes de coluna devem começar com uma letra. Os dois métodos de migração de dados nesta solução migram os valores de _id para id no Oracle NoSQL Database Cloud Service.