Ferramenta de migração de MySQL/PostgreSQL

Converter bases de dados MySQL e PostgreSQL

  • Suporte para MySQL, PostgreSQL e todas as principais bases de dados SQL
  • Converter bases de dados SQL para bases de dados NoSQL
  • Mapeamento de dados gráfico sem necessidade de programação
  • Mapear dados de um banco de dados para outros formatos de dados, ou vice-versa
  • Especificar as configurações da chave do banco de dados
  • Conversão imediata e opções de automatização acessíveis
  • Registo de informações e tratamento de erros
  • Definir ações para as tabelas do banco de dados
  • Consultar diretamente as bases de dados
  • Ordenar os componentes de entrada do banco de dados

Converter MySQL para PostgreSQL

Uma aplicação comum do MapForce é a migração de dados entre bases de dados MySQL e PostgreSQL. O MapForce facilita este processo com ferramentas gráficas de mapeamento de dados, que funcionam por arrastar e soltar, e que incluem uma vasta biblioteca de filtros e funções de processamento de dados para transformar os dados de origem.

O Assistente de Conexão de Base de Dados no MapForce facilita a conexão. As conexões com o SQLite são suportadas como conexões nativas, diretamente ao ficheiro de base de dados SQLite. Não são necessários drivers adicionais. As conexões com o PostgreSQL são suportadas tanto como conexões nativas como através de drivers, utilizando interfaces como ODBC ou JDBC. As conexões nativas não requerem nenhum driver.

Quando carrega as estruturas de bases de dados MySQL e PostgreSQL no painel de mapeamento, o MapForce interpreta automaticamente os esquemas das bases de dados, permite-lhe selecionar as tabelas e vistas disponíveis e reconhece as relações entre as tabelas.

Converter MySQL para PostgreSQL no MapForce

Depois de ter carregado todos os modelos de conteúdo necessários para o mapeamento da sua base de dados, complete o mapeamento simplesmente arrastando linhas de ligação entre as estruturas de origem e de destino.

Utilizando a abordagem sem código do MapForce, é fácil satisfazer requisitos comuns de transformação de dados, por exemplo:

  • Converter PostgreSQL para MySQL
  • Migrar do PostgreSQL para o MySQL
  • Exportar dados do PostgreSQL para o MySQL
  • Converter MySQL para PostgreSQL

Filtragem e processamento de dados

Muitas mapeações de bases de dados exigem a transformação de dados entre a fonte e o destino, com base em condições booleanas ou em instruções SQL e SQL/XML. Pode ser necessário realizar comparações lógicas, cálculos matemáticos ou operações com strings, verificar se os dados da base de dados correspondem a um determinado valor e efetuar outras modificações nos dados. Na captura de ecrã acima, as funções de processamento de dados aparecem como os retângulos entre as linhas que ligam o modelo de dados de origem e o modelo de dados de destino.

As funções de processamento de dados permitem realizar mapeamentos avançados de bases de dados em tempo real, para uma vasta gama de necessidades de transformação.

Conversão instantânea de bases de dados

Depois de definir o mapeamento, o motor MapForce integrado permite visualizar e guardar os resultados com apenas um clique.

A correspondência entre o MySQL e o PostgreSQL irá gerar resultados na forma de scripts SQL (por exemplo, instruções SELECT, INSERT, UPDATE e DELETE) que serão executados diretamente na sua base de dados de destino, a partir do próprio MapForce.

Após visualizar o resultado, terá a opção de automatizar o processo de transformação de dados através do MapForce Server.

Registo (ou rastreamento) da saída da base de dados

A funcionalidade de rastreamento da saída da base de dados facilita o registo de todas as alterações efetuadas por um projeto de mapeamento na base de dados PostgreSQL ou MySQL, durante a execução do mapeamento.

Quando o registo de eventos está ativado, ações como inserções ou atualizações de dados na base de dados, ou erros, são registados num ficheiro XML que pode ser analisado posteriormente ou processado de forma automatizada.

A monitorização de bases de dados pode ser ativada a nível do componente da base de dados, da tabela, do procedimento armazenado ou do campo da base de dados. Pode optar por monitorizar todas as mensagens ou apenas os erros, ou pode desativar completamente a monitorização.

Depois de selecionar o nível de registo desejado, o componente de base de dados afetado no projeto de mapeamento é expandido com uma estrutura XML que mostra a estrutura do registo. Se preferir que o ficheiro de registo esteja num formato diferente de XML, pode mapear os dados para outro formato suportado pelo MapForce (por exemplo, um ficheiro de texto ou até mesmo outra base de dados).

