SlideShare uma empresa Scribd logo
cin.ufpe.br
Uma Arquitetura com Implementação
para Integração Semântica de
Ontologias e Bancos de Dados
Aluno : Adriel Café
aac3@cin.ufpe.br
Orientador: Prof. Fred Freitas
fred@cin.ufpe.br
Defesa de Dissertação de Mestrado, 2015
Pós-Graduação em Ciência da Computação
Centro de Informática (CIn)
Universidade Federal de Pernambuco (UFPE)
cin.ufpe.br
Sumário
1. Introdução
2. Referencial Teórico
3. Arquitetura Proposta
4. Implementação
5. Experimentos (com demonstração)
6. Trabalhos Relacionados
7. Conclusões
2
cin.ufpe.br
Sumário
1. Introdução
2. Referencial Teórico
3. Arquitetura Proposta
4. Implementação
5. Experimentos (com demonstração)
6. Trabalhos Relacionados
7. Conclusões
3
cin.ufpe.br
Introdução
• Integração da informação é uma área de pesquisa ativa que tem
por objetivo a criação de mecanismos para extrair dados ou
mesclar fontes de dados (UZDANAVICIUTE; BUTLERIS,
2011);
• Integração semântica é uma subárea, nela são utilizadas
tecnologias da Web Semântica para tornar o processo de
integração o mais inteligente e automático possível (CRUZ;
XIAO, 2005);
• Um dos grandes esforços para os novos sistemas de informação
baseados em ontologias está em resolver problemas em fontes
de dados heterogêneos (SMITH, 2003).
4
cin.ufpe.br
Introdução
Objetivo Geral
• Propor e avaliar uma arquitetura para integração semântica
entre ontologias e bancos de dados relacionais
simultaneamente;
• Esta arquitetura deverá descrever detalhadamente todo o
processo de integração virtual, mediada por consultas;
• Deverá ser utilizada uma camada semântica para diminuir os
problemas de heterogeneidade de dados.
5
cin.ufpe.br
Introdução
Objetivos Específicos
• Criar uma arquitetura que seja capaz de realizar integração
semântica, utilizando ontologias como vocabulário de consulta;
• Implementar a arquitetura proposta, por meio de um
framework, a fim de comprovar a eficácia da mesma;
• Identificar soluções existentes que realizem alguma subtarefa
de integração para utilizá-los na implementação do framework;
– Subtarefas: alinhamento, mapeamento, reescrita e execução de consultas.
• Realizar um estudo de caso real utilizando dados biológicos.
6
cin.ufpe.br
Sumário
1. Introdução
2. Referencial Teórico
3. Arquitetura Proposta
4. Implementação
5. Experimentos (com demonstração)
6. Trabalhos Relacionados
7. Conclusões
7
cin.ufpe.br
Referencial Teórico
Web Semântica
• Um meio de tornar a informação, localizada em qualquer lugar
da internet, acessível e entendível, tanto para os humanos
quanto para as máquinas (PASSIN, 2004);
• Principais tecnologias (ANTONIOU; HARMELEN, 2008):
– Ontologias
– OWL (Ontology Web Language)
– RDFS (Resource Description Framework Schema)
– SPARQL (SPARQL Protocol and RDF Query Language)
8
cin.ufpe.br
Referencial Teórico
Integração Semântica
• Integração de dados:
– É o problema de combinar dados de diferentes fontes e prover para o
usuário uma visão unificada destes dados (LENZERINI, 2002);
– Fornece a capacidade de manipular dados de forma transparente entre
múltiplas fontes de dados heterogêneas (CRUZ; XIAO, 2005).
• Integração semântica:
– Usa-se uma representação semântica explicita, evitando que dados
semanticamente incompatíveis sejam utilizados (ZIEGLER; DITTRICH,
2004);
– Esta representação semântica se dá por meio de ontologias, devido à sua
capacidade de representação (CRUZ; XIAO, 2005).
9
cin.ufpe.br
Referencial Teórico
Integração Semântica
• Problemas Relacionados (NOY, 2004)
10
AKT Reference Ontology eBiquity Person Ontology
Diferentes nomes para
o mesmo conceito
Student GraduationStudent
Mesmo nome para
diferentes conceitos
Project
Apenas o projeto atual
Project
Projetos passados e propostas
de projeto
Escopo
Inclui journals e publicações
compostas
Inclui estudantes e palestrantes
Diferentes convenções
de modelagem
Journal é uma classe journal é uma propriedade
Granularidade Professor-In-Academia
Adjunct, Affiliated, Associate,
Principal
cin.ufpe.br
Referencial Teórico
Integração Semântica
• Soluções Existentes (ALASOUD; HAARSLEV; SHIRI, 2009)
a) GAV (Global as View)
b) LAV (Local as View)
c) GLAV (Global-Local
as View)
11
cin.ufpe.br
Referencial Teórico
Integração Semântica
• Soluções Existentes de Acesso às Ontologias e Bancos de Dados
– OIS (Ontology Integration System) (CALVANESE; GIACOMO;
LENZERINI, 2001)
• Ontologia Global. Fornece uma visão global e unificada das ontologias
locais;
• Ontologias Locais. São ontologias heterogêneas e independentes. É onde
estão as instâncias e axiomas;
• Alinhamentos. Link semântico que relaciona os conceitos da ontologia com
os conceitos das ontologias locais.
– OBDA (Ontology-Based Data Access) (KONTCHAKOV;
RODRÍGUEZMURO; ZAKHARYASCHEV, 2013)
• Ontologia Global. Fornece uma visão global e unificada dos esquemas dos
bancos de dados locais;
• Bancos de Dados Locais. São fontes de dados heterogêneas e independentes.
É onde estão os dados;
• Mapeamentos. Link semântico que relaciona os conceitos da ontologia com
o esquemas dos bancos de dados locais.
12
cin.ufpe.br 13
Referencial Teórico
Alinhamento e Mapeamento
Mapeamento entre Ontologia e
Banco de Dados
O1 DB1
Class1 Table1
d2rq:ClassMap
Equivalentes
O1 O2
Class1 Class2
edoal:Class
89% de Equivalência
Alinhamento entre Ontologias
cin.ufpe.br
• Consulta SPARQL original
PREFIX store: <http://ontology.owl/store.owl#>
SELECT ?name WHERE {
?x a store:Book . ?x store:name ?name
}
• Consulta SPARQL reescrita para Ontologia
PREFIX bookstore: <http://ontology.owl/bookstore.owl#>
SELECT ?name WHERE {
?x a bookstore:Textbook . ?x bookstore:title ?name
}
• Consulta SQL reescrita para Banco de Dados
SELECT bookTitle AS name FROM books;
14
Referencial Teórico
Reescrita de Consultas
cin.ufpe.br
Sumário
1. Introdução
2. Referencial Teórico
3. Arquitetura Proposta
4. Implementação
5. Experimentos (com demonstração)
6. Trabalhos Relacionados
7. Conclusões
15
cin.ufpe.br
Arquitetura Proposta
16
Ontologia Global Ontologias Locais
...
Bancos de Dados
Relacionais Locais
...
Alinhamentos
Mapeamentos
Framework
cin.ufpe.br
Arquitetura Proposta
Processo de Integração
1. Configurar o Framework
– Definir a ontologia global e as fontes de dados locais
2. Alinhar as Ontologias
– Alinhar a ontologia global com as ontologias locais
3. Mapear os Bancos de Dados
– Mapear a ontologia global com os bancos de dados locais
4. Criar uma Consulta
– Criar uma consulta com o vocabulário da ontologia global
5. Reescrever as Consultas
– Reescrever a consulta da Etapa 4 para cada fonte local
6. Executar as Consultas
– Extrair o resultado das fontes locais executando as consultas da Etapa 5
17
cin.ufpe.br
Arquitetura Proposta
Cenários de Integração
• Cenário 1
• Cenário 2
18
Alinhamentos
Framework Ontologias Locais
...
Ontologia Global
Mapeamentos
Framework
...
Ontologia Global Bancos de Dados
Relacionais Locais
cin.ufpe.br
Arquitetura Proposta
Cenários de Integração
• Cenário 3
19
Framework
Ontologias Locais
...
...
Bancos de Dados
Relacionais Locais
Ontologia Global
cin.ufpe.br
Sumário
1. Introdução
2. Referencial Teórico
3. Arquitetura Proposta
4. Implementação
5. Experimentos (com demonstração)
6. Trabalhos Relacionados
7. Conclusões
20
cin.ufpe.br
Implementação
21
Disponível em
http://github.com/adrielcafe/GryphonFramework
cin.ufpe.br
Implementação
22
Aplicação
Gryphon Framework
Ontologia Global
Fontes de Dados Locais
......
MapeamentosAlinhamentos
cin.ufpe.br
Implementação
Componentes Utilizados
• AML (AgreementMakerLight) (CRUZ; ANTONELLI; STROE,
2009)
– Para alinhar as ontologias locais com a ontologia global
• Mediation (CORRENDO et al., 2010)
– Para reescrever consultas SPARQL
• Sesame (BROEKSTRA; KAMPMAN; HARMELEN, 2002)
– Para executar consultas SPARQL
• D2RQ (BIZER, 2004)
– Para mapear os bancos de dados locais com a ontologia global
– Para reescrever consultas SPARQL em SQL
– Para executar consultas SQL
23
cin.ufpe.br
Implementação
Processo de Integração Otimizado
24
1. Configurar o Framework
– Alterar os valores da classe GryphonConfig
– Definir a ontologia global e as fontes de dados locais
2. Alinhar e Mapear as Fontes de Dados
– Alinhar a ontologia global com as ontologias locais
– Mapear a ontologia global com os bancos de dados locais
3. Realizar uma Consulta
– Receber uma consulta SPARQL da aplicação
– Reescrever esta consulta para cada fonte local
– Extrair o resultado das fontes locais executando as consultas reescritas
– Salvar os resultados no formado especificado
cin.ufpe.br
Implementação
Processo de Integração Otimizado
1. Configurar o Framework
GryphonConfig.setWorkingDirectory(new File("myIntegration"));
GryphonConfig.setLogEnabled(true);
GryphonConfig.setShowLogo(true);
Gryphon.init();
Ontology globalOnt = new Ontology("globalOntology", uriToGlobalOntology);
Ontology localOnt1 = new Ontology("localOntology1", uriToLocalOntology1);
Ontology localOnt2 = new Ontology("localOntology2", uriToLocalOntology2);
Database localDB1 = new Database("localhost", 3306, "username", "password", "db1",
Gryphon.DBMS.MySQL);
Database localDB2 = new Database("localhost", 3306, "username", "password", "db2",
Gryphon.DBMS.PostgreSQL);
Gryphon.setGlobalOntology(globalOnt);
Gryphon.addLocalOntology(localOnt1);
Gryphon.addLocalOntology(localOnt2);
Gryphon.addLocalDatabase(localDB1);
Gryphon.addLocalDatabase(localDB2);
25
cin.ufpe.br
2. Alinhar e Mapear as Fontes de Dados
Gryphon.alignAndMap();
3. Realizar uma Consulta
String strQuery =
"PREFIX store: <http://ontology.owl/store.owl#> "
+"SELECT ?name WHERE "
+"{ ?x a store:Book . ?x store:name ?name }";
Gryphon.query(strQuery, ResultFormat.JSON);
* Os resultados podem ser salvos nos formatos JSON, XML e CSV.
26
Implementação
Processo de Integração Otimizado
cin.ufpe.br
Sumário
1. Introdução
2. Referencial Teórico
3. Arquitetura Proposta
4. Implementação
5. Experimentos (com demonstração)
6. Trabalhos Relacionados
7. Conclusões
27
cin.ufpe.br
Experimentos
• Experimento 2
Consiste em integrar ontologias e bancos de dados, do domínio de notícias,
utilizando o Gryphon Framework.
28
Gryphon
Framework
Ontologias Locais
Bancos de Dados Locais
News
Ontologia Global
SIOC rNews
Joomla WordPress
cin.ufpe.br
Experimentos
DEMONSTRAÇÃO
PRÁTICA
29
cin.ufpe.br
Sumário
1. Introdução
2. Referencial Teórico
3. Arquitetura Proposta
4. Implementação
5. Experimentos (com demonstração)
6. Trabalhos Relacionados
7. Conclusões
30
cin.ufpe.br
Trabalhos Relacionados
• Integração de Ontologias
– Aber-OWL (HOEHNDORF et al., 2015)
– Exelixis (KONDYLAKIS; PLEXOUSAKIS, 2011)
– PROMPT (NOY; MUSEN, 2000)
• Integração de Bancos de Dados Baseada em Ontologias
– -ontop- (RODRÍGUEZ-MURO; KONTCHAKOV;
ZAKHARYASCHEV, 2013)
– ONTOFUSION (PÉREZ-REY et al., 2006)
– OntoGrate (DOU; QIN; LEPENDU, 2010)
– Optique (CALVANESE et al., 2013)
31
cin.ufpe.br
• Aber-OWL consiste em um repositório de ontologias, um
conjunto de web services e um framework que possibilitam a
realização de consultas em ontologias do domínio biológico.
• É possível realizar consultas em SPARQL nas ontologias
presentes no repositório. Os resultados das consultas são salvos
no formato JSON.
• É possível utilizar o Gryphon Framework em qualquer
domínio;
• O Gryphon Framework permite salvar os resultados nos
formatos JSON, XML e CSV;
32
Trabalhos Relacionados
Comparação com Aber-OWL
cin.ufpe.br
• O -ontop- é uma plataforma para consultar bancos de dados
como grafos RDF virtuais utilizando SPARQL 1.0.
• É dividido em duas partes:
– Quest, seu mecanismo para reescrita de consultas SPARQL em SQL;
– -ontopPro-, um plug-in para Protégé.
• O Gryphon suporta o SPARQL 1.1, a última versão da
linguagem que traz melhorias fundamentais, e.g., funções
agregadas, subconsultas, negação, caminhos de propriedade e
novos comandos.
33
Trabalhos Relacionados
Comparação com -ontop-
cin.ufpe.br
Sumário
1. Introdução
2. Referencial Teórico
3. Arquitetura Proposta
4. Implementação
5. Experimentos (com demonstração)
6. Trabalhos Relacionados
7. Conclusões
34
cin.ufpe.br
Conclusões
• Foi criada uma arquitetura, juntamente com uma
implementação, capaz de realizar integrações semânticas entre
ontologias e bancos de dados;
– Utilizando alinhamentos e mapeamentos para possibilitar a reescrita de
consultas em diferentes linguagens (e.g., SPARQL e SQL).
• Este trabalho é pioneiro na integração simultânea entre estas
duas tecnologias;
• É possível utilizar esta arquitetura (e implementação) em
diversos cenários e domínios;
• Com o advento da Web Semântica, a necessidade de integrar
fontes de dados heterogêneos está sendo cada vez mais
frequente;
• Foram realizados dois experimentos com domínios e propósitos
diferentes.
35
cin.ufpe.br
Conclusões
Limitações
• A edição de alinhamentos e mapeamentos não está integrada
com o Gryphon Framework;
• Não permite a integração de ontologias distribuídas pela
internet;
• Os mapeamentos gerados pelo D2RQ não são tão precisos
quanto os alinhamentos gerados pelo AML.
36
cin.ufpe.br
Conclusões
Trabalhos Futuros
• Realizar testes comparativos entre as plataformas -ontop- e o
D2RQ;
– Caso o -ontop- se mostre superior ao D2RQ, seria válido substituir as
plataformas.
• Criação de uma interface (web ou desktop) para facilitar a
integração;
– O usuário poderia informar quem seria a ontologia global, e quais seriam as
ontologias e/ou bancos de dados locais;
– Feito isso, seria realizado o alinhamento e mapeamento automaticamente e
haveria a possibilidade do usuário editá-los.
• Estender a arquitetura para suportar integração de bancos de
dados não relacionais (NoSQL), e.g., MongoDB, Cassandra, Redis ou
Neo4J;
• Implementar algoritmos de aprendizado de máquina;
– Treinar o Gryphon Framework para realizar alinhamentos e mapeamentos
cada vez mais preciso com base em experiências anteriores.
37
cin.ufpe.br 38
Obrigado a Todos!

