A transferência de dados de uma base de dados para outra é uma das tarefas mais comuns na gestão de dados, seja para consolidar sistemas após uma fusão, desativar uma plataforma antiga, adotar um único fornecedor de bases de dados ou migrar uma base de dados de um computador pessoal para um servidor. O Altova MapForce é uma ferramenta de migração de bases de dados que realiza estas conversões através de uma interface visual e intuitiva, com arrastar e soltar, eliminando a necessidade de escrever scripts de migração manualmente.
O MapForce conecta-se às suas bases de dados de origem e destino, lê automaticamente ambos os esquemas e permite que defina as regras de migração, estabelecendo ligações entre as tabelas e colunas de cada lado. Como a correspondência entre a origem e o destino é definida explicitamente, não está limitado a esquemas idênticos: pode renomear colunas, dividir ou combinar campos, converter tipos de dados, filtrar linhas e remodelar a estrutura de destino, tudo no âmbito da mesma migração.
Suportado relacional bases de dados:
Suportado NoSQL Bases de dados:
Qualquer base de dados suportada pode atuar como fonte, como destino, ou como ambos. Isso significa que a mesma ferramenta cobre todas as combinações de fonte para destino listadas acima, em vez de um único caminho de migração fixo.
É fácil definir um projeto de migração de bases de dados utilizando ferramentas visuais de mapeamento de dados, que funcionam por arrastar e soltar, no MapForce. Pode até começar com o Altova AI para obter sugestões de conexões após carregar as estruturas de origem e destino.
1. Conecte-se à base de dados de origem. O assistente de conexão à base de dados guia o utilizador durante o processo de conexão. As conexões SQLite são suportadas como conexões nativas e diretas ao ficheiro da base de dados, sem a necessidade de drivers adicionais. Outras bases de dados podem ser conectadas de forma nativa ou através de interfaces padrão, incluindo ODBC, JDBC, ADO e ADO.NET.
2. Conecte-se à base de dados de destino. O MapForce carrega o esquema de destino da mesma forma e exibe as tabelas, vistas e relações disponíveis.
3. Defina as tabelas e colunas. Arraste linhas de ligação das tabelas de origem para as tabelas de destino, ou comece com o Altova AI. O MapForce reconhece automaticamente as relações entre as tabelas, de forma que as tabelas relacionadas mantêm a sua estrutura no mapeamento.
4. Transformar os dados conforme necessário. Insira filtros, condições e funções de processamento de dados entre a fonte e o destino para converter tipos, reformatar valores, concatenar ou dividir campos, e excluir as linhas que não pretende migrar.
5. Visualização e execução. O motor MapForce integrado permite visualizar os scripts SQL – instruções SELECT, INSERT, UPDATE e DELETE – na aba "Saída" antes de os executar contra o banco de dados de destino.
Várias das tarefas de migração de bases de dados para bases de dados mais comuns são descritas abaixo. A mesma abordagem pode ser aplicada a qualquer outra combinação de bases de dados suportadas.
As organizações que migram do Oracle para o PostgreSQL precisam transferir os dados das tabelas entre dois sistemas que nomeiam e definem os tipos das suas colunas de forma diferente. Utilizando o Assistente de Conexão de Base de Dados, o MapForce estabelece ligação ao Oracle através de JDBC ou ODBC e ao PostgreSQL através de uma ligação nativa ou de um driver. Ele carrega ambos os esquemas para o painel de mapeamento, onde pode arrastar e soltar (ou utilizar o Altova AI) para conectar as tabelas do Oracle às suas correspondentes no PostgreSQL.
É tão simples arrastar e soltar funções de processamento de dados para converter valores entre os tipos de dados do Oracle e do PostgreSQL, formatar datas e carimbos de data e hora, e tratar valores NULL de forma adequada, de acordo com as regras das bases de dados envolvidas. As configurações das chaves da base de dados permitem definir se os valores das chaves primárias e estrangeiras provêm da fonte Oracle ou são gerados pelo PostgreSQL durante a inserção.
A migração do MySQL para o PostgreSQL é uma das conversões mais comuns para as quais o MapForce é utilizado. Depois de ambas as estruturas de base de dados serem carregadas, o MapForce interpreta cada esquema, apresenta as tabelas e vistas disponíveis e reconhece as relações entre elas. Para concluir a migração, arraste linhas de ligação entre as estruturas de origem e destino e adicione funções de processamento de dados sempre que os tipos ou convenções do MySQL e do PostgreSQL forem diferentes.
Como o mapeamento é guardado como um modelo reutilizável, a mesma migração de MySQL para PostgreSQL pode ser executada novamente sempre que os dados de origem forem alterados, por exemplo, durante uma transição gradual ou como uma operação de carregamento recorrente.
As bases de dados SQLite são frequentemente utilizadas para armazenamento local ou integrado, e posteriormente é necessário migrá-las para um servidor MySQL partilhado.
A flexibilidade do sistema de tipos do SQLite é o aspeto mais importante a ter em conta nesta migração: os valores que o SQLite armazena de forma menos rigorosa precisam de ser mapeados para colunas do MySQL com tipos de dados definidos. As funções de processamento de dados do MapForce realizam essa conversão dentro do mapeamento, garantindo que os valores com os tipos corretos sejam gravados no destino MySQL.
Ao migrar de MSSQL para MySQL, o MapForce lida com as diferenças de esquema entre os dois sistemas como parte do processo de mapeamento: a renomeação de colunas, a conversão de tipos e a formatação de valores são todas realizadas graficamente, em vez de através de scripts de migração. As ações nas tabelas permitem controlar como os dados são mapeados. Pode escolher entre inserir, atualizar ou eliminar dados para cada tabela, e definir quais colunas o MapForce utiliza para determinar se uma linha de destino já existe.
As bases de dados que ultrapassaram as capacidades do ambiente de trabalho são geralmente migradas para o SQL Server. O MapForce conecta-se ao Microsoft Access e ao SQL Server através do ADO, carrega ambos os esquemas e permite mapear tabelas e consultas do Access para tabelas do SQL Server.
O Access e o SQL Server diferem em relação aos tipos de dados, à gestão de chaves e às regras de nomenclatura. A representação visual da conversão torna essas diferenças evidentes e permite que você as corrija uma única vez, na própria conversão, em vez de repetidamente nos dados. As configurações de chave do banco de dados determinam se os valores "AutoNumber" do Access são mantidos ou substituídos pelos valores de identidade do SQL Server.
Converter um ficheiro ACCDB para SQLite move um banco de dados Access para um formato leve, baseado em ficheiros, que funciona em qualquer lugar. O MapForce lê o banco de dados Access através do ADO e escreve no ficheiro SQLite através de uma ligação nativa. Tal como em qualquer migração do MapForce, os esquemas de origem e destino não precisam de corresponder. Pode simplificar, renomear ou selecionar subconjuntos da estrutura do Access ao convertê-la para SQLite.
O MariaDB e o MySQL estão intimamente relacionados, mas uma migração entre eles ainda requer a consideração dos tipos de dados, das chaves e de quaisquer definições de colunas divergentes. Quando os esquemas são idênticos, o mapeamento é uma simples série de correspondências; quando diferem, as mesmas ferramentas e funções utilizadas em qualquer outro processo de migração são aplicáveis.
O MapForce também permite a migração de dados de bases de dados relacionais para bases de dados NoSQL, incluindo MongoDB, CouchDB e Microsoft Azure Cosmos DB. As linhas e tabelas relacionadas das bases de dados relacionais são mapeadas para estruturas de documentos de forma visual, permitindo que um esquema SQL normalizado seja transformado em documentos como parte do processo de migração, em vez de numa etapa de transformação separada.
A maioria das migrações reais não é uma simples correspondência direta de colunas. O MapForce inclui uma biblioteca de funções de processamento de dados para comparações lógicas, cálculos matemáticos, manipulação de texto e tratamento de datas e horas, além de filtros e condições que controlam quais linhas chegam ao destino.
Isto significa que pode migrar um subconjunto dos dados de origem, combinar duas colunas de origem numa única coluna de destino, dividir uma única coluna de origem em várias colunas de destino, procurar e substituir valores, ou aplicar regras de negócio durante a migração, tudo dentro da mesma interface visual de mapeamento.
Configurações das chaves da base de dados
As configurações de chaves de base de dados no MapForce permitem personalizar a forma como os valores das chaves primárias e estrangeiras são adicionados à base de dados de destino durante uma migração. Pode fornecer os valores das chaves a partir do próprio MapForce, preservando os identificadores utilizados no sistema de origem, ou pode deixar que o sistema da base de dados de destino gere automaticamente esses valores.
Definir ações para tabelas de base de dados
A caixa de diálogo "Ações na Tabela de Base de Dados" controla a forma como os dados são gravados em cada tabela de destino. Selecione a ação que deve ser executada (INSERIR, ATUALIZAR, ELIMINAR) e defina as colunas que o MapForce utiliza para corresponder aos registos de destino. Esta caixa de diálogo suporta a comparação de valores NULL, permitindo que uma migração seja configurada para comparar dados de forma a ter em conta os valores NULL, de acordo com as regras da base de dados em questão.
Suporte para procedimentos armazenados SQL
O MapForce inclui suporte para procedimentos armazenados como componentes de entrada ou saída, ou como chamadas de funções – fornecendo dados de entrada, executando o procedimento e mapeando os dados de saída para outros componentes. Os procedimentos armazenados também podem ser utilizados para gerar valores-chave durante uma migração.
Registo/Rastreamento da saída da base de dados
Registo de atividades da base de dados regista todas as alterações que uma migração efetua durante a sua execução. Com o registo ativado, eventos como inserções ou atualizações na base de dados, bem como erros, são gravados num ficheiro XML que pode analisar posteriormente ou processar de forma mais detalhada. O registo de atividades é útil para criar um registo do que foi migrado.
Gestão de erros em transações de bases de dados
O MapForce oferece tratamento de transações de base de dados, permitindo reverter a parte afetada de uma conversão de base de dados quando ocorre um erro, e, opcionalmente, prosseguir com o restante do processo de mapeamento. Isto evita que uma falha parcial deixe a base de dados de destino num estado inconsistente.
Consultar diretamente as bases de dados
A aba "Consulta à Base de Dados" permite executar consultas SQL contra a base de dados de origem ou de destino, diretamente dentro do MapForce, com um editor SQL completo. Isto é útil para analisar os dados de origem antes de criar o mapeamento e para verificar os resultados na base de dados de destino após a conclusão da migração.
Ordenar os componentes de entrada da base de dados
Para migrações que exigem dados de entrada numa ordem específica, o componente SQL-WHERE/ORDER oferece opções adicionais de ordenação e filtragem para os componentes de entrada de dados.
Depois de um mapeamento de migração ser concebido e testado no MapForce, o Altova MapForce Server oferece automação de alto desempenho, que pode ser acionada a partir da linha de comandos, programaticamente através de uma API, ou como uma etapa de um processo gerido pelo FlowForce Server, com base em gatilhos e horários definidos.
O MapForce Server inclui processamento paralelo e multithreading, inserção em lote de dados SQL e suporte a diferentes plataformas, permitindo que grandes migrações e carregamentos repetidos sejam executados mais rapidamente do que se fossem feitos de forma interativa. Para uma migração faseada, em que as mesmas tabelas são movidas repetidamente até à transição final, isto transforma um mapeamento único numa operação repetível e programada.




