Análise e Metodologias de Integração de Esquemas - Parte 1

Autor: Dalton Luiz Marcílio

 

 

O conhecimento e a informação se tornaram um bem precioso para a organização. Sendo assim, é necessário gerenciá-lo bem para se ter um efetivo controle sobre este patrimônio peculiar. O seu valor aumenta considerando que as informações estão cada vez mais integradas e passam a dar apoio a tomadas de decisão a fim de obter vantagens competitivas. Relacionado a isso, novas aplicações usarão dados existentes de vários bancos de dados, de preferência novos dados que incorporam as empresas. Por conseqüência, vêm à tona a necessidade do conhecimento de integração de esquemas de base de dados, a fim de fornecer compatibilidade e acesso transparente aos recursos da informação sem envolver investimentos completos no replanejamento do sistema.

Neste artigo é analisada e oferecida uma abordagem no processo de integração de esquemas de base de dados, fornecendo para isso uma estrutura geral do problema da integração de esquemas, as definições envolvidas no processo, as metodologias existentes e o detalhamento de uma arquitetura específica para a integração.

1 Introdução

A Tecnologia da Informação, seja através de uma simples automatização de um processo até a elaboração de uma solução mais complexa, tem nos possibilitado uma maior flexibilidade e rapidez no acesso às informações.

A evolução destas ferramentas tem proporcionado maiores facilidades de utilização pelo usuário comum. Com isto, a informatização vem atingindo praticamente todas as áreas do conhecimento humano.

Como conseqüência destes fatores, o número de usuários e a quantidade de informações que se tem produzido e disponibilizado vem crescendo exponencialmente.  

Devido ao grande volume, para se chegar às informações desejadas é necessário um filtro eficiente através do contexto e da semântica desta informação.

Uma das áreas da Tecnologia da Informação de suma importância e que possui características peculiares acima descritas é a de bases de dados, que está se tornando cada vez mais essencial nas organizações. A disponibilidade de dados e os acessos à informação com resultados satisfatórios tem se tornado um fator crítico para ganho de vantagem competitiva.

Enquanto as estruturas das companhias evoluem, os limites entre os departamentos mudam, criando novas unidades de negócio, acarretando uma maior utilização dos computadores e do número de aplicações específicas. Essas novas aplicações usarão dados existentes de vários bancos de dados, de preferência novos dados que incorporam a organização.

Entretanto, um número de questões emergentes complicam a habilidade das organizações de fornecer o acesso detalhado e de confiança aos diferentes recursos da informação. Exemplos de tais questões que surgiram nas décadas passadas incluem a proliferação e investimento em base de dados autônomas dentro da organização, heterogeneidade entre modelos de dados e sistemas gerenciadores de base de dados empregados e o aumento da importância das regras e da complexidade de sistemas distribuídos. Todos estes fatores contribuem para o aumento da importância de desenvolver opções praticáveis para fornecer interoperabilidade entre base de dados existentes, e conseqüentemente, buscar a pesquisa na área de integração de esquemas de base de dados.

As contribuições para o estado da arte de metodologias de projeto da base de dados, e em particular o processo de integração de esquemas foram particularmente significativos nos últimos vinte anos. Este artigo se propõe a analisar e oferecer uma abordagem no processo de integração de esquemas de base de dados, fornecendo primeiramente uma estrutura geral de como o problema de integração de esquemas pode ser melhor compreendido. Também são levantadas questões problemáticas envolvidas no processo, a descrição de levantamento de dados, modelagens e técnicas existentes e descrição geral comparativa sobre metodologias relacionadas à área. Dentro de uma esfera de utilização de modelagem amplamente aceita e de uma descrição nítida de procedimentos, é apresentado ainda o detalhamento de uma metodologia de integração específica proposta por ElMasri[1987].

2 Aspectos gerais

As metodologias de projeto de base de dados emergiram em 1970. Uma das motivações fundamentais para usar a abordagem de base de dados sobre a tradicional abordagem "processamento de dados usando arquivos" foi a afirmação que os sistemas gerenciadores de base de dados poderiam tornar possível definir um esquema integrado de dados relevante para todas as aplicações, eliminando desse modo duplicações, problemas de múltiplos updates e minimizar inconsistências através da aplicação. Estas importantes vantagens motivaram a pesquisa na área de integração de esquemas sobre as duas décadas passadas. O objetivo geral da integração do esquema é integrar uma organização com diferentes propósitos ou sistemas de base de dados e percepções do usuário que facilitam, desse modo, o acesso global a um recurso organizacional integrado da informação.