Mais conteúdo relacionado

Semelhante a Uma Arquitetura com Implementação para Integração Semântica de Ontologias e Bancos de Dados

Gestão de dados de investigação da recolha até ao depósito: Uma abordagem bas...
Gestão de dados de investigação da recolha até ao depósito: Uma abordagem bas...Gestão de dados de investigação da recolha até ao depósito: Uma abordagem bas...
Gestão de dados de investigação da recolha até ao depósito: Uma abordagem bas...
Conferência Luso-Brasileira de Ciência Aberta
 
Workflows científicos
Workflows científicosWorkflows científicos
Workflows científicos
Elaine Naomi
 
Web Semântica no Domínio Bibliográfico
Web Semântica no Domínio BibliográficoWeb Semântica no Domínio Bibliográfico
Web Semântica no Domínio Bibliográfico
UNESP
 
Uma DSL de Engenharia Reversa para Modelagem de Banco de Dados Relacionais e ...
Uma DSL de Engenharia Reversa para Modelagem de Banco de Dados Relacionais e ...Uma DSL de Engenharia Reversa para Modelagem de Banco de Dados Relacionais e ...
Uma DSL de Engenharia Reversa para Modelagem de Banco de Dados Relacionais e ...
Carlos Eduardo Pantoja
 
Dicionário-piloto de Nanociência e Nanotecnologia: do corpus à disponibilizaç...
Dicionário-piloto de Nanociência e Nanotecnologia: do corpus à disponibilizaç...Dicionário-piloto de Nanociência e Nanotecnologia: do corpus à disponibilizaç...
Dicionário-piloto de Nanociência e Nanotecnologia: do corpus à disponibilizaç...
Joel S. Coleti
 
