• Nenhum resultado encontrado

INDICE 3.APLICAÇÕES QUE PODEM SER DESENVOLVIDAS COM O USO DO SAXES

N/A
N/A
Protected

Academic year: 2021

Share "INDICE 3.APLICAÇÕES QUE PODEM SER DESENVOLVIDAS COM O USO DO SAXES"

Copied!
16
0
0

Texto

(1)
(2)

1.APRESENTAÇÃO

2.ESPECIFICAÇÃO DOS RECURSOS DO SOFTWARE SAXES 2.1. Funcionalidades comuns a outras ferramentas similares 2.2. Funcionalidades próprias do software SAXES

3.APLICAÇÕES QUE PODEM SER DESENVOLVIDAS COM O USO DO SAXES 3.1. Sincronização de dados

3.2. Migração de dados 3.3. Intercâmbio de dados

3.4. Acesso a fontes de dados diversas 3.5. Comunicação com planilhas eletrônicas 3.6. Construção de Portais

3.7. Publicação de dados na Web 4.CONSIDERAÇÕES FINAIS INDICE 03 04 04 06 09 11 12 12 13 14 16 09 10

(3)

O software SAXES é uma ferramenta para conversão e transformação de dados entre esquemas de dados diversos. Com projetos de conversão do SAXES, pode-se converter dados de um esquema de origem para um esquema de destino. Os projetos de conversão são criados através de um ambiente de desenvolvimento, onde o usuário pode mapear visualmente elementos de um esquema de origem com elementos de um esquema de destino. Com base nesses mapeamentos e demais regras de conversão, o SAXES consegue realizar as conversões e transformações desejadas.

Muitas ferramentas de conversão possuem recursos em comum ao SAXES. No entanto, estes recursos possuem características próprias, no que diz respeito a usabilidade, abrangência, flexibilidade, eficiência e demais requisitos que são importantes em um software. Não cabe aqui discutir pontos como esse, visto que cada fabricante apresenta uma visão própria para defender seus produtos. Assim, os recursos presentes na ferramenta SAXES são apresentados a seguir, considerando apenas suas funcionalidades.

(4)

2. ESPECIFICAÇÃO DOS RECURSOS DO SOFTWARE SAXES

A seguir, apresentamos um conjunto de funcionalidades existentes no software SAXES. Para melhor avaliação e entendimento, as funcionalidades estão classificadas em (1) funcionalidades comuns em softwares similares e (2) funcionalidades próprias do software SAXES.

É importante observar que alguns dos recursos abaixo discriminados são válidos desde que, algumas condições específicas sejam respeitadas.

Permite que o usuário crie mapeamentos entre esquemas usando recursos do mouse, como o de arrastar e soltar.

O software SAXES sugere quais mapeamentos devem ser criados com base em mapeamentos já existentes. Este recurso agiliza a criação dos mapeamentos, pois poupa tempo do usuário na identificação dos elementos que são correspondentes.

O software SAXES conecta aos principais SGBDs do mercado, via conexão ODBC. Além disso, é possível criar novos tipos de conexão usando bibliotecas JAR. Assim, caso surja um novo

driver para algum SGBD ou um driver para um novo SGBD, não é necessário esperar até que

uma nova versão do software SAXES seja lançada. Salienta-se que somente algumas ferramentas disponibilizam conexão usando bibliotecas JAR, entre elas, o SAXES.

Ao invés de criar um esquema XML (DTD ou XML Schema) que valide um documento XML já existente, pode-se usar um recurso do SAXES que extrai o esquema automaticamente com base no documento XML.

Através da própria ferramenta de desenvolvimento, é possível testar o funcionamento do projeto de conversão, executando-o e analisando o resultado de saída. Essa integração permite que problemas de projeto sejam rapidamente corrigidos.

Nas conversões que envolvem banco de dados, os comandos SQL são gerados

2.1. Funcionalidades comuns a outras ferramentas similares

Criação visual de mapeamentos

Sugestão de mapeamentos

Conexões a bancos de dados relacionais

Extração de esquema XML a partir de documentos XML

Ambiente de testes

(5)

automaticamente pelo SAXES, tanto para extração de dados (comandos SELECT) quanto para atualização de dados (comandos INSERT e UPDATE).

Ao importar dados para uma base relacional, o SAXES verifica os relacionamentos entre as tabelas envolvidas para permitir com que tabelas de menor dependência sejam importadas antes. Além disso, chaves estrangeiras são devidamente usadas, com base nos registros previamente importados. Por