3 Visão geral da integração de dados

A integração da base de dados é o processo que leva como entrada um conjunto de bases de dados e produz como a saída uma única descrição unificada dos esquemas de entrada (o esquema integrado) e o mapeamento de informações associadas que suportam acesso integrado aos dados existentes através do esquema integrado. A integração da base de dados é usada também no processo de reengenharia de sistemas legados.

A finalidade e a contribuição deste trabalho são fornecer um retrato de quais são as abordagens e as soluções a serem atingidas. Apresentamos, então, as etapas envolvidas em desenvolver um esquema integrado (veja Figura 1).

Figura 1 - O processo global de integração.

a) Pré-integração: onde os esquemas de entrada são transformados para se tornarem mais homogêneos (sintaticamente e semanticamente);

b) Identificação de correspondência: dirigida à identificação e à descrição de relacionamentos de interesquemas;

c) Integração: a etapa final que resolve conflitos de interesquemas e unifica itens correspondentes em um esquema integrado.

Um dos princípios fundamentais da abordagem de base de dados é que uma base de dados permite uma representação não redundante e unificada de todos os dados controlados em uma organização. Isto é conseguido somente quando as metodologias estão disponíveis para suportar a integração através dos limites organizacionais e da aplicação.

As metodologias para o projeto de base de dados executam geralmente a atividade de projeto separada, produzindo diversos esquemas representando as partes da aplicação, que são unificadas subseqüentemente.

O objetivo geral da integração de esquemas é integrar uma organização com diferentes propósitos ou sistemas de base de dados e percepções do usuário que facilitam, desse modo, o acesso global a um recurso organizacional integrado da informação. De qualquer forma, a pesquisa da integração de esquemas foi especializada em duas áreas:  

a) integração de visões: dirige-se às bases de dados propostas, e

b) integração de base de dados: dirige-se às bases de dados existentes.

A integração de visões é usada como uma ferramenta de auxílio no projeto da base de dados e produz uma descrição global e conceitual de uma base de dados proposta, unindo diferentes requisições de dados ou visões do usuário. De outra forma, a integração da base de dados é usada para produzir um esquema global que representa uma coleção de bases de dados relacionadas em toda a organização. Este esquema global é uma visão virtual de todas as bases de dados juntas em um ambiente de base de dados distribuído.

Quando a integração da base de dados e das visões diferirem contextualmente, elas podem ser descritas como atividades de integração de esquemas de bases de dados propostas ou existentes em um esquema global e unificado que satisfaça as constraints impostas por todos os esquemas componentes.

4 Metodologias para a integração de esquemas

4.1 Causas da diversidade de esquemas

4.1.1 Diferentes perspectivas

No processo de projeto, os diferentes grupos de usuário ou desenvolvedores adotam seus próprios pontos de vista em modelar os mesmos objetos no domínio da aplicação.

Um outro exemplo é dado na Figura 2, em que os dois esquemas representam informações sobre empregados e seus departamentos. Na Figura 2 (a), a informação é modelada por meio do relacionamento E-D. Na Figura 2(b), o relacionamento E-P relaciona os empregados com projetos, visto que o relacionamento P-D associa projetos com departamentos. Supõe-se que um Employee (empregado) "pertence" àquele departamento que está envolvido nos projetos onde o empregado trabalha. Então o relacionamento entre empregado e departamento é entendido como uma relação direta em um esquema.

Figura 2 - Diferentes perspectivas

4.1.2 A equivalência entre construções do modelo Tipicamente, em modelos conceituais, diversas combinações das construções podem modelar o mesmo domínio da aplicação de maneira equivalente. Como conseqüência, modelos “mais ricos” causam uma variedade maior de possibilidades para modelar a mesma situação. A Figura 3 mostra um outro exemplo de construções equivalentes. Man e Woman são distinguidos em uma hierarquia de generalização no primeiro esquema, visto que no segundo esquema eles são distinguidos por diferentes valores do atributo sexo.

Figura 3 - Construções equivalentes. (a) Hierarquia de Generalização (b) Uma entidade simples.

4.1.3 Projeto de especificação incompatível