Db mapeamento relacional
Db mapeamento relacionalDb mapeamento relacional
Db mapeamento relacional
Edvaldo Freitas
 
Aula7-Ontologia.ppt
Aula7-Ontologia.pptAula7-Ontologia.ppt
Aula7-Ontologia.ppt
Isaac Medeiros
 
Apresentação SIMCOP - SIMCOP – Framework para Análise de Similaridade em Sequ...
Apresentação SIMCOP - SIMCOP – Framework para Análise de Similaridade em Sequ...Apresentação SIMCOP - SIMCOP – Framework para Análise de Similaridade em Sequ...
Apresentação SIMCOP - SIMCOP – Framework para Análise de Similaridade em Sequ...
Paulo Henrique Santini
 
O uso de mapas conceituais para a gestão do conhecimento: da sala de aula par...
O uso de mapas conceituais para a gestão do conhecimento: da sala de aula par...O uso de mapas conceituais para a gestão do conhecimento: da sala de aula par...
O uso de mapas conceituais para a gestão do conhecimento: da sala de aula par...
Paulo Correia
 
Resumo sobre Recovering from a decade: a systematic mapping of information re...
Resumo sobre Recovering from a decade: a systematic mapping of information re...Resumo sobre Recovering from a decade: a systematic mapping of information re...
Resumo sobre Recovering from a decade: a systematic mapping of information re...
Avelino Ferreira Gomes Filho
 
