Integração Semântica
de Esquemas
Gabrielle Karine Canalle
Roteiro
• Integração de Dados
• Integração de Esquemas
• Heterogeneidade dos dados
• Causas para a diversidade de esquemas
• Processo genérico para Integração de Esquemas
• Semântica em Integração de Esquemas
• Relações Semânticas
• Similaridade Semântica
• Conflitos Semânticos
• Ontologias em Integração
• Contexto em Integração
• Trabalhos Relacionados
Integração de Dados
Fornecer ao usuário uma visão
unificada dos dados contidos em
diversas
fontes
de
dados
heterogêneas.
Integração de Esquemas
• Esquema descreve os objetos que estão sendo representados em
um banco de dados e as relações entre eles. (entidades, atributos e
relacionamentos)
• Integração de esquemas é o processo que recebe esquemas de
fontes de dados distintas e produz um esquema unificado.
Existem dois tipos:
• View Integration (Integração de visões)
• Ocorre durante a criação de um novo banco de dados quando os
requisitos do usuário podem ser diferentes para cada grupo de usuários.
É utilizado para mesclar diferentes pontos de vista em um único modelo
de dados.
• Database Integration (Integração de Bases de Dados)
• É utilizado quando dois ou mais bancos de dados devem ser combinados
para produzir um único esquema, chamado de esquema global.
Heterogeneidade dos Dados
• Sintática:
• Divergências na representação de escalas, unidades, tipos de
dados e formatos;
• Ex: Nome de tabelas FUNC em um BD e FUNCIONARIOS em outro BD
• Estrutural:
• Diferenças em modelos, esquemas e estruturas na representação
de informações;
• Ex: BD orientado a objeto e BD relacional
• Semântica:
• Diferenças na interpretação da informação mesmo representada
de forma homogênea
• Ex: Entidades ALUNO em um BD e ESTUDANTE em outro BD
representando o mesmo conceito.
Causas para a diversidade de
esquemas
Diferentes perspectivas
• Quando dois esquemas de banco de dados
são projetados por projetistas diferentes,
ou as requisições dos usuários são
diferentes, os esquemas resultantes muitas
vezes são visões contrastantes dos mesmos
dados.
Diferentes perspectivas
[Lenzerine; Navathe, 1986]
• Conceitos Equivalentes
• Bases de dados diferentes podem tratar os
mesmos conceitos de maneiras diferentes.
• Há duas situações:
• Conceitos diferentes modelados da mesma
forma; ex: em um BD de uma universidade
onde funcionários e alunos podem ser
representados pela entidade pessoa, embora
sejam conceitos diferentes.
• Mesmos conceitos modelados de forma
diferente.
[Lenzerine; Navathe, 1986]
• Projetos Incompatíveis
• Dois projetos de banco de dados podem ser
incompatíveis devido a erros cometidos no
projeto inicial, ou restrições diferentes.
Projetos incompatíveis
[Lenzerine; Navathe, 1986]
Processo Genérico para Integração
de Esquemas
• Recebe um conjunto de esquemas diferentes, com estruturas
diferentes e semântica diferente;
• É composto por uma série de tarefas;
[Belian, 2007]
Pré-integração
Nesta etapa uma análise dos esquemas é
realizada para se decidir uma política de
integração. Engloba a escolha dos esquemas
a serem integrados e a ordem da
integração.
• Traduz os esquemas para um formato
adequado para ser processado pelos
passos restantes do processo de
integração.
Abordagens utilizadas na pré-integração
• Técnicas baseadas em String
• Consideram os nomes de elementos formados por
Strings que são sequências de caracteres;
• São baseadas em sintática, a referências de duas
strings de um mesmo conceito é estabelecido por
medidas de similaridade.
• Técnicas baseadas em Linguagem
• Tokenization, lemmatization e elimination são
exemplos;
• Geralmente são aplicadas aos nomes dos elementos
antes das técnicas baseadas em string.
Comparação de Esquemas
Esta etapa tem como objetivo identificar os conflitos e as
correspondências entre elementos dos esquemas.
Considera características sintáticas, semânticas e
estruturais.
• A tarefa de comparação de esquema precisa identificar
conflitos entre os elementos do esquema
• Conflitos sintáticos e estruturais;
• Quando os conceitos do mundo real são representados através de
diferentes modelos e estruturas (tipos de dados, restrições de
integridade)
• Conflitos semânticos;
• Quando o mesmo elemento do mundo real é modelado
diferentemente por fontes de dados distintas causando
interpretações divergentes, ou diferentes elementos com a mesma
representacão ( homônimos, sinônimos)
Abordagens para Comparação de Esquemas
• Existem várias abordagens para comparação de
esquemas:
• Instância vs nível de esquema
• Elemento vs correspondência de estrutura
• Baseados em Linguagem
• Utilizando restrições e tipos de dados
• Correspondência de cardinalidade
• Informações auxiliares fornecidas
Correspondência de Esquemas
Este passo é responsável pela resolução dos
conflitos identificados no passo anterior.
Tem como objetivo tornar os esquemas
compatíveis, permitindo sua integração
Abordagens para Correspondência de
Esquemas
• Soluções Baseadas em regras
• Regras feitas a mão empregadas para combinar os
esquemas;
• Exploram informações como nome de elementos,
tipos de dados, número de sub-elementos e restrições
de integridade;
• Benefício: baixo custo, não exigem treino.
• Soluções Baseadas em Aprendizagem
• Maioria propostas na última década;
• Benefício: aprendizagem do passado para melhorar ao
longo do tempo.
Fusão de Esquemas
Nesta etapa os elementos correspondentes são
agrupados de modo a gerar um esquema
integrado. Além disso, esta etapa deve
produzir mapeamentos entre os elementos do
esquema integrado e seus elementos
correspondentes nas fontes de dados.
Abordagens utilizadas na Fusão de Esquemas
Duas estratégias são mais utilizadas nesta etapa:
• Abordagem binária
• A fusão é realizada com dois esquemas de cada vez;
• Utiliza medidas de similaridade;
• Reduz a complexidade da etapa de Fusão;
• Requer um grande número de iterações para produzir o
esquema global.
• Abordagem N-ary
• Integra N esquemas de cada vez;
• Requer uma única iteração;
• Aumenta a complexidade da etapa de Fusão.
Reestruturação do Esquema Global
O resultado do passo anterior é analisado e se necessário é feita
uma reestruturação a fim de atingir os critérios:
• Integridade– o esquema integrado resultante deve conter
todos os elementos apresentados nos esquemas das fontes
de dados locais;
• Exatidão – o esquema global integrado deve conter
corretamente os dados dos esquemas locais;
• Minimalidade – se o mesmo conceito for representado em
mais de um componente do esquema, este deve ser
representado somente uma vez no esquema integrado;
• Compreensão – o esquema integrado deve ser de fácil
compreensão para o desenvolvedor e o usuário final.
Abordagens para Reestruturação de
Esquemas
• Top-down
• Considera inicialmente os requisitos do usuário ou
aplicação para produzir o esquema integrado;
• Depois, procura nos esquemas das fontes de dados locais
os elementos necessários para formar o esquema
integrado.
• Bottom-up
• Produz o esquema integrado com base nos elementos
fornecidos pelos esquemas das fontes de dados;
• Os elementos do esquema global podem ser selecionados e
personalizados de acordo com as necessidades do utilizador
ou das aplicações.
Sêmantica em Integração de
Esquemas
• Nome acadêmico para o estudo do
significado;
• Desafio antigo e muito pesquisado;
• Semântica, é a interpretação que pessoas
atribuem aos dados, ou seja, relacionam o
dado ao que ele representa de acordo com o
seu entendimento de mundo;
• Representada através da linguagem;
• Considerar o significado (conteúdo) do dado
na integração
Relações Semânticas
• Representação de relacionamentos semânticos entre
os elementos de um esquema de fonte de dados;
• Auxiliam na resolução de conflitos semânticos;
• Existem vários tipos:
• Sinonímia
• Antonímia
• Homonímia
• Hiponímia
• Meronímia
Sinonímia
• Nomes diferentes;
• Entidades semanticamente equivalentes;
é o mesmo que
ESTUDANTE
ALUNO
Antonímia
• Significados opostos
HOMEM
MULHER
Homonímia
• Nomes iguais;
• Entidades semanticamente diferentes;
BANCO
Instituição financeira
BANCO
Banco de sangue
Hiponímia/Hipernímia
• Sub-tipo/super-tipo;
• Inclusão de uma entidade em uma classe semântica;
PÁSSARO
hiperônimo
é um tipo de pássaro
BEIJA-FLOR
hipônimo
Meronímia/Holonímia
• Todo-parte;
• Decomposição do objeto em partes;
BICICLETA
tem um
GUIDÃO
tem uma
RODA
holônimo
tem um
ASSENTO
merônimo
Similaridade Semântica
Baseada no conceito de proximidade semântica, estabelece medidas
sobre o quão forte é a semelhança semântica entre dois elementos
que utilizam a mesma semantica do mundo real.
• Equivalência semântica – elementos representam o mesmo
conceito. Forma mais forte de proximidade semântica;
• Relação semântica – elementos associados através de
relacionamento 1:N, generalização ou agregação;
• Relevância semântica – elementos associados através de algum tipo
de abstração;
• Semelhança semântica – elementos não são associados através do
domínio, relacionados através de regras ou papéis definidos pelo
usuário. Forma mais fraca de proximidade semântica;
• Incompatibilidade semântica – termos não possuem qualquer
relação semântica.
Conflitos Semânticos
• São causados por representações
diferentes de conceitos do mundo
real em fontes de dados diversas;
• A informação tem interpretações
diferentes;
• Ocorre em esquemas e conteúdo de
fontes de dados.
Incompatibilidade de Domínio
• Conflitos de nomes – atributos semanticamente iguais
(sinônimos), atributos não relacionados semanticamente
(homônimos);
• Ex. Remuneração e Salário, ou, id da entidade estudante que
representa o cpf e id da entidade livro que representa o isbn.
• Conflitos de representação de dados
semanticamente similares de tipos diferentes;
–
atributos
• Ex. Cpf definido como tipo inteiro em uma entidade e em outra
como String.
• Conflitos de unidade de medida – atributos semanticamente
similares representados em unidades de medida diferentes.
• Ex. Um atributo preço que pode estar representado em uma
entidade em dólar e em outra em real.
• Conflitos de precisão – é possível que não exista um mapeamento
de um para um entre os valores dos domínios dos atributos, e sim
um mapeamento de um para vários. O mapeamento pode ser feito
precisamente apenas em uma direção, e os objetos têm uma relação
semântica;
• Ex. Mapeamento entre notas e conceitos. Conhecendo a nota é
possível obter o conceito, mas sabendo o conceito não é possível
obter a nota com precisão.
• Conflitos de valores default – dois atributos têm valores default
diferentes em bases diferentes.
• Ex. Valor default para um atributo maioridade que pode ser em uma
entidade 18 e em outra 21 anos.
• Conflitos de restrições – dois atributos semanticamente similares
com restrições conflitantes.
• Ex. Atributo peso com restrição peso < 70 em um BD e peso > 80 em
outro BD.
Incompatibilidade entre Definições de Entidades
• Conflitos de chaves – quando duas relações que modelam a
mesma entidade têm chaves semanticamente diferentes;
• Ex. Em um BD a entidade pessoa tem como chave o n. identidade
e em outro BD a entidade pessoa tem como chave o n. do cpf
• Conflitos de nomes – também ocorrem com as entidades
assim como com os atributos. Se os nomes são sinônimos os
objetos são considerados semanticamente equivalentes, se
forem homônimos, são considerados semanticamente
incompatíveis;
• Ex. Um BD com o objeto empregado e em outro com o objeto
trabalhador representando o mesmo conceito, ou então em um
BD o objeto bolsa representando bolsa de valores, e em outro BD
o objeto bolsa representando o acessório.
• Conflitos de compatibilidade de união – quando os atributos de
uma não são semanticamente relacionados com os atributos da
outra, sendo impossível realizar um mapeamento 1-1 entre eles;
• Ex. Entidade pessoa em um BD definida como Pessoa(CPF, nome,
nomeDoPai) e em outro BD, definida como Pessoa(CPF, nome,
telefone).
• Conflitos de isomorfismo de esquemas – entidades
semanticamente similares têm um número diferente de atributos.
• Ex. Entidade Pessoa definida em um BD como Pessoa(CPF,
telefoneResidencial, celular) e em outro BD como Pessoa(CPF,
telefone).
• Conflitos de dados não informados – ocorre quando na definição da
entidade existe um atributo não informado.
• Ex. podemos citar as relações estudante(CPF, nome, tipo) e
estudanteDeMestrado(CPF,
nome)
em
bancos
distintos.
Consideremos que o atributo tipo possa ter os valores graduação ou
mestrado. Apesar de estudanteDeMestrado não possuir o atributo
tipo, podemos deduzir que ele é do tipo mestrado
Incompatibilidade no Nível de Abstração
• Conflitos de Generalização – duas entidades representadas em
diferentes níveis de generalização em bases diversas, com uma
relação de inclusão entre as entidades;
• Ex. Uma entidade estudanteDeGraduacao representada como
estudante(cpf,
nome)
em
uma
base,
e
como
estudanteGraduacao(cpf, nome, orientador) em outra base. A
mesma entidade representada de maneira mais geral na primeira
base.
• Conflitos de agregação – quando uma agregação é utilizada em uma
base para identificar um conjunto de entidades em outra base;
• Ex. Entidade comboio(id,npesoMedio, posicao) em um banco e uma
entidade navio(id, peso, posicao, capitao) em outro. Comboio no
primeiro banco é um conjunto de navios no segundo banco.
Conhecendo o navio é possível identificar o comboio, mas
conhecendo apenas o comboio não é possível identificar o navio com
precisão.
Ontologias em Integração
• Na integração semântica, ontologias possuem
um importante papel. Como são modelos
formais de representação do conhecimento
consensual, elas podem servir como base na
atribuição de semântica aos sistemas a serem
integrados.
• Vocabulário de referência
• Significado de elementos das fontes de dados;
• Utilizadas na resolução de conflitos semânticos
em esquemas e conteúdo;
Abordagens de Ontologia
• Abordagem de Ontologia Única
• Utiliza uma ontologia global, a ontologia possui um vocabulário
compartilhado para a especificação das semânticas. Todas as
fontes de informação são relacionadas a uma ontologia global.
[Lima Sá, 2008]
• Abordagem de Múltiplas Ontologias
• Cada fonte de informação é descrita por sua própria ontologia.
[Lima Sá, 2008]
• Abordagem Híbrida
• A semântica de cada fonte é descrita por uma ontologia própria,
e é acrescida uma camada com um vocabulário global
compartilhado no qual é baseada a construção das ontologias
locais.
[Lima Sá, 2008]
Vantagens do Uso de Ontologias na Integração de
Dados
• Ontologias possuem um vocabulário rico e predefinido que
serve como uma interface estável e conceitual para os bancos
de dados e é independente de esquema da base;
• O conhecimento representado pela ontologia é
suficientemente abrangente para dar suporte à tradução de
todas as fontes de informações relevantes;
• A ontologia dá suporte ao gerenciamento de consistência, e o
reconhecimento de inconsistência de dados.
Contexto
“Contexto é qualquer informação que pode ser
utilizada para caracterizar a situação de uma
entidade. Uma entidade é uma pessoa, lugar, ou
objeto que é considerado relevante para a
interação entre um usuário e uma aplicação,
incluindo o usuário e a aplicação em si.”
Dey, 2001
Contexto em Integração
• Conjunto de meta-atributos utilizados na captura da
semântica de elementos de banco de dados;
• O uso de informação contextual, além da de domínio, pode
trazer uma maior precisão na interpretação dos elementos
permitindo modificar o seu significado de acordo com um
dado contexto;
• Pode-se utilizar ontologias para representação contextual.
Desafio da Integração Semântica
Devido à subjetividade na atribuição de
semântica, é muito difícil que algum
método
consiga
solucionar
completamente
a
questão
da
interoperabilidade semântica. E por
causa desses julgamentos subjetivos, a
automatização
total
torna-se
praticamente inviável.
Trabalhos Relacionados
Alguns trabalhos que já foram realizados na área de integração
semântica com ontologias e contexto.
Projeto Integra
• Sistema de integração baseado em mediadores que utiliza o
enfoque Global-As-View (GAV);
• Propõe um processo para geração semântica de um esquema
de mediacão;
• Utiliza metadados, contexto e ontologias na resolução de
conflitos semânticos;
• Processo Básico
•
•
•
•
Comparação de esquemas
Enriquecimento léxico
Unificação semântica
Geração do esquema de mediação
OBA-SI(Ontology-Based Approach for
Semantic Integration)
• É uma abordagem de integração semântica de
sistemas baseada em ontologias;
• Seu intuito é sistematizar o processo de integração
sugerindo etapas a serem seguidas;
• Apresenta uma abordagem em que a integração
semântica é tratada em um nível mais alto de
abstração.
A Comparative Analysis of Methodologies for
Database Schema Integration
• Batini, Lenzerini e Navathe;
• Compara as metodologias para integração
de esquemas propostas até o momento.
• Survey antigo mas muito conceituado na
área de Integração de Esquemas.
A Formalisation of Semantic Schema
Integration
• Peter McBrien e Alexandra Poulovassilis;
• Mostra como ocorre a transformação dos
dados em cada etapa do processo de
integração semântica de esquemas e
apresenta um estudo de caso
Dúvidas?
Referências
• Belian, Rosalie Barreto. A context-based name resolution
approach for semantic schema integration, 2008.
• Dey, Anind K. Understanding and Using Context, 2001.
• Marcílio, Daltron Luiz. Análise e metodologias de
integração de esquemas de banco de dados, 2008.
• An, Yuan. Data Semantics: Data Integration and the
Semantic Web, 2004.
• Doan, AnHai; Halevy, Alon Y. Semantic Integration
Research in the Database Community: A Brief Survey,
2004.
• Kearney, Stephen. Schema Integration, 2002.
Integração Semântica
de Esquemas
Gabrielle Karine Canalle
Download

Integridade