Interest Areas
P2P Databases, Ontologies, Decision Support Systems, Database Tuning, Data Mining, Open Source Databases, Schema Matching, Schema Summarization, Data Cleansing

Schema Matching é o processo de identificação de correspondências entre elementos de dois esquemas de bancos de dados distintos. Um elemento é uma entidade, um relacionamento ou um atributo. No mundo relacional, por exemplo, uma entidade é uma relação, um atributo é um campo e um relacionamento é uma ligação FK -> PK. Para identificação das correspondências, podem ser utilizados algoritmos (matchers) que levam sem consideração a sintaxe, a estrutura, a semântica e/ou os dados dos esquemas. Em sistemas de integração de fontes de dados, o uso das correspondências é importante para o processamento de consultas, isto é, as correspondências são utilizadas durante o processo de reescrita de consultas.

Referências
[1] C. Batini, M. Lenzerini, and S. Navathe, "A Comparative Analysis of Methodologies for Database Schema Integration", in ACM Computing Surveys, vol. 18, issue 4, pp. 323-364, 1986.
[2] J. Euzenat and P. Shvaiko, Ontology Matching. Springer-Verlag, Heidelberg, 2007.
[3] E. Rahm and P. A. Bernstein, "A Survey of Approaches to Automatic Schema Matching", in VLDB Journal, vol. 10, issue 4, pp. 334-350, 2001.
[4] C. E. Pires, D. Souza, T. Pachêco, and A. C. Salgado, "A Semantic-Based Ontology Matching Process for PDMS", in Globe'09, 2009, pp. 124-135.

Schema Summarization é o processo de gerar um esquema de banco de dados sucinto a partir de um esquema correspondente maior. O esquema resumido deve representar da melhor maneira possível o esquema original e, para isso, deve conter seus principais elementos. Em geral, os esquemas de banco de dados podem apresentar centenas de elementos, o que torna difícil sua compreensão pelos usuários, especialmente por aqueles que estão visualizando o esquema pela primeira vez. Uma solução é apresentar um esquema resumido. Inclusive, este esquema resumido pode ser usado no processo de schema matching, fazendo com que as operações de matching sejam realizadas com esquemas menores e representativos.

Referências
[1] C. Yu and H. V. Jagadish, "Schema Summarization", in Proc. VLDB'06, 2006, pp. 319-330. [Website]

[2] X. Yang, C. M. Procopiuc, and D. Srivastava, "Summarizing Relational Databases", in Proc. VLDB'09, 2009, pp. 634-645.
[3] C. E. S. Pires, P. Sousa, Z. Kedad, and A. C. Salgado, "Summarizing Ontology-based Schemas in PDMS", in DESWEB'10, 2010, pp. 239-244.
[4] S. Castano, V. Antonellis, M. G. Fugini, and B. Pernici, "Conceptual Schema Analysis: Techniques and Applications", ACM Transactions on Database Systems, vol. 23, pp. 286-333, Sep. 1998.
[5] C. Yu, D. A. Hanauer, B. D. Athey, H. V. Jagadish, and D. J. States, "Simplifying Access to a Clinical Data Repository using Schema Summarization", in AIMA'07, 2007, p. 1163
[6] R. Diestel, Graph Theory, 3rd ed., Springer-Verlag, Heidelberg, 2005.
[7] X. Zhang, G. Cheng, and Y. Qu, "Ontology Summarization Based on RDF Sentence Graph", in WWW'07, 2007, pp. 707-716.
[8] H. Stuckenschmidt and M. Klein, "Structure-Based Partitioning of Large Concept Hierarchies", in ISWC'04, 2004, pp. 289-303.

Schema Search é o processo de pesquisar por esquemas (ou fragmentos de esquemas) armazenados em grandes repositórios de esquemas, com o objetivo de reutilizar um determinado esquema encontrado. Para otimizar a pesquisa, os esquemas armazenados devem estar indexados. A pesquisa pode ser realizada fornecendo uma palavra-chave ou mesmo um esquema ainda incompleto. No segundo caso, técnicas de schema matching devem ser utilizadas durante a pesquisa. Os esquemas encontrados devem ser apresentados em ordem de relevância e visualizados graficamente de modo a facilitar a compreensão pelo usuário.

Referências
[1] K. Chen, J. Madhavan, and A. Halevy, "Exploring Schema Repositories with Schemr", in SIGMOD'09, 2009.
[2] S. Castano, V. Antonellis, M. G. Fugini, and B. Pernici, "Conceptual Schema Analysis: Techniques and Applications", ACM Transactions on Database Systems, vol. 23, pp. 286-333, Sep. 1998.

Data Cleansing (ou ainda, data cleaning, data scrubbing ou data reconciliation) é o processo de detecção e correção de anomalias nos dados com o objetivo de aumentar/melhorar a sua qualidade. As anomalias referem-se a dados incorretos, inconsistentes e ausentes, e podem ser tratadas de acordo com diferentes níveis de granularidade como, por exemplo, atributo, tupla ou relação(ões).

Referências
[1] M. P. S. Silva, "Mineração de Dados - Conceitos, Aplicações e Experimentos com Weka", in Escola Regional de Informática RJ/ES, v. 1, pp. 19-21. Sociedade Brasileira de Computação, 2004.
[2] S. Amo, "Técnicas de Mineração de Dados", XXIV Congresso da Sociedade Brasileira de Computação. Jornada de Atualização em Informatica, 2004.
[3] P. Oliveira, F. Rodrigues, and P. R. Henriques, "Limpeza de dados: Uma visão geral", in O. Belo, A. Lourenço, and R. Alves, editors, Data Gadgets 2004 Int. Workshop - Bringing Up Emerging Solutions for Data Warehousing Systems, pages 39-51, Málaga, Espanha, Nov 2004.
[4] P. Oliveira, "Detecção e Correcção de Problemas de Qualidade dos Dados: Modelo, Sintaxe e Semântica". PhD thesis, Universidade do Minho, Escola de Engenharia, 2008.
[5] H. Köpcke and E. Rahm, "Frameworks for entity matching: A comparison". Journal of Data & Knowledge Engineering, 69(2), February, 2010.