Matching de Esquemas: 10 anos depois Nicolle Chaves Cysneiros Roteiro 1. O Matching de Esquemas i. Definição ii. Aplicações 2. Principais técnicas de Matching 3. Novas técnicas desenvolvidas 4. Ferramentas i. COMA++ ii. SemMatcher: um Matcher Semântico 5. Tendências Futuras O Matching de Esquemas É uma operação de manipulação de esquemas, onde dois esquemas S1 e S2 são passados como parâmetro, e o mapeamento entre os elementos dos dois esquemas é gerado. Aplicações Integração de Esquemas Data Warehouse E-commerce Processamento de Consultas Principais Técnicas de Matching Tipo de Informações – Baseados em Esquema Livro id primaryKey Obra no primaryKey titulo varchar nome_livro varchar editora varchar nome_autor varchar double espec_autor varchar valorFinal idAutor foreignKey Autor id primaryKey nome varchar sobrenome varchar especialidade varchar valor double desconto double no_editora foreignKey Editora no nome primaryKey varchar Principais Técnicas de Matching Granularidade – Nível Elementos Livro id primaryKey Obra no primaryKey titulo varchar nome_livro varchar editora varchar nome_autor varchar double espec_autor varchar valorFinal idAutor foreignKey Autor id primaryKey nome varchar sobrenome varchar especialidade varchar valor double desconto double no_editora foreignKey Editora no nome primaryKey varchar • Nível atômico: Livro.titulo ≅ Obra.nome_livro • Níveis maiores: Livro ≅ Obra Principais Técnicas de Matching Granularidade – Nível Estrutura Livro id primaryKey Obra no primaryKey titulo varchar nome_livro varchar editora varchar nome_autor varchar double espec_autor varchar valorFinal idAutor foreignKey Autor id primaryKey nome varchar sobrenome varchar especialidade varchar valor double desconto double no_editora foreignKey Editora no nome primaryKey varchar • Matching Parcial: Livro ≅ Obra • Padrões de Equivalência: Livro.editora ≅ Editora Principais Técnicas de Matching Cardinalidade Livro id primaryKey • 1:1 Obra.nome_livro ≅ Livro.titulo Obra no primaryKey titulo varchar nome_livro varchar editora varchar nome_autor varchar double espec_autor varchar valorFinal idAutor foreignKey Autor id primaryKey nome varchar sobrenome varchar especialidade varchar valor double desconto double no_editora foreignKey Editora no nome primaryKey • n:1 Obra.valor, Obra.desconto Livro.valorFinal ≅ • 1:n ≅ Obra.nome_autor Autor.nome, Autor.sobrenome varchar • n:m ≅ Obra.nome_autor, Obra.espec_autor Autor.nome, Autor.sobrenome, Autor.especialidade Principais Técnicas de Matching Abordagem Linguística Livro id primaryKey Obra no primaryKey titulo varchar nome_livro varchar editora varchar nome_autor varchar double espec_autor varchar valorFinal idAutor foreignKey Autor id primaryKey nome varchar sobrenome varchar especialidade varchar valor double desconto double no_editora foreignKey Editora no nome primaryKey varchar • Uso de dicionários Obra.espec_autor ≅ Autor.especialidade Principais Técnicas de Matching Abordagem de Restrições Livro id primaryKey Obra no primaryKey titulo varchar nome_livro varchar editora varchar nome_autor varchar double espec_autor varchar valorFinal idAutor foreignKey Autor id primaryKey nome varchar sobrenome varchar especialidade varchar valor double desconto double no_editora foreignKey Editora no nome primaryKey varchar • Chave Primária Obra.no ≅ Livro.id Principais Técnicas de Matching Tipo de Informações – Baseado em Instâncias Útil para o tratamento de dados semi-estruturados Utilizado para consertar ambiguidades e erros de interpretação Faz uso de abordagens inteligentes, como: Regras Lógicas Redes Neurais Aprendizagem de Máquina Principais Técnicas de Matching Combinação de Matchers Matchers Híbridos Matchers Compostos Principais Técnicas de Matching Novas Técnicas Tipo de Informações Matching de Grafos Histórico de Uso Combinação de Matchers Pruning do Espaço de Busca Matching em Paralelo Interação com Usuário Validação Interativa Colaboração entre Usuários Novas Técnicas Extensão da Semântica Adicionar uma “tag” à correspondência indicando: Equivalência Agregação Generalização Especialização Proximidade Ferramentas COMA++ COMA++ SemMatcher SemMatcher SemMatcher SemMatcher SemMatcher Tendências Futuras Reutilização de Mapeamentos Manter o reuso das expressões semânticas Análise coletiva de esquemas conhecidos Mais facilidade na interação do usuário Combinação do matching de metadado e matching de instâncias Referências Madhavan, J., & Bernstein, P. A. (2001). Generic Schema Matching with Cupid. Bernstein, P. a, Madhavan, J., & Rahm, E. (2011). Generic Schema Matching , Ten Years Later. Pvldb, 4(11), 695–701. Rahm, E., & Bernstein, P. a. (2001). A survey of approaches to automatic schema matching. VLDB Journal, 10(4), 334–350. Aumueller, D., Do, H. H., Massmann, S., & Rahm, E. (2005, June). Schema and ontology matching with COMA++. In Proceedings of the 2005 ACM SIGMOD international conference on Management of data (pp. 906-908). ACM. Pereira, T. (2008). Mapeamento Semântico de Ontologias no SPEED. Recife. Dúvidas?