Mover dados para o Banco de Dados SQL do Azure

Concluído

Embora existam métodos disponíveis para migrar um esquema inteiro e seus dados, também há casos em que apenas um subconjunto do banco de dados é necessário. Felizmente, muitos dos métodos que vimos suportam migração parcial de dados, e vamos aprender sobre alguns outros.

Em nosso cenário de fabricante de bicicletas, suponha que a empresa tenha um banco de dados SQL Server local que contenha vários anos de dados de vendas, clientes e produtos. A empresa pretende migrar para uma Base de Dados SQL do Azure para tirar partido da escalabilidade e flexibilidade da nuvem. No entanto, eles só precisam migrar as tabelas de clientes e produtos, pois desejam manter seus dados de vendas no local por motivos de segurança.

Sincronização de Dados SQL

O recurso Sincronização de Dados permite sincronizar dados incrementalmente entre vários bancos de dados em execução no Banco de Dados SQL do Azure ou no SQL Server local. Você também pode usar o Data Sync para manter seus bancos de dados de origem e de destino sincronizados após as migrações. A Sincronização de Dados controla as alterações usando gatilhos de inserção, atualização e exclusão. As alterações são registradas em uma tabela lateral no banco de dados do usuário.

Devido à sua capacidade de sincronizar dados em ambas as direções, este recurso é uma ótima opção para aplicações híbridas. É particularmente atraente para os clientes que estão considerando migrar para a nuvem, pois permite que eles façam a transição de alguns de seus aplicativos para o Azure rapidamente.

Diagram showing the SQL Data Sync architecture.

A Sincronização de Dados é baseada em uma topologia de hub, onde você define um dos bancos de dados no grupo de sincronização para funcionar como um banco de dados de hub. O grupo de sincronização pode ter vários membros e você só pode sincronizar alterações entre o banco de dados do hub e bancos de dados individuais. A Sincronização de Dados controla as alterações usando INSERT, UPDATEe DELETE aciona por meio de uma tabela histórica criada no banco de dados do usuário.

Quando comparado à replicação transacional, que tem menor latência, uma desvantagem do Data Sync é seu maior impacto no desempenho. Isso significa que as alterações feitas em um banco de dados exigem mais recursos ao usar a Sincronização de Dados.

Quando você cria um grupo de sincronização, ele solicita que você forneça um banco de dados responsável para armazenar os metadados do grupo de sincronização. O local dos metadados pode ser um novo banco de dados ou um banco de dados existente, desde que resida na mesma região do grupo de sincronização.

Screenshot showing the new sync group page from Azure portal.

Você pode especificar as propriedades do grupo de sincronização, como a sincronização de agendamento, a opção de resolução de conflitos e o uso de um link privado, se necessário.

Para obter mais informações sobre como configurar a Sincronização de Dados SQL, consulte Tutorial: Configurar a Sincronização de Dados SQL entre bancos de dados no Banco de Dados SQL do Azure e no SQL Server.

Cópia em massa

O utilitário bcp permite a exportação em massa de dados de uma tabela do SQL Server para um arquivo de dados e vice-versa. O utilitário é versátil, permitindo a transferência de dados entre o SQL Server e outros programas ou bancos de dados.

Compreender o esquema e os tipos de dados da tabela é essencial para usar o comando bcp de forma eficaz, a menos que um arquivo de formato pré-existente esteja disponível.

Azure Data Factory

Você pode usar o Azure Data Factory para migração de dados em vez de migração de banco de dados inteiro. O Azure Data Factory pode migrar e transformar dados de bancos de dados SQL Server de origem e é comumente usado para cargas de trabalho de business intelligence (BI).