Migrando seus dados para o Azure Cosmos DB

Migrando seus dados para o Azure Cosmos DB

Migrando seus dados para o Azure Cosmos DB 1
cupom com desconto - o melhor site de cupom de desconto cupomcomdesconto.com.br


No artigo anterior, Inicie sua jornada com o Azure Cosmos DB, fornecemos a mochila que ajuda você a iniciar sua jornada com o Azure Cosmos DB e a preenchemos com informações detalhadas sobre os benefícios de uso do Cosmos DB, como criar seu primeiro Cosmos DB conta, crie um novo banco de dados, contêiner e itens e, finalmente, como consultar os dados armazenados nesse contêiner.

Neste artigo, mostraremos como migrar os dados de uma tabela de banco de dados do SQL Server para um contêiner do Azure Cosmos DB usando a ferramenta de Migração de Dados do Cosmos DB e consultar os dados migrados.

Ferramenta de Migração de Dados do Azure Cosmos DB

Ao planejar migrar seus dados para um Azure Cosmos DB, você precisa usar a ferramenta de migração adequada que suporta o tipo de API do Cosmos DB. Por exemplo, a ferramenta Migração de dados do Cosmos DB pode ser usada para migrar os dados da API SQL e da API da tabela, mas não suporta a migração de dados para a API do Mongo DB e a API do Gremlin.

Antes de usar a ferramenta de migração de dados do Cosmos DB, é necessário garantir que o Microsoft .NET Framework 4.51 ou superior esteja instalado na máquina em que você executará a ferramenta de migração. Além disso, se você planeja migrar uma grande quantidade de dados para o contêiner do Cosmos DB, certifique-se de aumentar a taxa de transferência para migrar os dados mais rapidamente, pois a velocidade da migração de dados depende muito da quantidade de taxa de transferência. Você pode diminuir facilmente a taxa de transferência após concluir a operação de migração de dados para eliminar qualquer problema de alto custo.

Uma cópia pré-compilada da ferramenta de Migração de dados do Cosmos DB pode ser baixada diretamente desta página. O pacote baixado contém uma versão em linha de comando da ferramenta de migração de dados, como Dt.exee uma versão da interface gráfica do usuário dessa ferramenta, como Dtui.exe, como mostrado abaixo:

Versão pré-compilada do Cosmos DB DMT

Migrar dados SQL

A ferramenta de migração de dados do Cosmos DB é uma ferramenta executável, que não requer instalação para iniciar o processo de migração. Portanto, para iniciar a ferramenta de migração de dados, clique duas vezes no arquivo executável da ferramenta e ela será iniciada diretamente.

Quando a ferramenta de migração de dados é iniciada, o Bem-vinda A página exibirá uma parte das informações introdutórias sobre essa ferramenta, fornecendo links externos para a documentação da ferramenta e sugerindo novos recursos para essa ferramenta, conforme mostrado abaixo:

DMT Welcome

A ferramenta de migração de dados pode ser usada para importar dados para o contêiner do Cosmos DB, de diferentes fontes de dados. Isso inclui a importação de dados de arquivos JSON, MongoDB, SQL Server, arquivos CSV, armazenamento de Tabela do Azure, Amazon DynamoDB e contêineres da API SQL do Azure Cosmos DB.

Leia Também  How to resolve deadlocks in SQL Server

Nesta demonstração, copiaremos os dados de uma instância do SQL Server, escolhendo o SQL fonte de dados, como mostrado abaixo:

Copiar do SQL

Para conectar-se à fonte de dados do SQL Server, forneça o Cadeia de conexão padrão do SQL Server que contém o nome do SQL Server, o nome do banco de dados e credenciais de conta autorizadas para conectar-se a essa instância do SQL Server. Clique no Verificar opção para validar a cadeia de conexão e verifique se a conexão está aberta para essa instância do SQL Server, conforme abaixo:

Forneça a cadeia de conexão e valide