exemplo, um documento XML com estrutura em dois níveis (mestre-detalhe) pode importar dados para duas tabelas relacionais aninhadas, considerando os relacionamentos entre as tabelas.

Em processos de importação para uma base relacional, pode-se solicitar que as chaves primárias sejam automaticamente geradas pela ferramenta, caso o valor da chave não esteja sendo mapeado e o SGBD não esteja configurado para fornecer este valor.

Ao serem convertidos, dados podem ser transformados através de máscaras de conversão para informações alfanuméricas, numéricas e datas. Valores padrão também podem ser usados em casos onde uma informação é ausente.

Podem ser criados arquivos de log para projetos que atualizem bases relacionais. Os logs permitem que os comandos SQL sejam analisados para descobrir em que circunstâncias ocorreram uma dada atualização, ou quando algum erro de banco de dados foi gerado.

Os filtros podem ser usados para evitar que todos os dados da origem sejam convertidos. Um filtro envolve um elemento do esquema de origem, um operador de comparação e um valor para comparação. O valor para comparação pode ser estático ou dinâmico. Um valor estático é definido pelo desenvolvedor do projeto SAXES. O valor dinâmico é obtido de alguma variável do sistema, como por exemplo, a data de hoje. Valores dinâmicos são identificados através de palavras reservadas (%TODAY%, por exemplo).

Um projeto de conversão pode ser configurado para que os dados sejam convertidos usando uma ordenação pré-estabelecida.

Preservação dos relacionamentos entre tabelas em projetos de importação para banco de dados

Geração automática de chaves primárias

Transformações de dados

Logs de Importação

Filtros de conversão

(6)

Compatibilidade com aplicações Java

Execução de conversões por linha de comando

Extensão de código fonte

Gerenciador de projetos

Alertas de mapeamentos

Inversão de mapeamentos

As APIs SAXES permitem que projetos de conversão possam ser usados dentro de qualquer aplicação Java.

Projetos de conversão podem ser executados a partir de aplicativos de linha de comando, cujos parâmetros são informações de configuração usadas durante a conversão. Através dessa opção, pode-se usar projetos de conversão de dentro de qualquer aplicação, seja ela Java ou não.

As APIs de conversão SAXES possuem pontos de extensão bem identificados. Com a implementação destes pontos de extensão, pode-se customizar um projeto de conversão para realizar qualquer tipo de transformação.

O gerenciador de projetos ajuda a organizar e documentar projetos de conversão de dados. O gerenciador oferece uma visão mais detalhada dos projetos criados no SAXES, e ajuda uma equipe de desenvolvimento a compreender mais facilmente os projetos desenvolvidos por outras equipes.

A ferramenta também tem a função de emitir um alerta, caso alguns mapeamentos criados tenham o risco de ser incorretos. Este recurso auxilia na prevenção de mapeamentos incorretos, que podem provocar inconsistências no resultado da execução de um projeto.

Os esquemas de origem e destino de um projeto de conversão podem trocar de posição para que a direção da conversão seja invertida. Este recurso é

utilizado quando uma conversão de dados é aplicada tanto para a exportação de dados como para a importação de dados.

Por exemplo, um documento XML é extraído de uma tabela relacional, e este mesmo documento XML pode servir como entrada para uma atualização da mesma tabela relacional. Neste caso, têm-se dois projetos semelhantes, somente alterando a direção dos mapeamentos. A vantagem desta opção é que os mapeamentos não precisam ser recriados.

(7)

Procura rápida de mapeamentos

Wizards para criação de projetos de conversão de esquemas

Editores de Esquemas

Extração de esquema texto a partir de arquivos texto

Conversão de esquemas

Extração eficiente de informações do banco de dados

Consultas SQL manuais

Em projetos que envolvem uma grande quantidade de mapeamentos, pode-se rapidamente encontrar um mapeamento especifico, utilizando opções de procura disponibilizadas pela ferramenta.

O software SAXES possui wizards que auxiliam o usuário na criação de um esquema de destino com base em um esquema de origem. O esquema criado pode ser automaticamente mapeado com o esquema de origem. Através dos wizards, é possível criar rapidamente projetos de conversão de dados.

Os esquemas usados em projetos de conversão podem ser manipulados em editores específicos para cada formato de arquivo (XML, arquivo texto e HTML). Através dos editores, pode-se configurar a estrutura de um esquema, bem como as propriedades importantes para a conversão. Estes editores auxiliam na construção de um esquema de dados para estruturas que não possuem uma linguagem de especificação própria.