Ao clicar no botão "Saída" para visualizar o resultado da configuração, também pode ver um exemplo de como será o registo de eventos quando a configuração for executada.

Rastreamento do banco de dados para registar informações de saída, com o objetivo de facilitar a conversão do banco de dados

Gestão de erros em transações de bases de dados

O MapForce também oferece funcionalidades para o tratamento de transações de bases de dados, permitindo reverter a parte afetada da conversão da base de dados quando ocorre um erro, e, opcionalmente, prosseguir com o restante do processo de mapeamento.

Por vezes, ocorre um erro que não impede a continuação do restante do processo de mapeamento de uma base de dados, como quando certas restrições da base de dados impedem a inserção ou atualização de dados inválidos.

A ativação do tratamento de transações de base de dados irá encapsular todas as alterações efetuadas pelo componente de base de dados dentro de uma transação, que será revertida em caso de erro. Poderá optar por prosseguir com o restante da configuração ou interromper a execução da mesma. É possível ativar as transações tanto no nível do componente de base de dados como no nível das ações da tabela.

Permitir transações de base de dados para tratamento de erros

Isto é muito útil quando o designer de mapeamento deseja capturar apenas os dados recebidos que são válidos e simplesmente ignorar os dados inválidos.

Mapeamento avançado de bases de dados

Para complementar as suas capacidades de mapeamento e integração de bases de dados, o MapForce inclui uma aba de "Consulta de Base de Dados" para realizar consultas diretas a bases de dados. Quando se conecta a uma base de dados através da aba "Consulta de Base de Dados", o MapForce exibe as suas tabelas numa estrutura hierárquica na janela do navegador. O MapForce não se limita a migrar MySQL e PostgreSQL. Existe suporte especializado para:

  • Pássaro de Fogo
  • IBM DB2 para iSeries
  • IBM DB2®
  • Informix®
  • MariaDB
  • Microsoft Access™
  • Microsoft® Azure SQL
  • Microsoft® SQL Server®
  • MySQL®
  • Oracle®
  • PostgreSQL
  • Progress OpenEdge
  • SQLite
  • Sybase®
  • Teradata
  • MongoDB
  • CouchDB
Consultar a base de dados ao definir um mapeamento de conversão da base de dados

Pode, então, utilizar a aba do editor SQL para visualizar, editar e executar instruções SQL, seja abrindo ficheiros SQL existentes ou criando instruções SQL do zero, utilizando funcionalidades de arrastar e soltar e de autocompletar.

Pode executar o seu script SQL e visualizar os resultados em formato tabular, e também pode guardar tanto os dados obtidos como o próprio script SQL, individualmente, em ficheiros separados.

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 serão adicionados a uma base de dados que é o destino do mapeamento de dados. Pode fornecer os valores das chaves diretamente no MapForce, ou pode deixar que o sistema de base de dados gere automaticamente esses valores.

Em situações em que as relações de chave primária e/ou chave estrangeira não estão explicitamente definidas nas suas tabelas de base de dados, o MapForce permite que defina estas relações diretamente, sem qualquer impacto nos dados de origem.

Definir ações para tabelas de base de dados

Quando está a mapear para uma base de dados, o MapForce permite-lhe selecionar ações para as tabelas da base de dados, permitindo controlar como os dados são gravados na base de dados MySQL ou PostgreSQL. Isto oferece-lhe total flexibilidade para automatizar as tarefas de gestão de dados mais avançadas.

A caixa de diálogo "Ações da Tabela de Base de Dados", de fácil utilização, permite definir as colunas da tabela selecionada que serão utilizadas para determinar qual ação (INSERIR, ATUALIZAR, ELIMINAR) deve ser executada na base de dados.

Isto oferece uma flexibilidade sem precedentes na manipulação de linhas de bases de dados, em resposta a dados XML, de bases de dados, EDI, XBRL, ficheiros simples, Excel, JSON, JSON5, serviços web ou outros dados de bases de dados, através do MapForce.

Aprenda como configurar ações nas tabelas de base de dados no MapForce

Suporte para procedimentos armazenados SQL

O MapForce oferece um suporte robusto para procedimentos armazenados, que podem ser utilizados como componentes de entrada (procedimentos que fornecem resultados) ou como componentes de saída (procedimentos que inserem ou atualizam dados). Alternativamente, os procedimentos armazenados podem ser integrados como chamadas de função, permitindo que os utilizadores forneçam dados de entrada, executem o procedimento armazenado e leiam/transformem os dados de saída para outros componentes.

