Migrar dados para a conta do Azure Cosmos DB para Apache Cassandra com o Striim

APLICA-SE A: Cassandra

A imagem Striim no Azure Marketplace oferece movimento contínuo de dados em tempo real de armazéns de dados e bases de dados para o Azure. Ao mover os dados, pode realizar desnormalização em linha, transformação de dados, ativar a análise em tempo real e cenários de relatórios de dados. É fácil começar a utilizar o Striim para mover continuamente dados empresariais para o Azure Cosmos DB para o Apache Cassandra. O Azure fornece uma oferta do marketplace que facilita a implementação do Striim e a migração de dados para o Azure Cosmos DB.

Este artigo mostra como utilizar o Striim para migrar dados de uma base de dados Oracle para uma conta do Azure Cosmos DB para Apache Cassandra.

Pré-requisitos

Implementar a solução do Marketplace do Striim

  1. Inicie sessão no portal do Azure.

  2. Selecione Criar um recurso e procure Striim no Azure Marketplace. Selecione a primeira opção e Criar.

    Localizar item do marketplace do Striim

  3. Em seguida, introduza as propriedades de configuração da instância do Striim. O ambiente Striim é implementado numa máquina virtual. No painel Noções Básicas , introduza o nome de utilizador da VM, a palavra-passe da VM (esta palavra-passe é utilizada para SSH na VM). Selecione os detalhes de Subscrição, Grupo de Recursos e Localização onde pretende implementar o Striim. Depois de concluído, selecione OK.

    Configurar definições básicas para o Striim

  4. No painel Definições do Cluster do Striim , selecione o tipo de implementação Striim e o tamanho da máquina virtual.

    Definição Valor Descrição
    Tipo de implementação Striim Autónomo O Striim pode ser executado em tipos de implementação Autónomos ou clusters . O modo autónomo irá implementar o servidor Striim numa única máquina virtual e pode selecionar o tamanho das VMs consoante o volume de dados. O modo de cluster irá implementar o servidor Striim em duas ou mais VMs com o tamanho selecionado. Os ambientes de cluster com mais de 2 nós oferecem elevada disponibilidade automática e ativação pós-falha.

    Neste tutorial, pode selecionar a opção Autónomo. Utilize a VM de tamanho "Standard_F4s" predefinida.
    Nome do cluster do Striim <Striim_cluster_Name> Nome do cluster do Striim.
    Palavra-passe do cluster Striim <Striim_cluster_password> Palavra-passe para o cluster.

    Depois de preencher o formulário, selecione OK para continuar.

  5. No painel Definições de acesso do Striim, configure o endereço IP Público (escolha os valores predefinidos), Nome de domínio para Striim, Administração palavra-passe que gostaria de utilizar para iniciar sessão na IU do Striim. Configure uma VNET e Uma Sub-rede (escolha os valores predefinidos). Depois de preencher os detalhes, selecione OK para continuar.

    Definições de acesso do Striim

  6. O Azure validará a implementação e certificar-se-á de que tudo fica bem; a validação demora alguns minutos a concluir. Depois de concluída a validação, selecione OK.

  7. Por fim, reveja os termos de utilização e selecione Criar para criar a instância do Striim.

Configurar a base de dados de origem

Nesta secção, vai configurar a base de dados Oracle como a origem do movimento de dados. O servidor Striim é fornecido com o controlador Oracle JDBC que é utilizado para ligar ao Oracle. Para ler as alterações da base de dados Oracle de origem, pode utilizar o LogMiner ou as APIs XStream. O controlador Oracle JDBC está presente no caminho de classe Java do Striim para ler, escrever ou manter dados da base de dados Oracle.

Configurar a base de dados de destino

Nesta secção, irá configurar a conta do Azure Cosmos DB para Apache Cassandra como o destino do movimento de dados.

  1. Crie uma conta do Azure Cosmos DB para Apache Cassandra com o portal do Azure.

  2. Navegue para o painel Data Explorer na sua conta do Azure Cosmos DB. Selecione Nova Tabela para criar um novo contentor. Suponha que está a migrar produtos e encomendas de dados da base de dados Oracle para o Azure Cosmos DB. Crie um novo Keyspace com o nome StriimDemo com um contentor Encomendas. Aprovisione o contentor com 1000 RUs (este exemplo utiliza 1000 RUs, mas deve utilizar o débito estimado para a carga de trabalho) e /ORDER_ID como a chave primária. Estes valores serão diferentes consoante os dados de origem.

    Criar a API para a conta do Cassandra