No caso, arquivos texto e arquivo HTML não possuem uma linguagem de especificação da estrutura de dados, logo, o software SAXES disponibiliza um editor de esquemas para estes tipos de arquivos.

Ao invés de criar um esquema texto que valide um arquivo texto já existente, pode-se usar um recurso do SAXES, que extrai este esquema automaticamente com base em um arquivo texto.

O esquema de um projeto de conversão pode ser convertido para um esquema de um formato diferente. Por exemplo, um esquema de um documento XML pode ser convertido para um esquema de arquivo texto, mantendo a hierarquia da estrutura de dados. Além disso, os mapeamentos do projeto são preservados. Este recurso agiliza a criação de projetos quando um projeto semelhante já existe.

O software SAXES usa comandos SQL de consulta, que otimizam a extração de dados de uma base relacional. O mecanismo de conversão do software SAXES é projetado de forma a permitir que dados a serem convertidos, sejam recuperados sequencialmente, o que torna o processo mais eficiente.

(8)

dados. O usuário pode criar consultas SQL, usando sintaxe proprietária e explorar os recursos internos de um SGBD para a realização de cálculos e agregações complexas. Assim, é possível extrair informações de valor estratégico em formato de relatório.

A estrutura do esquema de destino dita como as informações devem ser relacionadas e que restrições devem ser respeitadas. O mecanismo de conversão usado pelo software SAXES garante que as informações convertidas não violem o esquema de destino. Por exemplo, para extrair dados

de uma base relacional, a junção entre tabelas é feita com junções externas (left joins) ou internas, conforme a estrutura do esquema de saída.

Uma tarefa deste tipo permite que informações sejam extraídas de uma base relacional, e enviadas para um destino pré-estabelecido, que pode ser um diretório local, um serviço de FTP,

email, ou web service.

Uma tarefa deste tipo permite que informações sejam importadas em uma base relacional a partir de um arquivo. Este arquivo pode ter um nome e caminho pré-estabelecido, ou pode ser qualquer arquivo que esteja presente em um diretório local. Após a importação do arquivo, este pode ainda ser descartado ou movido para outro diretório.

Conversões condizentes à estrutura do esquema de destino

Criação de tarefas para extração de dados de bases relacionais

(9)

3 . APLICAÇÕES QUE PODEM SER DESENVOLVIDAS COM O USO DO SAXES

O processo de conversão de dados é comum a muitos problemas de integração. Na camada de conversão de dados, reside grande parte da complexidade na construção de um software para integração de dados. Uma vez resolvida a camada de conversão, as demais camadas do

software são construídas com facilidade através de pontes de comunicação com os módulos

responsáveis pela conversão propriamente dita.

As APIs SAXES constituem um framework extensível para conversão de dados. A seguir são apresentadas algumas aplicações que podem ser desenvolvidas utilizando o conjunto de ferramentas e APIs do SAXES:

Situação:

Bases de dados diferentes podem manter seu estado sincronizado utilizando uma solução baseada em SAXES.

Solução:

Desenvolvimento de um agente para extração e envio dos dados da base origem e de um

web service para recebimento e atualização dos dados na base destino.

Um agente pode ser programado para extrair dados de uma base, periodicamente, e enviá-los a um web service. Este web service, por sua vez, usa os resultados recebidos para importá-los em uma outra base de dados.

Tanto o agente como o web service executam a API SAXES como mecanismo de conversão de dados.

3.1. Sincronização de dados

agente

web service

Base de dados origem

Base de dados destino

SAXES

SAXES

(10)

3.2. Migração de dados

Situação:

A migração de dados ocorre, comumente, quando dados devem ser transferidos de uma base legada de dados para uma nova base de dados.

Solução1:

Criar um projeto no SAXES, configurando como esquema de origem a base de dados legada, e como esquema de destino a nova base de dados.

Mapear as colunas que deverão ser importadas da base legada para a base de destino.

Esta é uma solução prática que requer apenas um projeto do SAXES e uma conexão ativa com as duas bases de dados mapeadas.

Solução 2:

Especificação de um esquema de dados intermediário em formato texto ou em XML. Este esquema deve ser semelhante ao esquema da base de dados de destino.

Desenvolvimento de dois projetos SAXES: um para exportação dos dados e outro para a importação dos dados.