A próxima etapa é fornecer a consulta T-SQL usada para recuperar os dados a serem migrados dessa instância do SQL Server. Recomenda-se gravar e ajustar essa consulta T-SQL primeiro usando a ferramenta SSMS, para recuperar apenas as colunas e registros que você realmente precisa migrar, da maneira mais otimizada, como mostrado abaixo:

Escrever e testar a consulta no SSMS

Quando a consulta T-SQL ideal estiver pronta, forneça-a diretamente na ferramenta de Migração de Dados do Azure Cosmos DB ou salve-a como um arquivo e procure-o na ferramenta de migração de dados.

A opção Separador de aninhamento é usada para modificar a estrutura do documento gerado, criando relacionamentos hierárquicos para as subpropriedades, como estado, país, rua e número do prédio do endereço, durante o processo de importação de dados, conforme mostrado abaixo:

Fornecer texto de consulta

Na página Informações de Destino, especifique se os dados devem ser migrados para um arquivo JSON que pode ser usado posteriormente ou se são migrados diretamente para um contêiner do Azure Cosmos DB usando o método de importação Sequencial ou em Massa.

O importador em massa usa o procedimento armazenado do Cosmos DB para a eficiência da cópia, onde o procedimento armazenado será criado e executado durante a operação de importação e excluído da coleção de destino quando a operação de importação for concluída, com a capacidade de migrar para uma ou mais recipientes particionados.

Por outro lado, o importador seqüencial copia os registros de origem um por um, com a capacidade de migrar os dados para apenas um contêiner que contém partições únicas ou múltiplas.

Nesta demonstração, usaremos a opção de importador seqüencial, como mostrado abaixo:

Opções de importadores

Antes de seguir as próximas etapas no assistente da ferramenta de migração de dados, verifique se você já possui um banco de dados criado na sua conta do Azure Cosmos DB. Caso contrário, você pode criar facilmente um novo banco de dados Cosmos DB, seguindo as etapas abaixo:

Criar banco de dados Cosmos DB

Mantenha o nome do banco de dados criado, como o usaremos na próxima etapa.

Para obter a cadeia de conexão da conta do Azure Cosmos DB, abra a conta no Portal do Azure e copie a cadeia de conexão primária na opção Chaves, conforme mostrado abaixo:

Leia Também  Semana de treinamento gratuito: como eu uso o kit primeiro respondedor - sp_BlitzLock

Chaves do Cosmos DB

Para criar a cadeia de conexão do Azure Cosmos DB que pode ser usada na ferramenta de Migração de Dados, precisamos anexar o nome do banco de dados criado, como Database =, no lado direito da cadeia de conexão que é copiada das chaves do Cosmos DB.

Depois de fornecer a cadeia de conexão de destino, clique no Verificar opção para validar e testar a conexão com essa conta, conforme mostrado abaixo:

Forneça o alvo e valide-o

No campo Coleção, você precisa fornecer o nome do contêiner para o qual migrar os dados, onde podemos criar apenas um contêiner para o importador Sequencial, com a capacidade de criar várias partições nesse contêiner usando o valor fornecido da Chave de Partição . Vários contêineres suportados pelo importador em massa podem ser criados, fornecendo o nome do prefixo da coleção e o intervalo de coleções, como [0-n]. Neste exemplo, criaremos um contêiner e usaremos a coluna JobTitle como uma chave de partição e o BusinessEntityID como o campo ID nos itens da coleção.

cupom com desconto - o melhor site de cupom de desconto cupomcomdesconto.com.br

É recomendável ajustar a quantidade de taxa de transferência para acelerar a operação de importação. Em nosso exemplo, manteremos o valor padrão à medida que migraremos um pequeno número de registros para o banco de dados do Azure Cosmos DB.

