Uma aplicação comum do MapForce é a migração de dados entre bancos de dados MySQL e PostgreSQL. O MapForce facilita essa tarefa com ferramentas gráficas de mapeamento de dados, que utilizam a funcionalidade de arrastar e soltar, e inclui uma vasta biblioteca de filtros e funções de processamento de dados para transformar os dados de origem.
O assistente de conexão com o banco de dados no MapForce facilita a conexão. As conexões com o SQLite são suportadas como conexões nativas e diretas ao arquivo do banco 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 quanto como conexões baseadas em drivers, através de interfaces (drivers) como ODBC ou JDBC. As conexões nativas não requerem nenhum driver.
Ao carregar as estruturas de banco de dados MySQL e PostgreSQL no painel de mapeamento, o MapForce interpreta automaticamente os esquemas do banco de dados, permite que você selecione as tabelas e visualizações disponíveis e reconhece as relações entre as tabelas.
Depois de carregar todos os modelos de conteúdo necessários para o mapeamento do seu banco de dados, complete o mapeamento simplesmente arrastando linhas de conexão entre as estruturas de origem e destino.
Utilizando a abordagem sem código do MapForce, é fácil atender a requisitos comuns de transformação de dados, por exemplo:
Muitas configurações de mapeamento de bancos 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 do banco de dados possuem um valor específico e fazer outras modificações nos dados. Na captura de tela acima, as funções de processamento de dados aparecem como os blocos entre as linhas que conectam 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 bancos de dados em tempo real, atendendo a uma variedade de necessidades de transformação no mundo real.
Depois que o mapeamento for definido, o motor MapForce integrado permite visualizar e salvar os resultados com apenas um clique.
A conversão do seu banco de dados MySQL para PostgreSQL gerará resultados na forma de scripts SQL (por exemplo, comandos SELECT, INSERT, UPDATE e DELETE) que serão executados diretamente no seu banco de dados de destino, a partir do próprio MapForce.
Após visualizar o resultado, você terá a opção de automatizar o processo de transformação de dados através do MapForce Server.
O rastreamento da saída do banco de dados facilita o registro de todas as alterações feitas por um projeto de mapeamento no banco de dados PostgreSQL ou MySQL durante a execução do mapeamento.
Quando o rastreamento está ativado, eventos como inserções ou atualizações no banco de dados, ou erros, são registrados em um arquivo XML que você pode analisar posteriormente ou processar de forma automatizada.
O rastreamento do banco de dados pode ser ativado no nível do componente do banco de dados, da tabela, do procedimento armazenado ou do campo do banco de dados. Você pode optar por rastrear todas as mensagens ou apenas os erros, ou pode desativar o rastreamento completamente.
Depois de selecionar o nível de rastreamento desejado, o componente do banco de dados afetado no projeto de mapeamento é expandido com uma estrutura XML que exibe a estrutura do log. Se preferir que o arquivo de log esteja em um formato diferente de XML, você pode mapear os dados para outro formato suportado pelo MapForce (por exemplo, um arquivo de texto ou até mesmo outro banco de dados).
Ao clicar no botão "Saída" para visualizar o resultado da configuração, você também pode ver um exemplo de como o registro de rastreamento se parecerá quando a configuração for executada.
O MapForce também oferece recursos para gerenciar transações de banco de dados, permitindo reverter a parte afetada da conversão do banco de dados quando ocorre um erro, e, opcionalmente, prosseguir com o restante do processo de mapeamento.
Às vezes, ocorre um erro que não impede a continuação do restante do mapeamento de um banco de dados, como quando certas restrições do banco de dados impedem que o mapeamento insira ou atualize dados inválidos.
A ativação do tratamento de transações no banco de dados encapsulará todas as alterações realizadas pelo componente do banco de dados dentro de uma transação, que será desfeita em caso de erro. Você pode optar por prosseguir com o restante da configuração ou interromper a execução da configuração. É possível ativar as transações tanto no nível do componente do banco de dados quanto no nível das ações da tabela.
Isso é muito útil quando o designer do mapeamento deseja capturar apenas os dados de entrada válidos e simplesmente ignorar os dados inválidos.
Para complementar suas capacidades de mapeamento e integração de bancos de dados, o MapForce inclui uma aba de "Consulta de Banco de Dados" para realizar consultas diretas a bancos de dados. Ao se conectar a um banco de dados usando esta aba, o MapForce exibe suas tabelas em uma estrutura hierárquica na janela do navegador. O MapForce não se limita a migrar bancos de dados MySQL e PostgreSQL. Suporte especializado está disponível para:
Você pode então usar a aba do editor SQL para exibir, editar e executar comandos SQL, seja abrindo arquivos SQL existentes ou criando comandos SQL do zero, utilizando funcionalidades de arrastar e soltar e de autocompletar.
Você pode executar seu script SQL e visualizar os resultados em formato de tabela, além de salvar tanto os dados recuperados quanto o script SQL individualmente em arquivos separados.
As configurações de chaves de banco de dados no MapForce permitem personalizar a forma como os valores de chaves primárias e estrangeiras serão adicionados a um banco de dados que é o destino do mapeamento de dados. Você pode fornecer os valores das chaves diretamente no MapForce, ou pode permitir que o sistema de banco de dados gerencie a criação de valores automáticos.
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 banco de dados, o MapForce permite que você defina essas relações diretamente, sem afetar os dados de origem.
Ao mapear para um banco de dados, o MapForce permite que você selecione ações para as tabelas do banco de dados, controlando assim como os dados são gravados no banco de dados MySQL ou PostgreSQL. Isso oferece total flexibilidade para automatizar as tarefas de gerenciamento de dados mais avançadas.
A caixa de diálogo "Ações da Tabela de Banco de Dados", de fácil utilização, permite que você defina as colunas da tabela selecionada que serão usadas para determinar qual ação (INSERIR, ATUALIZAR, EXCLUIR) deve ser executada no banco de dados.
Isso oferece uma flexibilidade sem precedentes na manipulação de linhas de banco de dados em resposta a dados XML, de banco de dados, EDI, XBRL, arquivos de texto simples, Excel, JSON, JSON5, serviços web ou outros dados de banco de dados, utilizando o MapForce.
O MapForce oferece suporte abrangente 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 inseridos como uma chamada de função, permitindo que os usuários forneçam dados de entrada, executem o procedimento armazenado e leiam/transformem os dados de saída para outros componentes.
Esta captura de tela mostra a utilização de um procedimento armazenado no SQL Server para criar um arquivo XML. O procedimento retorna uma tabela de dados que exibe todos os gerentes na hierarquia de comando acima do ID 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 do banco de dados.
O MapForce oferece um menu de contexto que permite aos usuários executar o procedimento armazenado para exibir a estrutura de dados utilizada no mapeamento. A execução do mapeamento ilustrado gera a saída em formato XML.
Consultas SQL que operam dentro do banco de dados nem sempre são suficientes para tarefas complexas de mapeamento de dados. O MapForce oferece funcionalidades adicionais de ordenação de banco de dados através do componente SQL-WHERE/ORDER, para entradas de banco de dados que exigem processamento adicional, ou quando outros dados ou condições no mapeamento afetam a ordem de classificação das linhas de dados.
A janela de diálogo "Ações da Tabela de Banco de Dados" suporta a comparação de valores NULL. As comparações que consideram valores NULL oferecem uma forma aprimorada de lidar com bancos de dados que contêm valores nulos. Os usuários do MapForce podem configurar um mapeamento de banco de dados para que a comparação de dados seja feita de forma a considerar valores NULL, de acordo com as regras aplicáveis ao tipo de banco de dados envolvido no mapeamento.
O mapeamento de dados apresentado à direita tem como objetivo atualizar a tabela de destino sem inserir registros duplicados. Ambas as tabelas são definidas de forma a permitir que o campo de e-mail seja nulo, portanto, é possível que existam registros com o mesmo nome, mas com campos de e-mail nulos, em cada tabela.
Clicar no ícone "Ações" ao lado da tabela de banco de dados "TARGET" abre a janela "Ações do Banco de Dados". A caixa de seleção "Igual a NULO" ao lado do campo de e-mail permite que o MapForce trate os valores NULOS na fonte e no destino como iguais para fins de mapeamento de dados, mesmo que eles não sejam considerados iguais pelas regras do banco 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, banco de dados, EDI, XBRL, arquivos de texto simples, Excel, JSON, Shopify e/ou serviços web, o sistema utiliza mapeamentos de dados pré-processados e otimizados, armazenados em arquivos de execução, com base nos mapeamentos definidos no MapForce. O MapForce Server eleva a transformação de dados a um novo patamar, oferecendo recursos de servidor, incluindo processamento paralelo, multithreading, inserção em lote de dados no SQL, suporte multiplataforma e muito mais.
O pré-processamento permite um desempenho mais rápido e reduz o uso de memória para a maioria das transformações de dados. O MapForce Server opera sob o gerenciamento do FlowForce Server, podendo ser executado de forma independente a partir da linha de comando ou programaticamente através de uma API.
Após a criação e o teste de um mapeamento no MapForce, este pode ser executado pelo MapForce Server para automatizar processos de negócios que exigem transformações repetitivas de dados.
O MapForce pré-processa e otimiza as correspondências de dados, armazena-as em arquivos de execução do MapForce Server para execução via linha de comando pelo MapForce Server, e as envia para serem utilizadas em tarefas do FlowForce Server.
Quando o MapForce Server opera sob o gerenciamento do FlowForce Server, os mapeamentos de dados são executados como etapas de um processo do FlowForce Server, com base em gatilhos definidos como parte desse processo. Por exemplo, um novo documento de instância XBRL é armazenado em um diretório, o que dispara um processo do FlowForce Server com várias etapas para, primeiramente, validar o arquivo usando o RaptorXML+XBRL Server, e, em seguida, executar o MapForce Server para extrair determinados dados do XBRL e inseri-los em um banco de dados.






