Contribuições à
Especificação Formal de Bancos de Dados
Marco A. Casanova
Departamento de Informática, PUC-Rio
Tópicos
• Década de 80
– Estado-da-Arte em 1980 – Contribuições
• Últimos 5 anos
– O que mudou entre 1980 e 2010?
– Estado-da-Arte em 2010 – Contribuições
• Próximos anos…
Década de 80
Estado-da-Arte em 1980
• Cenário da área no começo da década de 80
– Modelo relacional
• Criado em 1970 por Ted Codd
– Codd recebe o ACM Turing Award em 1981
• Teoria desenvolvida no final da década de 70
– Sistemas de bancos de dados relacionais
• Tecnologia sólida
– Jim Gray recebe o ACM Turing Award em 1998
• Versões comerciais disponíveis no meio da década
Estado-da-Arte em 1980
• Esquema relacional
Aluno AMatr ANome A1 Maria A2 Pablo A3 Joaquim Prof PMatr PNome PEnd CEP
P1 João RCL, 80 22793-329 P2 Manoel RLG, 40 22793-400
Estado-da-Arte em 1980
• Dependências Funcionais (FDs)
Aluno AMatr ANome A1 Maria A2 Pablo A3 Joaquim
PMatr → PNome, PEnd, CEP AMatr → ANome
Prof PMatr PNome PEnd CEP P1 João RCL, 80 22793-329 P2 Manoel RLG, 40 22793-400
Estado-da-Arte em 1980
• Dependências Funcionais (FDs)
Aluno AMatr ANome A1 Maria A2 Pablo A3 Joaquim
PMatr → PNome, PEnd, CEP AMatr → ANome
Prof PMatr PNome PEnd CEP P1 João RCL, 80 22793-329 P2 Manoel RLG, 40 22793-400
PEnd → CEP
Estado-da-Arte em 1980
• Implicação lógica para FDs
Estado-da-Arte em 1980
• Implicação lógica para FDs
Estado-da-Arte em 1980
• Implicação lógica para FDs
Estado-da-Arte em 1980
• Implicação lógica para FDs
Sim / Não
Estado-da-Arte em 1980
• Implicação lógica para FDs
Sim / Não
Estado-da-Arte em 1980
• Implicação lógica para FDs
– O problema da implicação lógica para FDs é decidível em tempo linear
Sim / Não
Estado-da-Arte em 1980
• Implicação lógica para FDs
– O problema da implicação lógica para FDs é decidível em tempo linear
– Implicação lógica finita = implicação lógica irrestrita Sim / Não
Estado-da-Arte em 1980
• Esquema relacional
Prof PMatr PNome P1 João P2 Manoel
Aluno AMatr ANome A1 Maria A2 Pablo A3 Joaquim
Estado-da-Arte em 1980
• Esquema relacional
Prof PMatr PNome P1 João P2 Manoel
Aluno AMatr ANome A1 Maria A2 Pablo A3 Joaquim Orienta PMatr AMatr
P1 A1 P1 A3
Estado-da-Arte em 1980
• Relação Universal
Prof PMatr PNome P1 João P2 Manoel
Aluno AMatr ANome A1 Maria A2 Pablo A3 Joaquim Orienta PMatr AMatr
P1 A1 P1 A3
U PMatr PNome AMatr ANome
P1 João A1 Maria
P1 João A3 Joaquim
PMatr →PNome AMatr → ANome
Tópicos
• Década de 80
– Estado-da-Arte em 1980 – Contribuições
• Últimos 5 anos
– O que mudou entre 1980 e 2010?
– Estado-da-Arte em 2010 – Contribuições
• Próximos anos…
Contribuições
• Esquema relacional
Prof PMatr PNome P1 João P2 Manoel
Aluno AMatr ANome A1 Maria A2 Pablo A3 Joaquim Orienta PMatr AMatr
P1 A1 P1 A3
Contribuições
• Esquema relacional
Prof PMatr PNome P1 João P2 Manoel
Aluno AMatr ANome A1 Maria A2 Pablo A3 Joaquim Orienta PMatr AMatr
P1 A1 P1 A3
Prof: PMatr → PNome Aluno: AMatr → ANome
Contribuições
• Esquema relacional
Prof PMatr PNome P1 João P2 Manoel
Aluno AMatr ANome A1 Maria A2 Pablo A3 Joaquim Orienta PMatr AMatr
P1 A1 P1 A3
Prof: PMatr → PNome Aluno: AMatr → ANome
Orienta[PMatr] ⊆ Prof[PMatr] Orienta[AMatr] ⊆ Aluno[AMatr]
Contribuições
• Esquema relacional
– Esquemas de relação
– Restrições de Integridade
• Dependências funcionais (FDs)
• Dependências de inclusão (INDs)
• Exemplo
Prof[PMatr,PNome]
Orienta[PMatr, AMatr]
Aluno[AMatr,ANome]
Prof: PMatr →PNome Aluno: AMatr → ANome
Orienta[PMatr] ⊆ Prof[PMatr]
Orienta[AMatr] ⊆ Aluno[AMatr]
R[A1,...,An]
R: X →Y
R[U] ⊆ S[V]
Contribuições
• Implicação lógica para INDs
Sim / Não
Contribuições
• Implicação lógica para INDs
– O problema da implicação lógica para INDs é PSPACE-complete
Casanova, M.A., Fagin, R., Papadimitriou, C.H.: Inclusion Dependencies and Their Interaction with Functional Dependencies.
J. Comput. Syst. Sci. 28(1): 29-59 (1984) doi:10.1016/0022-0000(84)90075-8
Sim / Não
Contribuições
• Implicação lógica para INDs
– O problema da implicação lógica para INDs é PSPACE-complete
Sim / Não
Contribuições
• Implicação lógica para FDs e INDs
Contribuições
• Implicação lógica para FDs e INDs
– Implicação lógica finita ≠ implicação lógica irrestrita
Contribuições
• Implicação lógica para FDs e INDs
– Implicação lógica finita ≠ implicação lógica irrestrita
– Não existe um sistema axiomático consistente, completo e k-ário
para FDs e INDs
Contribuições
• Implicação lógica para FDs e INDs
– Implicação lógica finita ≠ implicação lógica irrestrita
– Não existe um sistema axiomático consistente, completo e k-ário
para FDs e INDs
• Demonstração explora as interações entre FDs e INDs
• Resultado vale para implicação lógica finita
Contribuições
• Resumo
– Implicação lógica para FDs e INDs é um problema intratável
Contribuições
• Resumo
– Implicação lógica para FDs e INDs é um problema intratável
• Pergunta
– “Quais subclasses de FDs e INDs são necessárias para projeto de bancos de dados relacionais?”
• Outros Resultados
– Critérios de correção para mapeamentos otimizados de esquemas conceituais ER para esquemas relacionais
Resumo
• Computabilidade x Expressividade
Resumo
• Computabilidade x Expressividade
FDs
Resumo
• Computabilidade x Expressividade
FDs
FDs e INDs
Resumo
• Computabilidade x Expressividade
FDs
FDs e INDs FDs
e INDs restritas
Últimos 5 anos
(2010 - 2014)
Tópicos
• Década de 80
– Estado-da-Arte em 1980 – Contribuições
• Últimos 5 anos
– O que mudou entre 1980 e 2010?
– Estado-da-Arte em 2010 – Contribuições
• Próximos anos…
O que mudou entre 1980 e 2010?
• Resposta
– A diversidade do uso de bancos de dados
• de física de alta energia aos dados pessoais de cada um…
O que mudou entre 1980 e 2010?
• Resposta
– A diversidade do uso de bancos de dados
– O volume de dados gerados, armazenados e tratados
• Petabytes tornou-se um termo comum…
(1 PB = 1.000.000.000.000.000 B = 1015 bytes = 1.000 terabytes)
O que mudou entre 1980 e 2010?
• Resposta
– A diversidade do uso de bancos de dados
– O volume de dados gerados, armazenados e tratados – A criação e popularização da Web
O que mudou entre 1980 e 2010?
• Resposta
– A diversidade do uso de bancos de dados
– O volume de dados gerados, armazenados e tratados – A criação e popularização da Web
• Há muito mais dados armazenados em bancos de dados na Web do que em páginas na Web
• Há centenas de milhões de tabelas codificadas em páginas na Web
• Problemas
– Os dados disponíveis na Web são tipicamente opacos aos mecanismos de indexação e busca da Web
– As páginas Web não têm significado explícito
• Consequência
– Os dados disponíveis na Web são difíceis de localizar, acessar e integrar
O que mudou entre 1980 e 2010?
Tópicos
• Década de 80
– Estado-da-Arte em 1980 – Contribuições
• Últimos 5 anos
– O que mudou entre 1980 e 2010?
– Estado-da-Arte em 2010 – Contribuições
• Próximos anos…
• Web-de-Dados
– RDF adotado como modelo de dados
– Dados descritos por ontologias conhecidas
... facilitam localizar, acessar e integrar dados na Web – Formalização baseada em Lógica de Descrição
Estado-da-Arte em 2010
OWL 2.0 ≡ DL-LitecoreN,H
Sir Timothy John Berners-Lee, OM, KBE
• Web-de-Dados
– RDF adotado como modelo de dados
– Dados descritos por ontologias conhecidas
... facilitam localizar, acessar e integrar dados na Web – Formalização baseada em Lógica de Descrição
Estado-da-Arte em 2010
OWL 2.0 DL-LiteN,H
Sir Timothy John Berners-Lee, OM, KBE
Estado-da-Arte em 2010
• Pergunta
– Como uma aplicação pode acessar dados armazenados em um ou mais bancos de dados?
Interface
Motor de Busca
Interface Interface
Aplicação
Estado-da-Arte em 2010
• Pergunta
– Como uma aplicação pode acessar dados armazenados em um ou mais bancos de dados?
• Resposta
– “Alinhando (automaticamente) o seu esquema conceitual aos esquemas dos bancos de dados”
Estado-da-Arte em 2010
• Problema
– Alinhamento (automático) de esquemas
é um problema intratável
Bruegel, Pieter. The Tower of Babel. c 1563 Oil on oak panel. 114 x 155 cm
Kunsthistorisches Museum Wien, Vienna
Estado-da-Arte em 2010
• Problema
– Alinhamento (automático) de esquemas
é um problema intratável
• Solução da Web-de-Dados
– Dados devem ser descritos por ontologias conhecidas
de tal forma que alinhamento de esquemas torne-se um não-problema
Bruegel, Pieter. The Tower of Babel. c 1563 Oil on oak panel. 114 x 155 cm
Kunsthistorisches Museum Wien, Vienna
Estado-da-Arte em 2010
• Exemplo – Banco de Dados sobre a Janis Joplin
– Artistas – Cantoras
– Grupos Musicais – Gravadoras
Estado-da-Arte em 2010
• Exemplo – Banco de Dados sobre a Janis Joplin
Cantora IDC CNome IDG C1 JJ G2 C2 AW -
Grupo IDG GNome G1 BBHC G2 CT Gravadora IDR RNome
Artista IDA IDR C1 R2 C2 R1 G1 - G2 R2
Estado-da-Arte em 2010
• Exemplo – Banco de Dados sobre a Janis Joplin
Cantora IDC CNome IDG C1 JJ G2 C2 AW -
Grupo IDG GNome G1 BBHC G2 CT
Gravadora IDR RNome R1 EMI
R2 Columbia Artista IDA IDR
C1 R2 C2 R1 G1 - G2 R2
Estado-da-Arte em 2010
• Exemplo – Banco de Dados sobre a Janis Joplin
– Especificado com base na Music Ontology
Estado-da-Arte em 2010
• Exemplo – Banco de Dados sobre a Janis Joplin
– Especificado com base na Music Ontology
Estado-da-Arte em 2010
• Exemplo – Banco de Dados sobre a Janis Joplin
Estado-da-Arte em 2010
• Exemplo – Banco de Dados sobre a Janis Joplin
– Especificado com base na Music Ontology
– Uma aplicação que use a Music Ontology como esquema alinhará trivialmente o seu esquema com
o esquema do banco de dados sobre a Janis Joplin
– Uma aplicação que use a Music Ontology como esquema poderá acessar o banco de dados sobre a Janis Joplin
Tópicos
• Década de 80
– Estado-da-Arte em 1980 – Contribuições
• Últimos 5 anos
– O que mudou entre 1980 e 2010?
– Estado-da-Arte em 2010 – Contribuições
• Próximos anos…
Contribuições
• Solução da Web-de-Dados
– Dados descritos por ontologias conhecidas de tal forma que
alinhamento de esquemas torne-se um não-problema
• Problema
– Como computar as restrições do banco de dados a partir das restrições das ontologias escolhidas?
Bruegel, Pieter. The Tower of Babel. c 1563 Oil on panel. 60 × 74.5 cm
Museum Boijmans Van Beuningen, Rotterdam, Netherlands
Contribuições
• Ontologias Leves
DL-Lite Core with Arbitrary Number Restrictions - DL-LitecoreN
DL-LitecoreN,H
Contribuições
• Implicação lógica para Ontologias Leves
– Procedimento de decisão estrutural
…com complexidade O(n3)
Casanova, M.A., Lauschner, T., Leme, L.A.P.P., Breitman, K.K., Furtado, A.L., Vidal, V.M.P.: Revising the constraints of lightweight mediated schemas. Data Knowl. Eng. 69(12): 1274-1301 (2010) doi:10.1016/j.datak.2010.10.005
Sim / Não
Contribuições
• Álgebra de ontologias leves
– Operações criam novas ontologias, incluindo as restrições de integridade, a partir de outras ontologias
Restrições Restrições
Restrições
Operação
Contribuições
• Álgebra de ontologias leves
Operação Pergunta
União, Projeção, Remoção Como especificar um banco de dados na Web?
Interseção Como especificar um esquema mediado?
Interseção Diferença
Como comparar duas ontologias?
Casanova, M.A., Macedo, J.A.F., Sacramento, E., Pinheiro, A., Vidal, V.M.P., Breitman, K.K., Furtado, A.L.: Operations over Lightweight
Ontologies. Proc. 11th International Conference on Ontologies, DataBases, and Applications of Semantics - ODBASE 2012 (Sept. 11-12, 2012), Rome. LNCS 7566, pp. 646–663. doi:10.1007/978-3-642-33615-7_14
Contribuições
• Exemplo – Banco de Dados sobre a Janis Joplin
– Artistas – Cantoras
– Grupos Musicais – Gravadoras
Contribuições
• Exemplo – Banco de Dados sobre a Janis Joplin
– Especificado como uma projeção da Music Ontology
Restrição Especificação Informal
Restrição Especificação Informal
Contribuições
• Exemplo – Banco de Dados sobre a Janis Joplin
Resumo
• Computabilidade x Expressividade
DL-LitecoreN,H
( OWL 2.0 )
Resumo
• Computabilidade x Expressividade
DL-LitecoreN,H DL-Litecore
Resumo
• Computabilidade x Expressividade
DL-LitecoreN,H DL-Litecore DL-LitecoreN
Resumo
• Computabilidade x Expressividade
DL-LitecoreN,H DL-LitecoreN
DL-Litecore
Resumo
• Computabilidade x Expressividade
Procedimento de decisão estrutural (sob implicação lógica irrestrita) DL-LitecoreN,H
DL-LitecoreN DL-Litecore
Próximos anos…
• Pergunta
– O que mudou entre 1980 e 2010?
• Resposta
– A diversidade do uso de bancos de dados
– O volume de dados gerados, armazenados e tratados – A criação e popularização da Web
(Flashback)
Direções de Pesquisa
• ... do ponto de vista prático
– Rever a forma de
especificar bancos de dados a serem publicados na Web – Automatizar
a descrição de bancos de dados existentes na Web
BEHAIM-GLOBUS Martin Behaim, 1491-1494 Germanische Nationalmuseum
Direções de Pesquisa
• ... do ponto de vista formal
– Tratar o problema de integração de dados inconsistentes
– Estender o procedimento de decisão estrutural
para tratar igualdade
– Investigar procedimentos de decisão estruturais sob implicação lógica finita
Martin Waldseemüller (1470–1521)
Universalis Cosmographia Secundum Ptholomaei
Traditionem et Americi Vespucii Alioru[m]que Lustrationes [St. Dié], 1507
Geography and Map Division, Library of Congress
Agradecimentos
Currículo Lattes
http://lattes.cnpq.br/0400232298849115
7 livros
14 capítulos de livros
48 artigos completos publicados em periódicos
197 trabalhos completos publicados em anais de conferências 15 resumos publicados em anais de conferências
11 resumos expandidos publicados em anais de conferências 14 teses de doutorado orientadas
53 dissertações de mestrado orientadas
29 trabalhos finais de graduação orientados
Currículo Lattes
http://lattes.cnpq.br/0400232298849115
7 livros
14 capítulos de livros
48 artigos completos publicados em periódicos
197 trabalhos completos publicados em anais de conferências 15 resumos publicados em anais de conferências
11 resumos expandidos publicados em anais de conferências 14 teses de doutorado orientadas
53 dissertações de mestrado orientadas
29 trabalhos finais de graduação orientados 228 coautores