Escolhas errôneas a respeito do nome, tipo, “constraints” de integridade, etc. podem resultar em entradas erradas no processo de integração de esquemas. Uma boa metodologia de integração de esquemas deve conduzir à detecção de tais erros. O esquema (a) na Figura 4 mostra erroneamente que um empregado está atribuído sempre a um único projeto, onde a constraint de cardinalidade 1:N foi especificada. A situação correta (que um empregado pode ser atribuído a muitos projetos) aparece no esquema (b).

Figura 4 - Especificação de projeto incompatível.

4.1.4 Conceitos comuns

De acordo com as causas de diversidade de esquemas descritas acima, pode acontecer que o mesmo conceito do domínio da aplicação possa ser representado por diferentes representações R1 e R2 em esquemas diferentes, e diversos tipos de relacionamentos semânticos podem existir entre tais representações:

a) Idênticos: R1 e R2 são exatamente os mesmos. Isto acontece quando o mesmo modelo de construção é utilizado, as mesmas percepções são aplicadas e nenhuma incoerência existe na especificação.

b) Equivalentes: R1 e R2 não são exatamente os mesmos porque utilizam modelagens equivalentes, porém diferentes. As percepções são ainda as mesmas e coerentes.

Embora diversos modelos semânticos de dados ainda estejam em existência hoje, os autores destes modelos não fornecem nenhum critério para a equivalência dos conceitos. As definições são baseadas tipicamente em três tipos diferentes de equivalência:

a) Comportamental: R1 é equivalente a R2 se para cada instanciação de R1, a correspondente instanciação R2 existe com o mesmo conjunto de respostas a uma dada consulta e vice-versa.

b) De mapeamento: R1 e R2 são equivalentes se suas instâncias podem ser descritas em uma correspondência 1:1.

c) Transformacional: R1 é equivalente a R2 se R2 pode ser obtido de R1 aplicando um conjunto de transformações atômicas que, por definição, preservam equivalências.

1) Compatível: R1 e RS não são nem idênticos nem equivalentes. Entretanto, as construções, a percepção do desenvolvedor, e constraints de integridade não são contraditórios.

2) Incompatível: R1 e R2 são contraditórios por causa da incoerência da especificação.

As situações (2), (3), e (4) acima podem ser interpretadas como conflitos. Os conflitos e suas resoluções são peças chave nos problemas de integração.

4.2 Etapas e objetivos do processo da integração

4.2.1 Pré integração

Uma análise dos esquemas é realizada antes da integração para se decidir alguma política de integração. Isto engloba a escolha dos esquemas a serem integrados, a ordem da integração e uma possível atribuição das preferências para esquemas inteiros ou das suas parcelas. A preferência a aplicações financeiras do que aplicações de produção é um exemplo de como uma política de integração pode ser gerenciada.

As estratégias globais para integração, quantidade de interação dos desenvolvedores e o número de esquemas para serem integrados em um dado tempo também são decididas nesta fase. A coleta de informação adicional relevante à integração, tal como declarações ou constraints entre visões, é considerada também uma parte desta fase.

4.2.2 Comparação dos esquemas

Os esquemas são analisados e comparados para determinar as correspondências entre conceitos e para detectar possíveis conflitos. As propriedades de interesquemas podem ser descobertas ao comparar esquemas.

4.2.3 Adequação de esquemas

Uma vez que os conflitos sejam detectados, um esforço é feito para resolvê-los de modo que a união de vários esquemas seja possível. A resolução automática do conflito não é geralmente praticável; a interação próxima com desenvolvedores e usuários é requerida antes que os acordos possam ser alcançados em qualquer atividade de integração da vida real.

4.2.4 União e reestruturação

Agora os esquemas estão prontos a serem sobrepostos, causando alguns esquemas intermediários integrados. Os resultados intermediários são analisados e, se necessário, reestruturados a fim de se conseguir qualidades desejáveis. Um esquema conceitual global pode ser testado ao encontro dos seguintes critérios qualitativos:

a) Integridade e exatidão.

O esquema integrado deve conter corretamente todos os conceitos presentes em qualquer componente do esquema. O esquema integrado deve ser uma representação da união dos domínios da aplicação associados com os esquemas. O esquema conceitual global deve ser testado de acordo com os seguintes quesitos:

b) Minimização.

Se o mesmo conceito for representado em mais de um componente do esquema, este deve ser representado somente uma vez no esquema integrado.

c) Compreensão.

O esquema integrado deve ser de fácil compreensão para o desenvolvedor e o usuário final. Isto implica que entre diversas representações possíveis dos resultados da integração permitidos por um modelo dos dados, o mais compreensível deve ser escolhido.