UFSC-CTC-INE
Grupo de Banco de Dados da UFSC
Tópicos de Pesquisa e
Desenvolvimento no
GBD-UFSC
Ronaldo S. Mello
Março/2006
Tópicos de Pesquisa Atuais
• Integração de Dados (semi-estruturados XML)
• Gerência de Dados XML
• Ferramentas de Apoio à Gerência de
Dados
Tópicos de Pesquisa Atuais
• Integração de Dados (semi-estruturados XML)
• Gerência de Dados XML
• Ferramentas de Apoio à Gerência de
Dados
Integração de Dados (XML)
• Motivações
– disponibilidade crescente de dados XML na Web
• formato simples para publicação e transferência
– formato texto
• muitos dados são redundantes e/ou complementares
– interessante ter uma visão única e integrada desses dados
» bom para máquinas de busca
» bom para aplicações Web que transferem dados XML
– Web Semântica
• visão da Web como um grande BD!
– BDs relacionais ou XML Distribuídos
• lidam com fragmentos XML redundantes
Integração de Dados (XML)
• Sub-Tópicos de Pesquisa
– BInXS
– Esquemas GML
– Projeto DIGITEX (em parceria com UFRGS)
BInXS
• BInXS é uma sigla para
– Bottom-up Integration of XML Schemata
• Abordagem de integração semântica de
esquemas de fontes de dados XML
– define um processo composto por 2 etapas
– pode ser considerado em um ambiente mais
amplo de mediação de fontes XML na Web
• componente de uma arquitetura mediador-wrapper
BInXS – Principais Contribuições
• Abordagem bottom-up
– gera, de forma semi-automática, um esquema global a
partir dos esquemas XML das fontes locais
• considera todos os dados presentes em todas as fontes
• Representações conceituais de esquemas XML
– esquemas canônicos e global são conceituais
• alto nível de abstração para os dados XML
• Estratégia de unificação específica para XML
– leva em conta as características semi-estruturadas dos
dados XML
BInXS - Processo
Esquema
Global
BInXS
Unificação
Esquema Conceitual 1
...
BDs Terminológicas
Esquema Conceitual n
Usuário Especialista
Conversão
Esquema
XML 1
...
Conversão
...
Documentos
XML
Documentos
XML
Esquema
XML n
BInXS - Processo
Esquema
Global
BInXS
Unificação
Esquema Conceitual 1
...
BDs Terminológicas
Esquema Conceitual n
Usuário Especialista
Conversão
Esquema
XML 1
...
Conversão
...
Documentos
XML
Documentos
XML
Esquema
XML n
BInXS – Etapa de Conversão
• Baseado em um conjunto de regras para
mapeamento de construtores do modelo XML
para construtores do modelo conceitual
• Documentos XML (instâncias) são também
analisados
– objetivo: gerar, de forma automática, um esquema
conceitual preliminar mais próximo de um esquema
exato
• Modelo conceitual de dados escolhido: ORM
– correspondência mais próxima com o modelo XML
• elemento complexo  conceito não-léxico
• elemento simples ou atributo  conceito léxico
• todas as associações entre dados no modelo XML (elementoelemento, elemento-atributo, referências, ...) são facilmente
mapeáveis para associações no modelo ORM
Modelos Considerados na Conversão
(1,1)
(1,N)
(0,1)
Título
Esquema XML em DTD
Categoria
Livro
(0,1)
Autor
Ano
(1,1)
Endereço
(1,1)
(1,N)
(1,1)
Nome
<!ELEMENT Livro (Título, Ano?,
Autor+)>
<!ATTLIST Livro Categoria CDATA
(técnico | ficção)>
<!ELEMENT Autor (Nome,
(Universidade+ | Empresa), ...)>
<!ELEMENT Nome (#PCDATA)
...
Universidade
Empresa
Modelo XML
(1,1)
(1,1)
Ano
(0,1)
(1,N)
integer
Modelo ORM
Livro
(1,N) (1,N)
Nome
(1,N)
string
(1,N)
Autor
Universidade
string
(1,N)
(1,N)
(1,1)
residencial
(0,1)
string
Categoria
{técnico, ficção}
(1,N)
comercial
(1,1)
Endereço
(1,N)
(1,1)
Empresa
string
Conversão de Elemento Complexo
<!ELEMENT Publicação (Ano?,...,Autor+,...,Livro?)>
Publicação
Conversão de Elemento Simples
<!ELEMENT Publicação (Ano?,...,Autor+,...,Livro?)>
<!ELEMENT Ano(#PCDATA)>
Publicação
análise de docs XML
Ano
integer
default:
string
Conversão de Componentes
<!ELEMENT Publicação (Ano?,...,Autor+,...,Livro?)>
<!ELEMENT Ano(#PCDATA)>
análise de docs XML
Publicação
default:
(1,N)
(1,N)
(0,1)
regras de
cardinalidade
Ano
integer
Conversão de Representações Alternativas
<!ELEMENT Publicação (Ano?,...,Autor+,...,Livro?)>
<!ELEMENT Ano(#PCDATA)>
<!ELEMENT Autor(Nome,(Universidade+ | Empresa), ...)>
Publicação
(1,N)
(1,N)
(1,N)
(0,1)
Ano
integer
Autor
(1,N)
(1,N)
Universidade
string
(1,N)
(1,1)
Empresa
string
Deifinição de Relações de Especialização
<!ELEMENT Publicação (Ano?,...,Autor+,...,Livro?)>
<!ELEMENT Ano(#PCDATA)>
<!ELEMENT Autor(Nome,(Universidade+ | Empresa), ...)>
consulta a BDs terminológicas
Publicação
<Publicação IS-A Livro>
(1,N)
(1,N)
(1,N)
(0,1)
Ano
integer
Livro
Autor
(1,N)
(1,N)
Universidade
string
(1,N)
(1,1)
Empresa
string
Conversão de Atributos
<!ELEMENT Publicação (Ano?,...,Autor+,...,Livro?)>
<!ELEMENT Ano(#PCDATA)>
<!ELEMENT Autor(Nome,(Universidade+ | Empresa), ...)>
<!ATTLIST Livro Categoria CDATA #REQUIRED (técnico |
ficção)>
Publicação
(1,N)
(1,N)
integer
(0,1)
(1,N)
Ano
Autor
(1,N)
(1,1)
string
Categoria
{técnico, ficção}
Livro
(1,N)
(1,N)
Universidade
string
(1,N)
(1,1)
Empresa
string
Conversão de Elementos Mistos
...
<!ELEMENT Livro (Editora,...,Capítulo+,...)>
<!ELEMENT Capítulo (Seção | #PCDATA)*>
Livro
(1,1)
(1,N)
Capítulo
(1,1)
(0,N)
Seção
(1,1)
(0,N)
Capítulo-Texto
string
BInXS – Dados de Mapeamento
• Dados gerados durante a conversão
• Expressões XPath
– indicam o caminho até o dado XML na fonte local
– permitem a localização de dados nas fontes XML a
partir do esquema global
– definem mapeamento para conceitos e
relacionamentos
Fonte XML 1:
• Exemplos
Livro
(1,1)
(1,N)
Fonte XML 1:
Capítulo
/publicação/livro
Fonte XML 2:
/acervo/midiaImpressa/livro
LivroCapítulo: conteúdo/capítulo
CapítuloLivro: . . / . .
Fonte XML 2:

Fonte XML 1:
/publicação/livro/conteúdo/capítulo
Fonte XML 2:

BInXS – Catálogo
• Definição em OWL (Ontology Web Language)
– recomendação atual da W3C para descrição de
ontologias e esquemas conceituais de dados
• Exemplo
Livro
(1,1)
(1,N)
Capítulo
<Class ID = “Livro”>
<subClassOf resource = “NonLexicalConcept”/>
<subClassOf>
<restriction>
<onProperty resource = “#RelatedConcept”>
<toClass>
<UnionOf parseType = “collection”>
<Thing about = “#LivroCapitulo”>
...
</UnionOf>
</toClass>
</onProperty>
...
</restriction>
</subClassOf>
</Class>
BInXS - Processo
Esquema
Global
BInXS
Unificação
Esquema Conceitual 1
...
BDs Terminológicas
Esquema Conceitual n
Usuário Especialista
Conversão
Esquema
XML 1
...
Conversão
...
Documentos
XML
Documentos
XML
Esquema
XML n
BInXS – Etapa de Unificação
•
•
Geração de um esquema conceitual global a
partir dos esquemas conceituais locais
Etapas tradicionais da integração de esquemas
de BDs são aplicadas
1. Comparação de Esquemas
–
agrupa conceitos ORM em clusters de afinidade
–
apoio de BDs Terminológicas para determinar esses clusters
2. “Casamento” (Unificação propriamente dita)
–
–
gera um conceito global para cada cluster de afinidade
trata 3 casos de unificação: LxL, NLxNL e NLxL
3. Reestruturação
–
executa ajustes manuais e automáticos no esquema global

remoção de relacionamentos redundantes, generalização de
conceitos, ...
Casos de Unificação
Caso
LxL
NL x NL
Tipo de
Conceito no
Cluster
Corresponde ao
“casamento” de
Resultado
somente
léxico
conteúdo XML atômico conceito global léxico
somente
não-léxico
conteúdo XML
estruturado (elemento
(atributo, elemento
simples, partes textuais
de elementos mistos, ...)
conceito global não-léxico
complexo)
NL x L
léxico ou
não-léxico
conteúdo XML atômico • conceito global nãoe estruturado
léxico NLx (para os
conceitos não-léxicos) E
• cada conceito léxico
corresponde a um
conceito global léxico
associado a NLx OU gera
um conceito global léxico
Exemplo de Unificação L x L
{técnico, ficção}
{técnico, infantil, poesia}
Categoria
Classe
string[20]
X
string[30]
Fonte XML 2
Fonte XML 1
{técnico, ficção, infantil, poesia}
Categoria
string[30]
Esquema Global
Exemplo de Unificação NL x NL
Classe
Categoria
(0,2)
(1,N)
Escritor
(1,N)
(1,N)
Residência
(1,1)
(1,N)
(1,N)
Universidade
(1,N)
(1,1)
(1,N)
Instituto-Pesquisa
(1,N) (1,1)
Empreendimento
(1,N)
Escritório
(1,1)
Fonte XML 1
X
(1,N)
(1,N)
(1,N)
Esquema Global
(1,N)
Domicílio
(1,N)
Autor
(1,1)
Empresa
Escritório
Fonte XML 2
(0,N)
(1,N)
(1,N)
Universidade
(1,N) (1,1)
Autor
(1,N)
Categoria
Residência
(1,N)
(1,N)
(1,N) (0,1)
(1,N) (0,1)
(1,N)
(0,1)
Universidade
Empresa
Instituto-Pesquisa
Escritório
Exemplo de Unificação NL x L
(1,N)
(1,1)
Rua
Residência
Domicílio
(1,1)
X
(1,N)
(0,1)
(1,1)
Número
Cidade
Fonte XML 2
Fonte XML 1
(1,N)
(1,1)
Rua
Esquema Global
Residência
(1,1)
(1,N)
(0,1)
Número
(1,1)
Cidade
Mapeamento do conceito
Cidade para a Fonte XML 2:
/Autores/Autor/Domicílio
Exemplos de Reestruturação
Publicação
Artigo
generalização
de conceitos
Publicação
Artigo
Livro
(1,1) (1,1)
Título
Livro
(1,1)
(1,1)
(1,1)
(1,N)
Título
(1,1)
Publicação
(1,1)
Ano
(1,1) (1,N)
Livro
remoção de
relacionamentos
redundantes
(1,N)
Publicação
(1,1)
Ano
Livro
BInXS – Trabalhos
•
Concluídos
–
–
•
Em Andamento
–
–
–
•
sistema
de
controle
de
BDs
terminológicas
(Fabrício - TCC)
conversão de esquemas XML Schema para ORM
(Leonardo Garcia - TCC)
geração de esquemas XML a partir de docs XML
(Keli
& Susane - TCC)
biblioteca de funções de apoio (análise de documentos
XML, geração de info. mapeamento, etc)
(Bernardo
- TCC)
análise e incorporação de RIs de domínio das fontes
XML no esquema global (Khaue - dissertação)
A Desenvolver...
–
–
–
projeto e implementação de TODA a etapa de unificação
interface gráfica do BInXS
...
Integração de Dados (XML)
• Sub-Tópicos de Pesquisa
– BInXS
– Esquemas GML
– Projeto DIGITEX (em parceria com UFRGS)
Integração de Esquemas GML
• GML (Geographic Markup Language) é uma
aplicação da XML e uma recomendação
internacional para representação de dados
geográficos
– inclui propriedades convencionais e espaciais de
fenômenos geo-referenciados
– pode ser utilizada em aplicações de diversas áreas
• cadastro urbano, controle de queimadas, ...
• interessados: órgãos públicos, institutos de pesquisa, ...
• Interoperabilidade de esquemas e dados GML
entre aplicações é relevante
– exemplo: unificação ou transferência de
cadastrais de/entre distritos de um município
– problema de integração de esquemas de BDG
dados
• tratamento da heterogeneidade de dados em diversos níveis
– convencional, espacial, ...
Esquemas GML - Trabalhos
• Em Andamento
– método para determinação de equivalências semânticas
entre esquemas GML para o domínio de cadastro
urbano (Ângelo - dissertação)
• considera a existência de uma ontologia de domínio em OWL
• estratégia adotada
– “conceitos GML de esquemas diferentes são semanticamente
equivalentes se ambos tem equivalência com o mesmo
conceito da ontologia”
• principais problemáticas
– definição de métricas de similaridade (estrutural, espacial,
conteúdo, etc) entre conceitos GML e OWL
– definição de um catálogo de mapeamento entre esquemas GML e
OWL
– apoio à implementação do método (Rafael Vasel e
Leonardo Rosa - TCCs)
Integração de Dados (XML)
• Sub-Tópicos de Pesquisa
– BInXS
– Esquemas GML
– Projeto DIGITEX (em parceria com UFRGS)
Projeto DIGITEX
• Projeto CNPq/CTInfo iniciado em nov/05
– grupos de BD de 3 universidades
(UFRGS,UFSC e UCPel)
– 8 docentes pesquisadores, alunos de pósgraduação e bolsistas
– duração de 2 anos
• Digitex é um apelido para
– Plataforma de Indexação e Busca
Personalizada em Bibliotecas Digitais
Projeto DIGITEX
• Motivação
– biblioteca digital é uma tecnologia que permite agregar e gerar
conhecimento que pode ser disponibilizado a todos
• Objetivos e Metas
– auxiliar no processo social de criar conhecimento científico,
aperfeiçoar este conhecimento através da revisão pelos pares e
indicar ou receber indicação de conhecimento relevante
• definir o ciclo do processo de editoração de documentos científicos
digitais com revisão interativa pelos pares de discussão pública e o
tratamento de versões dos documentos publicados
• tratar o problema de sugestão e aquisição de artigos baseado no
interesse e perfil do usuário utilizando-se de uma ontologia de domínio,
e lidando com a questão da integração de instâncias equivalentes de
documentos advindos de fontes heterogêneas
• Contribuição
– gestão automatizada do conhecimento de uma biblioteca digital
• resultados devem ser aplicados à Biblioteca Digital da SBC
DIGITEX – Sub-Projetos
DIGITEX – Sub-Projetos
gerência do armazenamento e acesso a documentos,
assim como a gerência da evolução dos documentos
tanto a nível de conteúdo quanto de estrutura
(Nina Edelweiss e Renata de Matos Galante - UFRGS)
DIGITEX – Sub-Projetos
obtenção automática, semi-automática ou manual de metadados
dos documentos digitais e seu armazenamento em formato XML
compatível com Dublin Core e com a plataforma BDBComp, e sua
disponibilização como um Web service. Para um domínio de
aplicação (no caso, a área de Computação) será desenvolvida
uma Ontologia de Domínio
(José Palazzo Moreira de Oliveira – UFRGS)
DIGITEX – Sub-Projetos
gerência dos processos de autoria e revisão coletiva dos
documentos digitais, levando em conta o gerenciamento da
percepção dos atores do trabalho (mecanismos de awareness)
que está sendo desenvolvido, não apenas para direcionar o
esforço do grupo, mas também receber informações para
melhorar sua participação
(José Valdeni de Lima – UFRGS)
DIGITEX – Sub-Projetos
processo de integração de instâncias heterogêneas de
documentos digitais estruturados (ou de metadados a
partir deles gerados) (já no formato XML) semanticamente
equivalentes, a serem arquivados na biblioteca digital
(Carlos A. Heuser - UFRGS, Ronaldo S. Mello - UFSC)
DIGITEX – Sub-Projetos
análise de dados associados a um usuário, tais como CV
Lattes,
documentos
previamente
recuperados,
características de navegação entre outros, e definição de
um modelo do usuário. Este modelo de usuário é utilizado
no processo de recuperação e recomendação de
documentos, em conjunto com a ontologia de domínio
(Maria Aparecida Souto – UFRGS)
DIGITEX – Sub-Projetos
registro e certificação das atividades e qualificação dos participantes
do processo com base em dados objetivos e pareceres dos pares.
Esta atividade é essencial para atribuir um “valor de qualidade” a uma
publicação realizada. Os fundamentos são, em parte, relacionados
com o conceito de page rank, mas considerando o valor acadêmico
da recomendação ou referência
(José Palazzo M. de Oliveira e José Valdení de Lima - UFRGS)
DIGITEX – Sub-Projetos
processo de classificação de documentos em função
da correlação entre as características dos documentos
e dos usuários durante uma busca. Leva em conta
aspectos de similaridade com o tópico utilizado na
busca e o perfil do usuário
(Stanley Loh - UCPel)
DIGITEX – Trabalhos
•
Em Andamento
– definição de um método de determinação de
similaridade entre instâncias XML heterogêneas
(Rodrigo - dissertação)
•
implementação do método (Carlos – bolsista IC)
– definição de operadores de integração de
instâncias XML heterogêneas similares
(Fabiano - dissertação)
•
implementação dos operadores (Fábio – bolsista IC)
(Obs.: os resultados destes trabalhos podem ser aproveitados
para o ambiente de mediação que o BInXS faz parte)
Tópicos de Pesquisa Atuais
• Integração de Dados (semi-estruturados XML)
• Gerência de Dados XML
• Ferramentas de Apoio à Gerência de
Dados
Gerência de Dados XML
• Motivação
– manipulação crescente de dados XML por aplicações
– pesquisa e desenvolvimento de SGBDs XML ou
extensões de SGBDRs é “recente” e tem open issues
• armazenamento e acesso eficientes, restrições de integridade,
gerência de transações, modelagem de BDs XML, ...
• Sub-Tópicos de Pesquisa
– Restrições de Integridade
– Mapeamento do modelo XML para outros modelos de
dados
– Projeto lógico de BD XML
Gerência de Dados XML - Trabalhos
• Concluídos
– controle de restrições de integridade de
domínio para documentos XML (XDC)
(Alexandre Lazzaretti - dissertação)
• define uma linguagem de marcação para
especificação de RIs em dados XML (XDCL)
– sintaxe SQL-like para checks e triggers
» considera a tecnologia relacional para controle de RIs
• define um parser para validação de um doc XML
com relação a um doc de restrições XML (.xdc)
XDC - Contexto
analysis of data
requirements
analysis of
domain integrity
constraints
application
domain
conceptual
schema
domain integrity
constraint for data
definition
XML
documents
of the
applications
reference
definition
composed
by
XML
database
reference
XDCL
specifications
reference
reference
XML schema
document
composed
by
query
schema
validation
XDC
document
XML
instances
query
XML
parser
domain integrity
constraint
validation
XDCL
parser
generation
generation
validation
result
validation
result
reference
validation
XDC
Gerência de Dados XML - Trabalhos
• Concluídos
– processo de mapeamento de esquemas XMLSchema para esquemas relacionais (Cláudio
Maurício - dissertação)
• define um conjunto detalhado de regras de
mapeamento que leva em conta todos os conceitos
do modelo da XML Schema
• define um algoritmo para aplicação destas regras
– processo de mapeamento de esquemas de
BDOO para esquemas XML-Schema (Fabiana
Peres - dissertação)
• mesma abordagem do trabalho anterior
Gerência de Dados XML - Trabalhos
• Em andamento
– Metodologia para projeto lógico (e físico?) de
BDs XML (Alessandro Lemos - dissertação)
• definição de um conjunto de etapas para
modelagem lógica (modelo de grafo hierárquico) e
física XML (esquema DTD ou XSD) a partir de uma
modelagem conceitual ER
– deve definir regras detalhadas de modelagem lógica que
levem em conta todos os conceitos do modelo ER
– deve definir algoritmos de mapeamento
ISBN
Projeto
de
BD
XML
Exemplo
título
nome
Livros
(1,N)
(0,N)
eMail (0,N)
Autores
autoria
nome
ordem
(1,N)
(1,1)
Capítulos
organização
referências (0,N)
Livros
(1,N)
(1,1) Livro
(1,1)
ISBN
Título
(1,N) (1,N)
Autor
(1,1)
(0,N)
Nome
eMail
Capítulo
(1,1)
(1,1)
Nome
(0,N)
Ordem
Referência
<!ELEMENT
<!ELEMENT
<!ATTLIST
<!ELEMENT
<!ELEMENT
<!ELEMENT
<!ELEMENT
<!ELEMENT
<!ATTLIST
<!ELEMENT
Livros (Livro+)>
Livro (Título, Autor+, Capítulo+)>
Livro ISBN CDATA>
Título (#PCDATA)>
Autor (Nome, eMail*)>
Nome (#PCDATA)>
eMail (#PCDATA)>
Capítulo (Nome, Referência*)>
Capítulo ordem CDATA>
Referência (#PCDATA)>
Gerência de Dados XML - Trabalhos
• Em andamento
– extensão da XDCL para aumento de
expressividade (colaboração com a UPF)
• consideração de predicados complexos, etc
– implementação das regras e dos algoritmos
para conversão XML2relacional e OO2XML
(colaboração com a UNIOESTE)
• Futuros
– definição e implementação de processos para
mapeamento de instâncias XML2relacional e
OO2XML (colaboração com a UNIOESTE)
Tópicos de Pesquisa Atuais
• Integração de Dados (semi-estruturados XML)
• Gerência de Dados XML
• Ferramentas de Apoio à Gerência de
Dados
Ferramentas para Gerência de Dados
• Motivação
– carência de ferramentas que possam auxiliar
profissionais e docentes na área de BD no
ensino, projeto e gerência de dados
convencionais e não-convencionais
• Objetivo
– desenvolvimento de soluções computacionais
para tais finalidades
Ferramentas - Trabalhos
• Concluídos
– ferramenta de apoio ao projeto lógico de BDs
relacionais baseado no EER (Carlos – MT especialização)
– ferramenta de apoio à engenharia reversa de
BDs SQL Server (Miguel e Marcelo - TCC)
• Trabalhos Futuros (idéias sempre existem...)
– núcleo de um SGBD relacional
– camadas de gerência de dados nãoconvencionais em BDs relacionais
• temporais, geográficos, ...
UFSC-CTC-INE
Grupo de Banco de Dados da UFSC
Tópicos de Pesquisa e
Desenvolvimento no
GBD-UFSC
Ronaldo S. Mello
Março/2006
Download

1,N - INE