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.
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:
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.
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.
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.
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.
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.
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:
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.
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.
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.
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 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.
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.
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.
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.






