Migrar dados para a conta do Azure Cosmos DB para Apache Cassandra usando o Striim
APLICA-SE A: Cassandra
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 Apache Cassandra. 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 para Apache Cassandra.
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 banco de dados de destino
Nesta seção, você configurará a conta do Azure Cosmos DB para Apache Cassandra como o destino para a movimentação de dados.
Crie uma conta do Azure Cosmos DB para Apache Cassandra usando o portal do Azure.
Navegue até o painel Data Explorer em sua conta do Azure Cosmos DB. Selecione Nova tabela 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 Keyspace chamado StriimDemo com um contêiner de Pedidos. 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 chave primária. 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 o 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 do zero para este cenário.
Dê um nome amigável para seu aplicativo, algo como oraToCosmosDB e selecione Salvar.
Você chegará ao Flow Designer, onde poderá arrastar e soltar conectores para criar seus aplicativos de streaming. Digite Oracle na barra de pesquisa, arraste e solte a fonte do Oracle CDC na tela do aplicativo.
Insira as propriedades de configuração de origem da sua instância Oracle. O nome de origem é apenas uma convenção de nomenclatura para o aplicativo Striim, você pode usar um nome como src_onPremOracle. Introduza também outros detalhes como Tipo de adaptador, URL de ligação, nome de utilizador, palavra-passe, nome da tabela. Selecione Salvar para continuar.
Agora, clique no ícone de onda do fluxo para conectar a instância de destino do Azure Cosmos DB.
Antes de configurar o destino, certifique-se de ter adicionado um certificado raiz de Baltimore ao ambiente Java da Striim.
Insira as propriedades de configuração da sua instância de destino do Azure Cosmos DB e selecione Salvar para continuar. Aqui estão os principais parâmetros a serem observados:
Adaptador - Use DatabaseWriter. Ao escrever no Azure Cosmos DB para Apache Cassandra, é necessário DatabaseWriter. O driver Cassandra 3.6.0 é fornecido com Striim. Se o DatabaseWriter exceder o número de RUs provisionadas em seu contêiner do Azure Cosmos DB, o aplicativo falhará.
URL de conexão - Especifique sua URL de conexão JDBC do Azure Cosmos DB. O URL está no formato
jdbc:cassandra://<contactpoint>:10350/<databaseName>?SSL=true
Nome de usuário - Especifique o nome da conta do Azure Cosmos DB.
Senha - Especifique a chave primária da sua conta do Azure Cosmos DB.
Tabelas - As tabelas de destino devem ter chaves primárias e as chaves primárias não podem ser atualizadas.
Agora, vamos em frente e executar o aplicativo Striim. Na barra de menus superior, selecione Criado e, em seguida , Implantar aplicativo. Na janela de implantação, você pode especificar se deseja executar determinadas partes do seu 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.
Agora, vamos em frente e visualizar o fluxo para ver os dados fluindo através do Striim. Clique no ícone de onda e clique no ícone de olho ao lado dele. 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 exemplo, a fonte que 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
Se você estiver migrando dados para o Azure Cosmso DB for 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