Esta captura de ecrã mostra a utilização de um procedimento armazenado no SQL Server para criar um ficheiro XML. O procedimento devolve uma tabela de dados que mostra todos os gestores na hierarquia acima do identificador do funcionário especificado, que é fornecido como um parâmetro de entrada – neste exemplo, o valor constante 67.

O parâmetro também pode ser fornecido como um valor calculado ou como um elemento de dados obtido de outra parte da base de dados.

O MapForce oferece um menu de contexto que permite aos utilizadores executar o procedimento armazenado para visualizar a estrutura de dados utilizada no mapeamento. A execução do mapeamento ilustrado gera a saída em formato XML.

As ferramentas avançadas de mapeamento de dados incluem suporte para procedimentos armazenados

Ordenar os componentes de entrada da base de dados

As consultas SQL que operam dentro da base de dados nem sempre são suficientes para tarefas complexas de mapeamento de dados. O MapForce oferece funcionalidades adicionais de ordenação de bases de dados através do componente SQL-WHERE/ORDER, permitindo processar dados de entrada de bases de dados que necessitam de processamento adicional, ou quando outros dados ou condições no mapeamento afetam a ordem de classificação das linhas de dados.

Suporte para valores nulos nas ações de tabelas de base de dados

A caixa de diálogo "Ações na Tabela de Base de Dados" suporta a comparação de valores NULL. As comparações que consideram os valores NULL oferecem uma forma mais eficiente de lidar com bases de dados que contêm valores nulos. Os utilizadores do MapForce podem configurar um mapeamento de base de dados de forma que a comparação de dados seja feita tendo em conta os valores NULL, de acordo com as regras aplicáveis ao tipo de base de dados envolvido no mapeamento.

O mapeamento de dados apresentado à direita tem como objetivo atualizar a tabela de destino sem inserir registos duplicados. Ambas as tabelas são definidas de forma a permitir que o campo de e-mail seja nulo, pelo que é possível que existam registos com o mesmo nome, mas com campos de e-mail nulos, em cada tabela.

Clicar no ícone "Ações" ao lado da tabela de base de dados "TARGET" abre a caixa de diálogo "Ações da Base de Dados". A caixa de seleção "Igual a NULL" ao lado do campo de e-mail permite que o MapForce trate os valores NULL na origem e no destino como iguais para fins de mapeamento de dados, mesmo que não sejam considerados iguais pelas regras da base de dados.

Mapeamento de bases de dados com tratamento de valores nulos no MapForce

Automatize a execução de mapeamentos de bases de dados com o MapForce Server

Altova MapForce Server inclui o motor de transformação de dados integrado, desenvolvido para o MapForce, e foi significativamente aprimorado para funcionar em ambientes de servidor. O MapForce Server realiza.. transformações de dados Para migrar dados do PostgreSQL para o MySQL ou para qualquer combinação de formatos como XML, bases de dados, EDI, XBRL, ficheiros simples, Excel, JSON, Shopify e/ou serviços web, utilizando mapeamentos de dados pré-processados e otimizados, armazenados em ficheiros de execução, com base nos mapeamentos definidos no MapForce. O MapForce Server eleva a transformação de dados a um novo nível, com funcionalidades de servidor que incluem processamento paralelo, multithreading, inserção em lote de instruções SQL, suporte multiplataforma e muito mais.

A pré-processamento permite um desempenho mais rápido e uma utilização de memória reduzida para a maioria das mapeamentos de dados. O MapForce Server funciona sob a gestão do FlowForce Server, podendo ser executado de forma autónoma a partir da linha de comandos ou, de forma programática, através de uma API.

Após a criação e testes de um mapeamento no MapForce, este pode ser executado pelo servidor MapForce para automatizar processos de negócio que exigem transformações de dados repetitivas.

Automatize as tarefas de mapeamento de bases de dados através do MapForce

O MapForce pré-processa e otimiza as correspondências de dados, armazenando-as em ficheiros de execução do MapForce Server para execução a partir da linha de comandos pelo MapForce Server, e as carrega para utilização em tarefas do FlowForce Server.

Quando o MapForce Server funciona sob a gestão do FlowForce Server, as transformações de dados são executadas como etapas de um processo do FlowForce Server, com base em gatilhos definidos como parte desse processo. Por exemplo, um novo documento XBRL é colocado numa pasta, o que desencadeia um processo do FlowForce Server que envolve várias etapas: primeiro, o ficheiro é validado usando o RaptorXML+XBRL Server, e depois o MapForce Server é executado para extrair determinados dados do XBRL e inseri-los numa base de dados.