O esquema de dados intermediário deve ser especificado de acordo com o esquema da base de dados destino. Assim, empresas de software que necessitam de muitas migrações de dados podem especificar um esquema XML, por exemplo, de acordo com o seu modelo de dados.

Figura 2 – Solução para Migração de dados Esquema

Legado Novo Esquema

Esquema Legado Novo Esquema SAXES SAXES SAXES

(11)

A nova versão SAXES 2.0, também conhecida pelo recurso “BD2BD”, oferece o mapeamento direto entre os esquemas das duas bases de dados. A partir deste mapeamento entre dois esquemas, o SAXES gera as estruturas intermediárias necessárias para a execução da migração dos dados, sem que o usuário necessite editar estas estruturas. Este recurso facilita a migração entre bases de dados heterogêneas.

Situação:

Instituições parceiras de negócio trocam informações usando documentos XML ou arquivos texto.

Solução:

Elaboração de um projeto de mapeamento entre o esquema utilizado na troca de dados e a base de dados da sua empresa.

Implementação de uma chamada à API SAXES para execução do projeto SAXES dentro da aplicação cliente.

Figura 4 - Solução para Intercâmbio de dados

Para cada caso de exportação, ou de importação de dados, deve-se elaborar um mapeamento entre os esquemas de dados. Para que o usuário da aplicação cliente tenha domínio da Caso o usuário prefira adotar uma estrutura de dados intermedíaria, por exemplo um arquivo XML, é necessário mapear o esquema de dados intermediário com o esquema de dados legado. Através do software SAXES, faz-se a extração dos dados da base legada. Em um segundo momento, importa-se os dados legados para a nova base de dados, também usando o

software SAXES.

Caso sejam necessárias transformações e/ou computações dos dados, pode-se programar uma aplicação usando a API SAXES, a fim de tratar os dados conforme as necessidades do usuário. Este desenvolvimento faz parte da customização de um projeto SAXES.

3.3. Intercâmbio de dados

aplicação cliente

servidor de dados

(12)

execução este processo e para que este usuário não precise usar a IDE SAXES, deve-se implementar uma chamada à API SAXES.

Esta API SAXES executa o projeto de mapeamento, retornando um documento XML (ou arquivo texto) para o controle da aplicação. A partir deste ponto, a aplicação cliente pode enviar os dados via FTP, por exemplo, para o destinatário.

Exemplos de casos:

• Comércio enviando pedidos de compra para uma indústria fornecedora.

? Indústria enviando lista de faturas para banco realizar as cobranças.

Situação:

Instituições que precisam unificar dados de várias fontes heterogêneas em um esquema único de dados.

Solução:

• Especificação de um esquema de dados global em formato texto ou em XML, que represente as necessidades do usuário.

Desenvolvimento de projetos de mapeamento SAXES para cada fonte de dados externa. Para integrar fontes de dados diversas e heterogêneas, é comum o uso de um esquema de dados central que é mapeado com as fontes de dados. O acesso às fontes de dados é realizado através deste esquema central. O software SAXES facilita o mapeamento deste esquema central com as fontes de dados.

Exemplos de casos:

? Sindicato coletando dados de seus associados através de documentos XML.

? Portal central de notícias buscando informações de outros portais.

Situação:

Usuários que trabalham em planilhas eletrônicas usando dados provenientes de um sistema de gestão empresarial.

Solução:

• Especificação de um esquema de dados conforme a necessidade do usuário • Uso do mapeamento XML dentro do Excel

3.4. Acesso a fontes de dados diversas

(13)

Softwares de planilhas eletrônicas apresentam um ótimo ambiente para manipulação de

informações e sumarização na forma de gráficos. Além disto, muitos usuários precisam manusear dados existentes nos sistemas de gestão. Para isto, torna-se necessário extrair estes dados e encaminha-los para a planilha eletrônica.

Para isto, é necessário especificar um esquema de dados conforme a planilha exigida pelo usuário. Faz-se a extração dos dados a partir da IDE SAXES ou de uma aplicação cliente e gera-se um documento XML. O próximo passo é importar este documento XML dentro de uma planilha eletrônica que suporte XML (por exemplo, Microsoft Excel).

A planilha Microsoft Excel suporta esquemas XML, facilitando a manipulação dos dados. Os dados que são alterados e/ou inseridos nesta planilha Excel podem “retornar” ao sistema de gestão através do software SAXES. Para isto, um projeto de importação deve ser especificado. Neste projeto de importação, as regras de importação devem ser especificadas a fim de garantir a integridade referencial do banco de dados.

