Migrar dados para a conta do Azure Cosmos DB para NoSQL usando o Striim
APLICA-SE A: NoSQL
A imagem Striim no mercado do Azure oferece movimentação contínua de dados em tempo real de armazéns de dados e bancos de dados para o Azure. Ao mover os dados, você pode executar desnormalização em linha, transformação de dados, habilitar análises em tempo real e cenários de relatórios de dados. É fácil começar a usar o Striim para mover continuamente dados corporativos para o Azure Cosmos DB para NoSQL. O Azure fornece uma oferta de mercado que facilita a implantação do Striim e a migração de dados para o Azure Cosmos DB.
Este artigo mostra como usar o Striim para migrar dados de um banco de dados Oracle para uma conta do Azure Cosmos DB for NoSQL.
Pré-requisitos
Se não tiver uma subscrição do Azure, crie uma conta gratuita antes de começar.
Um banco de dados Oracle em execução local com alguns dados.
Implante a solução de mercado Striim
Inicie sessão no portal do Azure.
Selecione Criar um recurso e procure Striim no Azure marketplace. Selecione a primeira opção e Criar.
Em seguida, insira as propriedades de configuração da instância Striim. O ambiente Striim é implantado em uma máquina virtual. No painel Noções básicas, insira o nome de usuário da VM, a senha da VM (essa senha é usada para SSH na VM). Selecione seus detalhes de Assinatura, Grupo de Recursos e Local onde você gostaria de implantar o Striim. Depois de concluído, selecione OK.
No painel de configurações do Striim Cluster, escolha o tipo de implantação do Striim e o tamanho da máquina virtual.
Definição valor Description Tipo de implantação Striim Autónomo O Striim pode ser executado em um tipo de implantação Autônomo ou de Cluster . O modo autônomo implantará o servidor Striim em uma única máquina virtual e você poderá selecionar o tamanho das VMs dependendo do volume de dados. O modo de cluster implantará o servidor Striim em duas ou mais VMs com o tamanho selecionado. Ambientes de cluster com mais de 2 nós oferecem alta disponibilidade e failover automáticos.
Neste tutorial, você pode selecionar a opção Standalone. Use a VM de tamanho "Standard_F4s" padrão.Nome do cluster Striim <Striim_cluster_Name> Nome do cluster Striim. Senha do cluster Striim <Striim_cluster_password> Senha para o cluster. Depois de preencher o formulário, selecione OK para continuar.
No painel de configurações de acesso do Striim, configure o endereço IP público (escolha os valores padrão), o nome de domínio para o Striim, a senha de administrador que você gostaria de usar para fazer login na interface do usuário do Striim. Configure uma VNET e uma Sub-rede (escolha os valores padrão). Depois de preencher os detalhes, selecione OK para continuar.
O Azure validará a implantação e garantirá que tudo pareça bom; A validação leva alguns minutos para ser concluída. Após a conclusão da validação, selecione OK.
Por fim, revise os termos de uso e selecione Criar para criar sua instância do Striim.
Configurar o banco de dados de origem
Nesta seção, você configura o banco de dados Oracle como a fonte para movimentação de dados. O servidor Striim vem com o driver JDBC Oracle usado para se conectar ao Oracle. Para ler as alterações do banco de dados Oracle de origem, você pode usar as APIs LogMiner ou XStream. O driver JDBC Oracle está presente no classpath Java da Striim para ler, gravar ou persistir dados do banco de dados Oracle.
Configurar o banco de dados de destino
Nesta seção, você configurará a conta do Azure Cosmos DB para NoSQL como o destino para a movimentação de dados.
Crie uma conta do Azure Cosmos DB para NoSQL usando o portal do Azure.
Navegue até o painel Data Explorer em sua conta do Azure Cosmos DB. Selecione Novo contêiner para criar um novo contêiner. Suponha que você esteja migrando produtos e dados de pedidos do banco de dados Oracle para o Azure Cosmos DB. Crie um novo banco de dados chamado StriimDemo com um contêiner chamado Orders. Provisione o contêiner com 1000 RUs (este exemplo usa 1000 RUs, mas você deve usar a taxa de transferência estimada para sua carga de trabalho) e /ORDER_ID como a chave de partição. Esses valores serão diferentes dependendo dos dados de origem.
Configurar o Oracle para o fluxo de dados do Azure Cosmos DB
Navegue até a instância Striim que você implantou no portal do Azure. Selecione o botão Conectar na barra de menu superior e, na guia SSH, copie o URL no campo Login usando conta local da VM.
Abra uma nova janela de terminal e execute o comando SSH copiado do portal do Azure. Este artigo usa terminal em um MacOS, você pode seguir as instruções semelhantes usando um cliente SSH em uma máquina Windows. Quando solicitado, digite sim para continuar e digite a senha que você definiu para a máquina virtual na etapa anterior.
Na mesma janela do terminal, reinicie o servidor Striim executando os seguintes comandos:
systemctl stop striim-node systemctl stop striim-dbms systemctl start striim-dbms systemctl start striim-node
O Striim demorará um minuto a arrancar. Se quiser ver o status, execute o seguinte comando:
tail -f /opt/striim/logs/striim-node.log
Agora, navegue de volta para o Azure e copie o endereço IP público da sua VM Striim.
Para navegar até a interface do usuário da Web do Striim, abra uma nova guia em um navegador e copie o IP público seguido por: 9080. Entre usando o nome de usuário admin , juntamente com a senha de administrador especificada no portal do Azure.
Agora você chegará à página inicial do Striim. Existem três painéis diferentes – Dashboards, Apps e SourcePreview. O painel Painéis permite mover dados em tempo real e visualizá-los. O painel Aplicativos contém seus pipelines de dados de streaming ou fluxos de dados. No lado direito da página está SourcePreview onde você pode visualizar seus dados antes de movê-los.
Selecione o painel Aplicativos , vamos nos concentrar nesse painel por enquanto. Há uma variedade de aplicativos de exemplo que você pode usar para aprender sobre o Striim, no entanto, neste artigo, você criará o nosso. Selecione o botão Adicionar aplicativo no canto superior direito.
Existem algumas maneiras diferentes de criar aplicativos Striim. Selecione Iniciar com modelo para começar com um modelo existente.
No campo Modelos de pesquisa, digite "Cosmos" e selecione Destino: Azure Cosmos DB e, em seguida, selecione Oracle CDC para Azure Cosmos DB.
Na página seguinte, atribua um nome à sua candidatura. Você pode fornecer um nome como oraToCosmosDB e selecionar Salvar.
Em seguida, insira a configuração de origem da sua instância Oracle de origem. Insira um valor para o Nome de origem. O nome de origem é apenas uma convenção de nomenclatura para o aplicativo Striim, você pode usar algo como src_onPremOracle. Insira valores para o restante dos parâmetros de origem URL, nome de usuário, senha, escolha LogMiner como o leitor para ler dados do Oracle. Selecione Seguinte para continuar.
O Striim verificará seu ambiente e garantirá que ele possa se conectar à sua instância Oracle de origem, tenha os privilégios corretos e que o CDC tenha sido configurado corretamente. Quando todos os valores estiverem validados, selecione Avançar.
Selecione as tabelas do banco de dados Oracle que você deseja migrar. Por exemplo, vamos escolher a tabela Pedidos e selecionar Avançar.
Depois de selecionar a tabela de origem, você pode fazer operações mais complicadas, como mapeamento e filtragem. Nesse caso, você apenas criará uma réplica da tabela de origem no Azure Cosmos DB. Então, selecione Avançar para configurar o destino
Agora, vamos configurar o destino:
- Nome do destino - Forneça um nome amigável para o destino.
- Entrada de - Na lista suspensa, selecione o fluxo de entrada daquele que você criou na configuração Oracle de origem.
- Coleções- Insira as propriedades de configuração do Azure Cosmos DB de destino. A sintaxe das coleções é SourceSchema.SourceTable, TargetDatabase.TargetContainer. Neste exemplo, o valor seria "SYSTEM. ORDENS, StriimDemo.Orders".
- AccessKey - A PrimaryKey da sua conta do Azure Cosmos DB.
- ServiceEndpoint – O URI da sua conta do Azure Cosmos DB, eles podem ser encontrados na seção Chaves do portal do Azure.
Selecione Salvar e Avançar.
Em seguida, você chegará ao designer de fluxo, onde poderá arrastar e soltar conectores para criar seus aplicativos de streaming. Você não fará nenhuma modificação no fluxo neste momento. portanto, vá em frente e implante o aplicativo selecionando o botão Implantar aplicativo .
Na janela de implantação, você pode especificar se deseja executar determinadas partes do aplicativo em partes específicas da topologia de implantação. Como estamos executando uma topologia de implantação simples por meio do Azure, usaremos a opção padrão.
Após a implantação, você pode visualizar o fluxo para ver os dados fluindo. Selecione o ícone de onda e o globo ocular ao lado dele. Selecione o botão Implantado na barra de menu superior e selecione Iniciar aplicativo.
Usando um leitor CDC (Change Data Capture), o Striim coletará apenas novas alterações no banco de dados. Se você tiver dados fluindo através de suas tabelas de origem, você os verá. No entanto, como esta é uma tabela de demonstração, a fonte não está conectada a nenhum aplicativo. Se você usar um gerador de dados de exemplo, poderá inserir uma cadeia de eventos em seu banco de dados Oracle.
Você verá os dados fluindo através da plataforma Striim. O Striim também pega todos os metadados associados à sua tabela, o que é útil para monitorar os dados e garantir que os dados cheguem ao destino certo.
Finalmente, vamos entrar no Azure e navegar até sua conta do Azure Cosmos DB. Atualize o Data Explorer e você poderá ver que os dados chegaram.
Usando a solução Striim no Azure, você pode migrar continuamente dados para o Azure Cosmos DB de várias fontes, como Oracle, Cassandra, MongoDB e várias outras para o Azure Cosmos DB. Para saber mais, visite o site da Striim, baixe uma avaliação gratuita de 30 dias do Striim e, para quaisquer problemas ao configurar o caminho de migração com o Striim, envie uma solicitação de suporte.
Próximos passos
Tentando fazer o planejamento de capacidade para uma migração para o Azure Cosmos DB?
- Se tudo o que você sabe é o número de vcores e servidores em seu cluster de banco de dados existente, leia sobre como estimar unidades de solicitação usando vCores ou vCPUs
- Se você souber as taxas de solicitação típicas para sua carga de trabalho de banco de dados atual, leia sobre como estimar unidades de solicitação usando o planejador de capacidade do Azure Cosmos DB
Se você estiver migrando dados para o Azure Cosmos DB para NoSQL, veja como migrar dados para a API da conta Cassandra usando o Striim
Monitorar e depurar seus dados com métricas do Azure Cosmos DB