Ufpe reuso de requesitos em cloud computing__artigo rnf cloud
Ufpe  reuso de requesitos em cloud computing__artigo rnf cloudUfpe  reuso de requesitos em cloud computing__artigo rnf cloud
Ufpe reuso de requesitos em cloud computing__artigo rnf cloud
sergiofbrandao
 
Plataforma Semântica de Recuperação da Informação Aplicada a Extração de Arti...
Plataforma Semântica de Recuperação da Informação Aplicada a Extração de Arti...Plataforma Semântica de Recuperação da Informação Aplicada a Extração de Arti...
Plataforma Semântica de Recuperação da Informação Aplicada a Extração de Arti...
Elvis Fusco
 
Diretrizes OpenAire para repositorios
Diretrizes OpenAire para repositorios Diretrizes OpenAire para repositorios
Diretrizes OpenAire para repositorios
Conferência Luso-Brasileira de Ciência Aberta
 
Seminário de Andamento de Doutorado
Seminário de Andamento de DoutoradoSeminário de Andamento de Doutorado
Seminário de Andamento de Doutorado
Luiz Henrique Zambom Santana
 
Oficina 1 Confoa 2013 - Parte 1 - Interoperabilidade e repositorios - eloy ro...
Oficina 1 Confoa 2013 - Parte 1 - Interoperabilidade e repositorios - eloy ro...Oficina 1 Confoa 2013 - Parte 1 - Interoperabilidade e repositorios - eloy ro...
Oficina 1 Confoa 2013 - Parte 1 - Interoperabilidade e repositorios - eloy ro...
Conferência Luso-Brasileira de Ciência Aberta
 
Recursos didáticos: produzir, encontrar, remixar, organizar, catalogar
Recursos didáticos: produzir, encontrar, remixar, organizar, catalogarRecursos didáticos: produzir, encontrar, remixar, organizar, catalogar
Recursos didáticos: produzir, encontrar, remixar, organizar, catalogar
Bianca Santana
 
Apresentação defesa de mestrado 2014 final
Apresentação defesa de mestrado 2014   finalApresentação defesa de mestrado 2014   final
Apresentação defesa de mestrado 2014 final
Danusa Ribeiro
 
Desafios e oportunidades da interoperabilidade nos repositórios de acesso aberto
Desafios e oportunidades da interoperabilidade nos repositórios de acesso abertoDesafios e oportunidades da interoperabilidade nos repositórios de acesso aberto
Desafios e oportunidades da interoperabilidade nos repositórios de acesso aberto
Conferência Luso-Brasileira de Ciência Aberta
 
As contribuições da Web Semântica para a Catalogação
As contribuições da Web Semântica para a CatalogaçãoAs contribuições da Web Semântica para a Catalogação
As contribuições da Web Semântica para a Catalogação
UNESP
 
Serviços de Descoberta
Serviços de DescobertaServiços de Descoberta
Serviços de Descoberta
sibi_ufrj
 

Semelhante a Uma Arquitetura com Implementação para Integração Semântica de Ontologias e Bancos de Dados (20)

Gestão de dados de investigação da recolha até ao depósito: Uma abordagem bas...
Gestão de dados de investigação da recolha até ao depósito: Uma abordagem bas...Gestão de dados de investigação da recolha até ao depósito: Uma abordagem bas...
Gestão de dados de investigação da recolha até ao depósito: Uma abordagem bas...
 
Workflows científicos
Workflows científicosWorkflows científicos
Workflows científicos
 
Web Semântica no Domínio Bibliográfico
Web Semântica no Domínio BibliográficoWeb Semântica no Domínio Bibliográfico
Web Semântica no Domínio Bibliográfico
 
Uma DSL de Engenharia Reversa para Modelagem de Banco de Dados Relacionais e ...
Uma DSL de Engenharia Reversa para Modelagem de Banco de Dados Relacionais e ...Uma DSL de Engenharia Reversa para Modelagem de Banco de Dados Relacionais e ...
Uma DSL de Engenharia Reversa para Modelagem de Banco de Dados Relacionais e ...
 
Dicionário-piloto de Nanociência e Nanotecnologia: do corpus à disponibilizaç...
Dicionário-piloto de Nanociência e Nanotecnologia: do corpus à disponibilizaç...Dicionário-piloto de Nanociência e Nanotecnologia: do corpus à disponibilizaç...
Dicionário-piloto de Nanociência e Nanotecnologia: do corpus à disponibilizaç...
 
Db mapeamento relacional
Db mapeamento relacionalDb mapeamento relacional
Db mapeamento relacional
 
Aula7-Ontologia.ppt
Aula7-Ontologia.pptAula7-Ontologia.ppt
Aula7-Ontologia.ppt
 
Apresentação SIMCOP - SIMCOP – Framework para Análise de Similaridade em Sequ...
Apresentação SIMCOP - SIMCOP – Framework para Análise de Similaridade em Sequ...Apresentação SIMCOP - SIMCOP – Framework para Análise de Similaridade em Sequ...
Apresentação SIMCOP - SIMCOP – Framework para Análise de Similaridade em Sequ...
 
O uso de mapas conceituais para a gestão do conhecimento: da sala de aula par...
O uso de mapas conceituais para a gestão do conhecimento: da sala de aula par...O uso de mapas conceituais para a gestão do conhecimento: da sala de aula par...
O uso de mapas conceituais para a gestão do conhecimento: da sala de aula par...
 
Resumo sobre Recovering from a decade: a systematic mapping of information re...
Resumo sobre Recovering from a decade: a systematic mapping of information re...Resumo sobre Recovering from a decade: a systematic mapping of information re...
Resumo sobre Recovering from a decade: a systematic mapping of information re...
 