Exemplos de casos:

? Usuário estratégico da empresa requerendo dados do ERP para gerar planilhas de projeção de vendas.

? Usuário recuperando dados do ERP e, se for necessário, atualizando-os no Excel para que seja replicado no banco de dados do ERP.

Situação:

Portais institucionais para entrada e acesso de dados usando web services.

3.6. Construção de Portais

SAXES

(14)

Solução:

• Especificação de projetos SAXES para importação e exportação de dados conforme os requisitos.

Desenvolvimento de web services com invocação de API SAXES para executar um determinado projeto SAXES.

Na criação de portais, a camada de acesso aos dados pode ser desenvolvida utilizando web

services. Ou seja, os web services realizam o acesso aos dados e devolvem-nos à camada de

apresentação, que devem ser apresentadas ao usuário.

Como entrada de dados, web services podem ser desenvolvidos com o objetivo de receber dados de aplicações cliente e tratar estes dados para serem inseridos no sistema de gestão empresarial.

Exemplos de casos:

• Portal de empresa que disponibiliza dados na Web e em PDAs. As aplicações clientes acessam os dados do mesmo web service.

• Portal para entrada de dados onde usuário pode entrar com dados através de um formulário específico ou o usuário entra com dados em seu PDA e, depois, envia-os para o servidor de dados, via web service.

Situação:

Informações estratégicas podem ser exibidas como relatórios em formato HTML e disponibilizadas na Intranet para consultas por usuários autorizados.

Solução:

• Especificação de projeto SAXES para geração de página HTML

• Desenvolvimento de aplicação com invocação a uma API SAXES a fim de executar um determinado projeto SAXES.

Figura 6 – Solução para Publicação de dados na Web 3.7. Publicação de dados na Web

SAXES

(15)

Para casos onde a geração de relatórios publicados na Web é uma constante, podem-se especificar projetos de exportação de dados para HTML no software SAXES. Para cada projeto SAXES, é necessário criar uma invocação à API SAXES que realizará a extração e a geração dos dados em HTML.

Exemplos de casos:

• Empresa com uma Intranet necessitando relatórios a partir de uma base de dados corporativa.

(16)

4.CONSIDERAÇÕES FINAIS

Este relatório técnico apresenta as principais funcionalidades do software SAXES. Além disto, funcionalidades peculiares a ferramenta foram destacadas, com o objetivo de mostrar o diferencial tecnológico proposto pela empresa Idealogic Software.

A empresa Idealogic Software visualiza várias aplicações para o software Saxes com o objetivo principal de aumentar a produtividade de desenvolvimento de soluções de integração de dados. Junto a este objetivo principal, o cliente Idealogic recebe uma metodologia de especificação e de desenvolvimento de soluções para integração de dados.

Para maiores informações, aconselha-se acompanhar a evolução do software SAXES e dos serviços propostos pela empresa, através do site www.idealogic.com.br

Referências

Documentos relacionados

O objetivo desta pesquisa foi investigar o papel da Educação Física na Educação Infantil, considerando-se os objetivos gerais, objetivos específicos, os conteúdos da

98: “En- quanto não permitir o fundo de custeio dos serviços de inspeção, a designação de inspetores especializados para orientação do en- sino da Musica e dos exercícios

sem discriminação”; “...o ensino inclusivo será uma oportunidade das pessoas portadoras de necessidades especiais de mostrar suas potencialidades”; “espero que esta

Aprendizado geral dos jogos esportivos de forma implícita - lúdica Escola da Bola - O ABC da Aprendizagem do Jogo Implícito / Lúdico. O Problema / As causas A solução:

Savants são pessoas que demonstram capacidades superiores em uma inteligência, enquanto suas outras inteligências funcionam num baixo ritmo.. Ex.: Rain Man (baseado numa

Mediação significa que o t rabalho do professor é viabilizar a relação at iva do aluno com a mat éria de est udo, at ravés de obj et ivos, cont eúdos, mét odos e formas

Anche dopo il rilascio bisogna restare nella posizione precedentemente assunta fino al momento dell'impatto della freccia sul bersaglio ed evitare bruschi cali di tensione

1 - Entrada da mão muito próxima da cabeça. 2 - Entrada da mão fora da largura do ombro.. 3 -Tração com o braço fora do alinhamento do corpo.. 4 - Batida com elevação excessiva