Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouJoão Guilherme Marques Sacramento Alterado mais de 8 anos atrás
1
Uma Proposta para Bancos de Dados Categoriais Rafael C. Pinto
2
Sumário 1. Introdução 2. Álgebra - União - Produto Cartesiano - Seleção - Projeção - Junção 3. Referências
3
Introdução ● Abordagens de BD mais utilizadas: Hierárquica, Redes, Relacional e Orientada a Objetos ● A abordagem Relacional é a mais utilizada; ● Forte embasamento em Teoria dos Conjuntos ● Teoria das Categorias generaliza Teoria dos Conjuntos, portanto pode ser aplicada a BD ● Poder de expressão de Teoria das Categorias auxilia em BD
4
Álgebra Relacional ● Criada para descrever operações sobre bancos de dados relacionais ● Opera sobre tabelas e retorna tabelas ● SQL é constituído, em grande parte, por álgebra relacional ● Em Categorias, as tabelas são objetos, mais precisamente conjuntos de registros ● Cada registro é uma tupla de valores, ou seja, pertencem ao produto dos conjuntos representados pelos campos ● Diagramas representam operações sobre o BD
5
União ● União utilizada em BD é a união disjunta ● Coproduto pode ser utilizado em categorias ● (select * from A) union (select * from B)
6
Produto Cartesiano ● Representado pelo produto categorial ● Sem muita utilidade na ausência de junções ● Ignora relacionamentos entre as tabelas; ● select * from A,B
7
Seleção ● Consiste em um filtro sobre os registros de uma tabela ● Produto Fibrado; ● A é a tabela ● B é o conjunto de valores permitidos ● C é o campo filtrado ● select * from A where C in B
8
Seleção (Exemplo) ● Tabela “Pessoa“ ● Campos “Nome“ e “Idade“ ● Registros e ● Busca pessoas com idade igual a 20 ● select * from Pessoa where Idade in (20)
9
Seleção por Vários Campos ● Generalização do produto fibrado para n objetos (1 tabela e n-1 campos) ● Select * from A where C in B AND E in D
10
Projeção ● Seleciona parte dos campos existentes ● Um valor é uma projeção de um registro ● Um produto define a projeção com os campos escolhidos ● select B,C from A
11
Projeção Generalizada ● Funções e valores arbitrários podem ser inseridos em projeções ● select B,C,D from A
12
Junção ● Essência dos bancos relacionais ● É um produto cartesiano com restrições ● Categorialmente é um limite onde um morfismo é o relacionamento ● select * from A join B on (R)
13
Junção Externa ● Retorna registros de uma tabela sem relacionamento com a outra ● Funtor que adiciona “NULL“ ao primeiro objeto e o relaciona com os elementos sem setas chegando no segundo objeto ● select * from A right join B on (R')
14
Referências ● Goguen, J. A. (1991) “A Categorical Manifesto” ● Heuser, C. A. (2005) “Álgebra: Operadores Básicos” ● Wikipedia (2006) “Relational Algebra” ● Tuijn C., Gyssens M., Paredaens J., “A Categorical Approach to Object-Oriented Data Modeling” ● Menezes, P. B. (2006) "Teoria das Categorias para Ciência da Computação"
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.