Ufpe reuso de requesitos em cloud computing__artigo rnf cloud
Ufpe  reuso de requesitos em cloud computing__artigo rnf cloudUfpe  reuso de requesitos em cloud computing__artigo rnf cloud
Ufpe reuso de requesitos em cloud computing__artigo rnf cloud
 
Plataforma Semântica de Recuperação da Informação Aplicada a Extração de Arti...
Plataforma Semântica de Recuperação da Informação Aplicada a Extração de Arti...Plataforma Semântica de Recuperação da Informação Aplicada a Extração de Arti...
Plataforma Semântica de Recuperação da Informação Aplicada a Extração de Arti...
 
Diretrizes OpenAire para repositorios
Diretrizes OpenAire para repositorios Diretrizes OpenAire para repositorios
Diretrizes OpenAire para repositorios
 
Seminário de Andamento de Doutorado
Seminário de Andamento de DoutoradoSeminário de Andamento de Doutorado
Seminário de Andamento de Doutorado
 
Oficina 1 Confoa 2013 - Parte 1 - Interoperabilidade e repositorios - eloy ro...
Oficina 1 Confoa 2013 - Parte 1 - Interoperabilidade e repositorios - eloy ro...Oficina 1 Confoa 2013 - Parte 1 - Interoperabilidade e repositorios - eloy ro...
Oficina 1 Confoa 2013 - Parte 1 - Interoperabilidade e repositorios - eloy ro...
 
Recursos didáticos: produzir, encontrar, remixar, organizar, catalogar
Recursos didáticos: produzir, encontrar, remixar, organizar, catalogarRecursos didáticos: produzir, encontrar, remixar, organizar, catalogar
Recursos didáticos: produzir, encontrar, remixar, organizar, catalogar
 
Apresentação defesa de mestrado 2014 final
Apresentação defesa de mestrado 2014   finalApresentação defesa de mestrado 2014   final
Apresentação defesa de mestrado 2014 final
 
Desafios e oportunidades da interoperabilidade nos repositórios de acesso aberto
Desafios e oportunidades da interoperabilidade nos repositórios de acesso abertoDesafios e oportunidades da interoperabilidade nos repositórios de acesso aberto
Desafios e oportunidades da interoperabilidade nos repositórios de acesso aberto
 
As contribuições da Web Semântica para a Catalogação
As contribuições da Web Semântica para a CatalogaçãoAs contribuições da Web Semântica para a Catalogação
As contribuições da Web Semântica para a Catalogação
 
Serviços de Descoberta
Serviços de DescobertaServiços de Descoberta
Serviços de Descoberta
 

Mais de Adriel Café

Desenvolvendo aplicativos Android com Kotlin
Desenvolvendo aplicativos Android com KotlinDesenvolvendo aplicativos Android com Kotlin
Desenvolvendo aplicativos Android com Kotlin
Adriel Café
 
Desenvolvendo para Android com componentes Open Source
Desenvolvendo para Android com componentes Open SourceDesenvolvendo para Android com componentes Open Source
Desenvolvendo para Android com componentes Open Source
Adriel Café
 
Gryphon Framework - Preliminary Results Feb-2014
Gryphon Framework - Preliminary Results Feb-2014Gryphon Framework - Preliminary Results Feb-2014
Gryphon Framework - Preliminary Results Feb-2014
Adriel Café
 
Ontology integration - Heterogeneity, Techniques and more
Ontology integration - Heterogeneity, Techniques and moreOntology integration - Heterogeneity, Techniques and more
Ontology integration - Heterogeneity, Techniques and more
Adriel Café
 
SPARQL-DL - Theory & Practice
SPARQL-DL - Theory & PracticeSPARQL-DL - Theory & Practice
SPARQL-DL - Theory & Practice
Adriel Café
 
Mobile Apps Cross-Platform
Mobile Apps Cross-PlatformMobile Apps Cross-Platform
Mobile Apps Cross-Platform
Adriel Café
 
FLISOL 2012 - Palestra "Introdução ao Desenvolvimento de Aplicações para o Si...
FLISOL 2012 - Palestra "Introdução ao Desenvolvimento de Aplicações para o Si...FLISOL 2012 - Palestra "Introdução ao Desenvolvimento de Aplicações para o Si...
FLISOL 2012 - Palestra "Introdução ao Desenvolvimento de Aplicações para o Si...
Adriel Café
 
2º ETI - Minicurso "Desenvolvendo para Plataforma Android"
2º ETI - Minicurso "Desenvolvendo para Plataforma Android"2º ETI - Minicurso "Desenvolvendo para Plataforma Android"
2º ETI - Minicurso "Desenvolvendo para Plataforma Android"
Adriel Café
 

Mais de Adriel Café (8)

Desenvolvendo aplicativos Android com Kotlin
Desenvolvendo aplicativos Android com KotlinDesenvolvendo aplicativos Android com Kotlin
Desenvolvendo aplicativos Android com Kotlin
 
Desenvolvendo para Android com componentes Open Source
Desenvolvendo para Android com componentes Open SourceDesenvolvendo para Android com componentes Open Source
Desenvolvendo para Android com componentes Open Source
 
Gryphon Framework - Preliminary Results Feb-2014
Gryphon Framework - Preliminary Results Feb-2014Gryphon Framework - Preliminary Results Feb-2014
Gryphon Framework - Preliminary Results Feb-2014
 
Ontology integration - Heterogeneity, Techniques and more
Ontology integration - Heterogeneity, Techniques and moreOntology integration - Heterogeneity, Techniques and more
Ontology integration - Heterogeneity, Techniques and more
 
SPARQL-DL - Theory & Practice
SPARQL-DL - Theory & PracticeSPARQL-DL - Theory & Practice
SPARQL-DL - Theory & Practice
 
Mobile Apps Cross-Platform
Mobile Apps Cross-PlatformMobile Apps Cross-Platform
Mobile Apps Cross-Platform
 
FLISOL 2012 - Palestra "Introdução ao Desenvolvimento de Aplicações para o Si...
FLISOL 2012 - Palestra "Introdução ao Desenvolvimento de Aplicações para o Si...FLISOL 2012 - Palestra "Introdução ao Desenvolvimento de Aplicações para o Si...
FLISOL 2012 - Palestra "Introdução ao Desenvolvimento de Aplicações para o Si...
 
