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?