Você também pode configurar várias opções avançadas, como o número de solicitações paralelas, para desativar a geração automática de ID e considerar o uso do campo ID importado, atualizando (substituindo) os documentos existentes, especificando o número de tentativas em caso de importação falha, o intervalo entre tentativas, o modo de conexão, incluindo DirectTcp, DirectHttps e Gateway e, finalmente, persistindo os dados como String, Epoch ou Both, como mostrado abaixo:

Configurações de destino

Na janela Configuração avançada, você será solicitado a especificar o local do arquivo de log de erros de importação, o tipo de erros a serem gravados nesse arquivo de log e a frequência de atualização das mensagens de progresso da importação, conforme mostrado abaixo:

Especificação do log de erros

A próxima janela é a Resumo janela, na qual é possível revisar todas as suas seleções antes de prosseguir com a operação de importação, conforme mostrado abaixo:

Janela Resumo

Se você conseguir executar o processo de importação posteriormente ou usar uma ferramenta de linha de comando, a janela Resumo fornecerá a capacidade de visualizar e copiar o comando que pode ser usado para importar os dados com base em suas escolhas das etapas anteriores, como mostrado abaixo:

Comando de visualização

Após revisar todas as opções selecionadas, clique no Importar opção para iniciar a operação de importação e monitorar o progresso da migração de dados.

Após a conclusão da operação, a ferramenta de Migração de Dados permite exportar o relatório de falhas ou iniciar uma nova operação de importação, conforme mostrado abaixo:

Importação concluída

Consulta de dados migrados

Para validar que os dados foram migrados para o contêiner do Azure Cosmos DB, abra a conta do Cosmos DB usando o Portal do Azure e procure o contêiner do banco de dados no Data Explorer, conforme mostrado abaixo:

Leia Também  [Video] Assista Brent Write T-SQL

Validar dados usando o Data Explorer

Para escrever sua própria consulta, em vez de usar o filtro de dados padrão, clique no Nova consulta SQL opção, para abrir o editor de consultas, como mostrado abaixo:

Editor de consultas abertas

Na janela do editor de consultas, personalize a consulta SELECT padrão, comprovando sua instrução T-SQL. Por exemplo, retornaremos apenas os funcionários com um cargo específico, adicionando um novo filtro usando a cláusula WHERE e executando a consulta, conforme mostrado abaixo:

Filtrar por cargo

Podemos personalizar a consulta T-SQL especificando a lista de colunas em que estamos interessados ​​e fornecer os nomes das colunas na instrução SELECT e, em seguida, executar a consulta, como abaixo:

Minimize o número de colunas retornadas

O editor de consultas também oferece a capacidade de escrever consultas T-SQL mais complexas para recuperar apenas os dados nos quais você está interessado e na visualização preferida. Mas você precisa ajustar a consulta e garantir que essa consulta não esteja consumindo muitos recursos do Azure Cosmos DB. Isso pode ser verificado verificando as Estatísticas da consulta para cada consulta para obter a melhor, como mostrado abaixo:

Estatísticas de consulta

Outra coisa a considerar aqui é garantir que você esteja usando a chave de partição em sua consulta para filtrar os dados recuperados, como os dados já armazenados nos contêineres com base nos valores da coluna da chave de partição.

Isso fica claro no exemplo simples abaixo, em que escrever uma consulta que filtra os dados usando outra coluna em vez da chave de partição, como na consulta esquerda, consumirá 8% de RUs extras em comparação com a filtragem de dados usando a chave de partição, como em a consulta correta, além do tempo extra de pesquisa de índice de 51% necessário para consultar os dados com base na chave que não é da partição, conforme mostrado abaixo:

Comparação de desempenho

Conclusão

Neste artigo, discutimos como migrar os dados da tabela de banco de dados do SQL Server para um contêiner do Azure Cosmos DB usando a ferramenta de Migração de Dados do Cosmos DB e consultando os dados usando instruções T-SQL. Espero que você ache útil.

Ahmad Yaseen
Últimas mensagens de Ahmad Yaseen (ver todos)

cupom com desconto - o melhor site de cupom de desconto cupomcomdesconto.com.br