2º ETI - Minicurso "Desenvolvendo para Plataforma Android"
2º ETI - Minicurso "Desenvolvendo para Plataforma Android"2º ETI - Minicurso "Desenvolvendo para Plataforma Android"
2º ETI - Minicurso "Desenvolvendo para Plataforma Android"
 

Último

PRATICANDO O SCRUM Scrum team, product owner
PRATICANDO O SCRUM Scrum team, product ownerPRATICANDO O SCRUM Scrum team, product owner
PRATICANDO O SCRUM Scrum team, product owner
anpproferick
 
REDE_DE_COMPUTADORES_TECNOLOGIA_TIPOS.pptx
REDE_DE_COMPUTADORES_TECNOLOGIA_TIPOS.pptxREDE_DE_COMPUTADORES_TECNOLOGIA_TIPOS.pptx
REDE_DE_COMPUTADORES_TECNOLOGIA_TIPOS.pptx
IranyGarcia
 
Teoria de redes de computadores redes .doc
Teoria de redes de computadores redes .docTeoria de redes de computadores redes .doc
Teoria de redes de computadores redes .doc
anpproferick
 
Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!
Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!
Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!
Annelise Gripp
 
Gestão de dados: sua importância e benefícios
Gestão de dados: sua importância e benefíciosGestão de dados: sua importância e benefícios
Gestão de dados: sua importância e benefícios
Rafael Santos
 
Como fui de 0 a lead na gringa em 3 anos.pptx
Como fui de 0 a lead na gringa em 3 anos.pptxComo fui de 0 a lead na gringa em 3 anos.pptx
Como fui de 0 a lead na gringa em 3 anos.pptx
tnrlucas
 

Último (6)

PRATICANDO O SCRUM Scrum team, product owner
PRATICANDO O SCRUM Scrum team, product ownerPRATICANDO O SCRUM Scrum team, product owner
PRATICANDO O SCRUM Scrum team, product owner
 
REDE_DE_COMPUTADORES_TECNOLOGIA_TIPOS.pptx
REDE_DE_COMPUTADORES_TECNOLOGIA_TIPOS.pptxREDE_DE_COMPUTADORES_TECNOLOGIA_TIPOS.pptx
REDE_DE_COMPUTADORES_TECNOLOGIA_TIPOS.pptx
 
Teoria de redes de computadores redes .doc
Teoria de redes de computadores redes .docTeoria de redes de computadores redes .doc
Teoria de redes de computadores redes .doc
 
Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!
Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!
Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!
 
Gestão de dados: sua importância e benefícios
Gestão de dados: sua importância e benefíciosGestão de dados: sua importância e benefícios
Gestão de dados: sua importância e benefícios
 
Como fui de 0 a lead na gringa em 3 anos.pptx
Como fui de 0 a lead na gringa em 3 anos.pptxComo fui de 0 a lead na gringa em 3 anos.pptx
Como fui de 0 a lead na gringa em 3 anos.pptx
 