Configurar o Oracle para o fluxo de dados do Azure Cosmos DB

  1. Navegue para a instância do Striim que implementou no portal do Azure. Selecione o botão Ligar na barra de menus superior e, no separador SSH , copie o URL em Iniciar sessão com o campo de conta local da VM .

    Obter o URL SSH

  2. Abra uma nova janela de terminal e execute o comando SSH que copiou do portal do Azure. Este artigo utiliza o terminal num macOS. Pode seguir as instruções semelhantes com um cliente SSH num computador Windows. Quando lhe for pedido, escreva sim para continuar e introduza a palavra-passe que definiu para a máquina virtual no passo anterior.

    Ligar à VM do Striim

  3. Na mesma janela do terminal, reinicie o servidor Striim ao executar os seguintes comandos:

    systemctl stop striim-node
    systemctl stop striim-dbms
    systemctl start striim-dbms
    systemctl start striim-node
    
  4. O Striim demorará um minuto a começar. Se quiser ver o estado, execute o seguinte comando:

    tail -f /opt/striim/logs/striim-node.log
    
  5. Agora, navegue de volta para o Azure e copie o endereço IP Público da VM do Striim.

    Copiar endereço IP da VM do Striim

  6. Para navegar para a IU da Web do Striim, abra um novo separador num browser e copie o IP público seguido de: 9080. Inicie sessão com o nome de utilizador administrador, juntamente com a palavra-passe de administrador que especificou no portal do Azure.

    Iniciar sessão no Striim

  7. Agora, vai chegar à home page do Striim. Existem três painéis diferentes : Dashboards, Aplicações e SourcePreview. O painel Dashboards permite-lhe mover dados em tempo real e visualizá-lo. O painel Aplicações contém os seus pipelines de dados de transmissão em fluxo ou fluxos de dados. No lado direito da página encontra-se SourcePreview, onde pode pré-visualizar os seus dados antes de os mover.

  8. Selecione o painel Aplicações . Por enquanto, vamos focar-nos neste painel. Existem várias aplicações de exemplo que pode utilizar para saber mais sobre o Striim. No entanto, neste artigo, irá criar as nossas próprias aplicações. Selecione o botão Adicionar Aplicação no canto superior direito.

    Adicionar a aplicação Striim

  9. Existem algumas formas diferentes de criar aplicações Striim. Selecione Iniciar do Zero para este cenário.

    Iniciar a aplicação do zero

  10. Atribua um nome amigável à sua aplicação, algo como oraToCosmosDB e selecione Guardar.

    Criar uma nova aplicação

  11. Chegará à Designer do Flow, onde pode arrastar e largar os conectores de caixa para criar as suas aplicações de transmissão em fluxo. Escreva Oracle na barra de pesquisa, arraste e largue a origem Oracle CDC na tela da aplicação.

    Origem oracle CDC

  12. Introduza as propriedades de configuração de origem da sua instância Oracle. O nome de origem é apenas uma convenção de nomenclatura para a aplicação Striim. Pode utilizar 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 Guardar para continuar.

    Configurar parâmetros de origem

  13. Agora, clique no ícone de onda do fluxo para ligar a instância do Azure Cosmos DB de destino.

    Ligar ao destino

  14. Antes de configurar o destino, certifique-se de que adicionou um certificado de raiz de Baltimore ao ambiente Java do Striim.

  15. Introduza as propriedades de configuração da instância do Azure Cosmos DB de destino e selecione Guardar para continuar. Eis os parâmetros-chave a ter em atenção:

    • Adaptador – utilize o DatabaseWriter. Ao escrever no Azure Cosmos DB para Apache Cassandra, é necessário o DatabaseWriter. O controlador cassandra 3.6.0 está agrupado com o Striim. Se o DatabaseWriter exceder o número de RUs aprovisionadas no contentor do Azure Cosmos DB, a aplicação falhará.

    • URL de Ligação – especifique o URL de ligação JDBC do Azure Cosmos DB. O URL está no formato jdbc:cassandra://<contactpoint>:10350/<databaseName>?SSL=true

    • Nome de utilizador – especifique o nome da sua conta do Azure Cosmos DB.

    • Palavra-passe – especifique a chave primária da sua conta do Azure Cosmos DB.

    • Tabelas – as tabelas de destino têm de ter chaves primárias e as chaves primárias não podem ser atualizadas.

    Captura de ecrã que mostra as propriedades de destino configuráveis.

    Configurar propriedades de destino

  16. Agora, vamos executar a aplicação Striim. Na barra de menus superior, selecione Criado e, em seguida, Implementar Aplicação. Na janela de implementação, pode especificar se pretende executar determinadas partes da sua aplicação em partes específicas da topologia de implementação. Uma vez que estamos a executar uma topologia de implementação simples através do Azure, vamos utilizar a opção predefinida.

    Implementar a aplicação

  17. Agora, vamos pré-visualizar o fluxo para ver os dados a fluir através do Striim. Clique no ícone de onda e clique no ícone de olho junto ao mesmo. Após a implementação, pode pré-visualizar o fluxo para ver os dados a fluir. Selecione o ícone de onda e o globo ocular junto ao mesmo. Selecione o botão Implementado na barra de menus superior e selecione Iniciar Aplicação.

    Iniciar a aplicação

  18. Ao utilizar um leitor da CDC (Captura de Dados Alterados), o Striim irá recolher apenas novas alterações na base de dados. Se tiver dados a fluir pelas tabelas de origem, irá vê-lo. No entanto, uma vez que se trata de uma tabela de exemplo, a origem que não está ligada a nenhuma aplicação. Se utilizar um gerador de dados de exemplo, pode inserir uma cadeia de eventos na sua base de dados Oracle.

  19. Verá dados a fluir através da plataforma Striim. O Striim também recolhe todos os metadados associados à sua tabela, o que é útil para monitorizar os dados e garantir que os dados são colocados no destino certo.

    Configurar o pipeline da CDC

  20. Por fim, vamos iniciar sessão no Azure e navegar para a sua conta do Azure Cosmos DB. Atualize a Data Explorer e poderá ver que os dados chegaram.

Ao utilizar a solução Striim no Azure, pode migrar continuamente dados para o Azure Cosmos DB a partir de várias origens, como Oracle, Cassandra, MongoDB e várias outras para o Azure Cosmos DB. Para saber mais, visite o site do Striim, transfira uma avaliação gratuita de 30 dias do Striim e, para quaisquer problemas ao configurar o caminho de migração com o Striim, envie um pedido de suporte.

Passos seguintes