Uma Arquitetura com Implementação para Integração Semântica de Ontologias e Bancos de Dados

  • 1. cin.ufpe.br Uma Arquitetura com Implementação para Integração Semântica de Ontologias e Bancos de Dados Aluno : Adriel Café aac3@cin.ufpe.br Orientador: Prof. Fred Freitas fred@cin.ufpe.br Defesa de Dissertação de Mestrado, 2015 Pós-Graduação em Ciência da Computação Centro de Informática (CIn) Universidade Federal de Pernambuco (UFPE)
  • 2. cin.ufpe.br Sumário 1. Introdução 2. Referencial Teórico 3. Arquitetura Proposta 4. Implementação 5. Experimentos (com demonstração) 6. Trabalhos Relacionados 7. Conclusões 2
  • 3. cin.ufpe.br Sumário 1. Introdução 2. Referencial Teórico 3. Arquitetura Proposta 4. Implementação 5. Experimentos (com demonstração) 6. Trabalhos Relacionados 7. Conclusões 3
  • 4. cin.ufpe.br Introdução • Integração da informação é uma área de pesquisa ativa que tem por objetivo a criação de mecanismos para extrair dados ou mesclar fontes de dados (UZDANAVICIUTE; BUTLERIS, 2011); • Integração semântica é uma subárea, nela são utilizadas tecnologias da Web Semântica para tornar o processo de integração o mais inteligente e automático possível (CRUZ; XIAO, 2005); • Um dos grandes esforços para os novos sistemas de informação baseados em ontologias está em resolver problemas em fontes de dados heterogêneos (SMITH, 2003). 4
  • 5. cin.ufpe.br Introdução Objetivo Geral • Propor e avaliar uma arquitetura para integração semântica entre ontologias e bancos de dados relacionais simultaneamente; • Esta arquitetura deverá descrever detalhadamente todo o processo de integração virtual, mediada por consultas; • Deverá ser utilizada uma camada semântica para diminuir os problemas de heterogeneidade de dados. 5
  • 6. cin.ufpe.br Introdução Objetivos Específicos • Criar uma arquitetura que seja capaz de realizar integração semântica, utilizando ontologias como vocabulário de consulta; • Implementar a arquitetura proposta, por meio de um framework, a fim de comprovar a eficácia da mesma; • Identificar soluções existentes que realizem alguma subtarefa de integração para utilizá-los na implementação do framework; – Subtarefas: alinhamento, mapeamento, reescrita e execução de consultas. • Realizar um estudo de caso real utilizando dados biológicos. 6
  • 7. cin.ufpe.br Sumário 1. Introdução 2. Referencial Teórico 3. Arquitetura Proposta 4. Implementação 5. Experimentos (com demonstração) 6. Trabalhos Relacionados 7. Conclusões 7
  • 8. cin.ufpe.br Referencial Teórico Web Semântica • Um meio de tornar a informação, localizada em qualquer lugar da internet, acessível e entendível, tanto para os humanos quanto para as máquinas (PASSIN, 2004); • Principais tecnologias (ANTONIOU; HARMELEN, 2008): – Ontologias – OWL (Ontology Web Language) – RDFS (Resource Description Framework Schema) – SPARQL (SPARQL Protocol and RDF Query Language) 8
  • 9. cin.ufpe.br Referencial Teórico Integração Semântica • Integração de dados: – É o problema de combinar dados de diferentes fontes e prover para o usuário uma visão unificada destes dados (LENZERINI, 2002); – Fornece a capacidade de manipular dados de forma transparente entre múltiplas fontes de dados heterogêneas (CRUZ; XIAO, 2005). • Integração semântica: – Usa-se uma representação semântica explicita, evitando que dados semanticamente incompatíveis sejam utilizados (ZIEGLER; DITTRICH, 2004); – Esta representação semântica se dá por meio de ontologias, devido à sua capacidade de representação (CRUZ; XIAO, 2005). 9
  • 10. cin.ufpe.br Referencial Teórico Integração Semântica • Problemas Relacionados (NOY, 2004) 10 AKT Reference Ontology eBiquity Person Ontology Diferentes nomes para o mesmo conceito Student GraduationStudent Mesmo nome para diferentes conceitos Project Apenas o projeto atual Project Projetos passados e propostas de projeto Escopo Inclui journals e publicações compostas Inclui estudantes e palestrantes Diferentes convenções de modelagem Journal é uma classe journal é uma propriedade Granularidade Professor-In-Academia Adjunct, Affiliated, Associate, Principal
  • 11. cin.ufpe.br Referencial Teórico Integração Semântica • Soluções Existentes (ALASOUD; HAARSLEV; SHIRI, 2009) a) GAV (Global as View) b) LAV (Local as View) c) GLAV (Global-Local as View) 11
  • 12. cin.ufpe.br Referencial Teórico Integração Semântica • Soluções Existentes de Acesso às Ontologias e Bancos de Dados – OIS (Ontology Integration System) (CALVANESE; GIACOMO; LENZERINI, 2001) • Ontologia Global. Fornece uma visão global e unificada das ontologias locais; • Ontologias Locais. São ontologias heterogêneas e independentes. É onde estão as instâncias e axiomas; • Alinhamentos. Link semântico que relaciona os conceitos da ontologia com os conceitos das ontologias locais. – OBDA (Ontology-Based Data Access) (KONTCHAKOV; RODRÍGUEZMURO; ZAKHARYASCHEV, 2013) • Ontologia Global. Fornece uma visão global e unificada dos esquemas dos bancos de dados locais; • Bancos de Dados Locais. São fontes de dados heterogêneas e independentes. É onde estão os dados; • Mapeamentos. Link semântico que relaciona os conceitos da ontologia com o esquemas dos bancos de dados locais. 12
  • 13. cin.ufpe.br 13 Referencial Teórico Alinhamento e Mapeamento Mapeamento entre Ontologia e Banco de Dados O1 DB1 Class1 Table1 d2rq:ClassMap Equivalentes O1 O2 Class1 Class2 edoal:Class 89% de Equivalência Alinhamento entre Ontologias
  • 14. cin.ufpe.br • Consulta SPARQL original PREFIX store: <http://ontology.owl/store.owl#> SELECT ?name WHERE { ?x a store:Book . ?x store:name ?name } • Consulta SPARQL reescrita para Ontologia PREFIX bookstore: <http://ontology.owl/bookstore.owl#> SELECT ?name WHERE { ?x a bookstore:Textbook . ?x bookstore:title ?name } • Consulta SQL reescrita para Banco de Dados SELECT bookTitle AS name FROM books; 14 Referencial Teórico Reescrita de Consultas
  • 15. cin.ufpe.br Sumário 1. Introdução 2. Referencial Teórico 3. Arquitetura Proposta 4. Implementação 5. Experimentos (com demonstração) 6. Trabalhos Relacionados 7. Conclusões 15
  • 16. cin.ufpe.br Arquitetura Proposta 16 Ontologia Global Ontologias Locais ... Bancos de Dados Relacionais Locais ... Alinhamentos Mapeamentos Framework
  • 17. cin.ufpe.br Arquitetura Proposta Processo de Integração 1. Configurar o Framework – Definir a ontologia global e as fontes de dados locais 2. Alinhar as Ontologias – Alinhar a ontologia global com as ontologias locais 3. Mapear os Bancos de Dados – Mapear a ontologia global com os bancos de dados locais 4. Criar uma Consulta – Criar uma consulta com o vocabulário da ontologia global 5. Reescrever as Consultas – Reescrever a consulta da Etapa 4 para cada fonte local 6. Executar as Consultas – Extrair o resultado das fontes locais executando as consultas da Etapa 5 17
  • 18. cin.ufpe.br Arquitetura Proposta Cenários de Integração • Cenário 1 • Cenário 2 18 Alinhamentos Framework Ontologias Locais ... Ontologia Global Mapeamentos Framework ... Ontologia Global Bancos de Dados Relacionais Locais
  • 19. cin.ufpe.br Arquitetura Proposta Cenários de Integração • Cenário 3 19 Framework Ontologias Locais ... ... Bancos de Dados Relacionais Locais Ontologia Global
  • 20. cin.ufpe.br Sumário 1. Introdução 2. Referencial Teórico 3. Arquitetura Proposta 4. Implementação 5. Experimentos (com demonstração) 6. Trabalhos Relacionados 7. Conclusões 20
  • 23. cin.ufpe.br Implementação Componentes Utilizados • AML (AgreementMakerLight) (CRUZ; ANTONELLI; STROE, 2009) – Para alinhar as ontologias locais com a ontologia global • Mediation (CORRENDO et al., 2010) – Para reescrever consultas SPARQL • Sesame (BROEKSTRA; KAMPMAN; HARMELEN, 2002) – Para executar consultas SPARQL • D2RQ (BIZER, 2004) – Para mapear os bancos de dados locais com a ontologia global – Para reescrever consultas SPARQL em SQL – Para executar consultas SQL 23
  • 24. cin.ufpe.br Implementação Processo de Integração Otimizado 24 1. Configurar o Framework – Alterar os valores da classe GryphonConfig – Definir a ontologia global e as fontes de dados locais 2. Alinhar e Mapear as Fontes de Dados – Alinhar a ontologia global com as ontologias locais – Mapear a ontologia global com os bancos de dados locais 3. Realizar uma Consulta – Receber uma consulta SPARQL da aplicação – Reescrever esta consulta para cada fonte local – Extrair o resultado das fontes locais executando as consultas reescritas – Salvar os resultados no formado especificado
  • 25. cin.ufpe.br Implementação Processo de Integração Otimizado 1. Configurar o Framework GryphonConfig.setWorkingDirectory(new File("myIntegration")); GryphonConfig.setLogEnabled(true); GryphonConfig.setShowLogo(true); Gryphon.init(); Ontology globalOnt = new Ontology("globalOntology", uriToGlobalOntology); Ontology localOnt1 = new Ontology("localOntology1", uriToLocalOntology1); Ontology localOnt2 = new Ontology("localOntology2", uriToLocalOntology2); Database localDB1 = new Database("localhost", 3306, "username", "password", "db1", Gryphon.DBMS.MySQL); Database localDB2 = new Database("localhost", 3306, "username", "password", "db2", Gryphon.DBMS.PostgreSQL); Gryphon.setGlobalOntology(globalOnt); Gryphon.addLocalOntology(localOnt1); Gryphon.addLocalOntology(localOnt2); Gryphon.addLocalDatabase(localDB1); Gryphon.addLocalDatabase(localDB2); 25
  • 26. cin.ufpe.br 2. Alinhar e Mapear as Fontes de Dados Gryphon.alignAndMap(); 3. Realizar uma Consulta String strQuery = "PREFIX store: <http://ontology.owl/store.owl#> " +"SELECT ?name WHERE " +"{ ?x a store:Book . ?x store:name ?name }"; Gryphon.query(strQuery, ResultFormat.JSON); * Os resultados podem ser salvos nos formatos JSON, XML e CSV. 26 Implementação Processo de Integração Otimizado
  • 27. cin.ufpe.br Sumário 1. Introdução 2. Referencial Teórico 3. Arquitetura Proposta 4. Implementação 5. Experimentos (com demonstração) 6. Trabalhos Relacionados 7. Conclusões 27
  • 28. cin.ufpe.br Experimentos • Experimento 2 Consiste em integrar ontologias e bancos de dados, do domínio de notícias, utilizando o Gryphon Framework. 28 Gryphon Framework Ontologias Locais Bancos de Dados Locais News Ontologia Global SIOC rNews Joomla WordPress
  • 30. cin.ufpe.br Sumário 1. Introdução 2. Referencial Teórico 3. Arquitetura Proposta 4. Implementação 5. Experimentos (com demonstração) 6. Trabalhos Relacionados 7. Conclusões 30
  • 31. cin.ufpe.br Trabalhos Relacionados • Integração de Ontologias – Aber-OWL (HOEHNDORF et al., 2015) – Exelixis (KONDYLAKIS; PLEXOUSAKIS, 2011) – PROMPT (NOY; MUSEN, 2000) • Integração de Bancos de Dados Baseada em Ontologias – -ontop- (RODRÍGUEZ-MURO; KONTCHAKOV; ZAKHARYASCHEV, 2013) – ONTOFUSION (PÉREZ-REY et al., 2006) – OntoGrate (DOU; QIN; LEPENDU, 2010) – Optique (CALVANESE et al., 2013) 31
  • 32. cin.ufpe.br • Aber-OWL consiste em um repositório de ontologias, um conjunto de web services e um framework que possibilitam a realização de consultas em ontologias do domínio biológico. • É possível realizar consultas em SPARQL nas ontologias presentes no repositório. Os resultados das consultas são salvos no formato JSON. • É possível utilizar o Gryphon Framework em qualquer domínio; • O Gryphon Framework permite salvar os resultados nos formatos JSON, XML e CSV; 32 Trabalhos Relacionados Comparação com Aber-OWL
  • 33. cin.ufpe.br • O -ontop- é uma plataforma para consultar bancos de dados como grafos RDF virtuais utilizando SPARQL 1.0. • É dividido em duas partes: – Quest, seu mecanismo para reescrita de consultas SPARQL em SQL; – -ontopPro-, um plug-in para Protégé. • O Gryphon suporta o SPARQL 1.1, a última versão da linguagem que traz melhorias fundamentais, e.g., funções agregadas, subconsultas, negação, caminhos de propriedade e novos comandos. 33 Trabalhos Relacionados Comparação com -ontop-
  • 34. cin.ufpe.br Sumário 1. Introdução 2. Referencial Teórico 3. Arquitetura Proposta 4. Implementação 5. Experimentos (com demonstração) 6. Trabalhos Relacionados 7. Conclusões 34
  • 35. cin.ufpe.br Conclusões • Foi criada uma arquitetura, juntamente com uma implementação, capaz de realizar integrações semânticas entre ontologias e bancos de dados; – Utilizando alinhamentos e mapeamentos para possibilitar a reescrita de consultas em diferentes linguagens (e.g., SPARQL e SQL). • Este trabalho é pioneiro na integração simultânea entre estas duas tecnologias; • É possível utilizar esta arquitetura (e implementação) em diversos cenários e domínios; • Com o advento da Web Semântica, a necessidade de integrar fontes de dados heterogêneos está sendo cada vez mais frequente; • Foram realizados dois experimentos com domínios e propósitos diferentes. 35
  • 36. cin.ufpe.br Conclusões Limitações • A edição de alinhamentos e mapeamentos não está integrada com o Gryphon Framework; • Não permite a integração de ontologias distribuídas pela internet; • Os mapeamentos gerados pelo D2RQ não são tão precisos quanto os alinhamentos gerados pelo AML. 36
  • 37. cin.ufpe.br Conclusões Trabalhos Futuros • Realizar testes comparativos entre as plataformas -ontop- e o D2RQ; – Caso o -ontop- se mostre superior ao D2RQ, seria válido substituir as plataformas. • Criação de uma interface (web ou desktop) para facilitar a integração; – O usuário poderia informar quem seria a ontologia global, e quais seriam as ontologias e/ou bancos de dados locais; – Feito isso, seria realizado o alinhamento e mapeamento automaticamente e haveria a possibilidade do usuário editá-los. • Estender a arquitetura para suportar integração de bancos de dados não relacionais (NoSQL), e.g., MongoDB, Cassandra, Redis ou Neo4J; • Implementar algoritmos de aprendizado de máquina; – Treinar o Gryphon Framework para realizar alinhamentos e mapeamentos cada vez mais preciso com base em experiências anteriores. 37