Buscar

Bancos de Dados Temporais

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 22 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 22 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 22 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Bancos de Dados Temporais
Gustavo Roberth
Matheus Aguiar
Yure Guajajara
BANCO DE DADOS II - 2019.1
UFMA - DEINF
Introdução e Conceitos
PARTE #1
‹#›
Sumário
Introdução
Banco de Dados Temporais
Conceitos básicos da Representação Temporal
Ordem do Tempo
Tipos de Tempo
Operações básicas no Banco de Dados Temporal
Implementação de um Banco de Dados Temporal
‹#›
Introdução
A maior parte das aplicações atuais têm a necessidade de manipular dados históricos - dados relativos a estados passado da aplicação.
O interesse em registrar a evolução dos estados de uma aplicação como o passar do tempo.
Os SGBDs convencionais não oferecem suporte a estas informações
 Nas últimas décadas, muitas pesquisas na área de Bancos de Dados Temporais vêm sendo realizadas, com o objetivo de definir conceitos e estratégias para tratar de informações históricas.
‹#›
Banco de Dados Temporais
Trabalham com dados relacionados ao tempo, com histórico para análise posterior.
A diferença com os bancos de dados convencionais está na representação do dado no tempo presente apenas.
Enquanto que os BDs temporais realizam um histórico de dados apartir do tempo.
Usados em área médica, área empresarial, sistemas de reservas de passagens, ...
‹#›
Conceitos Básicos da Representação Temporal
Instante Temporal;
Intervalo Temporal;
Elemento Temporal;
Duração Temporal.
‹#›
Ordem e Tipos
de Tempo
‹#›
PARTE #2
Ordem do Tempo
Ordem Linear:
Apenas um predecessor e um sucessor. Ex.: Salário de um Funcionário.
Ordem Ramificada:
Vários predecessores e/ou vários sucessores. Ex.: Hipótese da evolução da espécie humana (passado); Alternativas de emprego para um programador (futuro).
Ordem Circular:
Conjuntos de dados que se repetem periodicamente e em certa ordem. Ex.: Períodos de promoções anuais em uma loja, como Dia das Mães ou Natal.
‹#›
Tipos de Tempo
Tempo absoluto:
Específico, definido com uma granularidade fixa e associado a um fato. Exemplo: Yure entrou na UFMA em 2016.
Tempo relativo:
Válido somente porque outro evento relacionado é válido. Exemplo: O dia das mães ocorre no segundo domingo de maio. (Segundo domingo de maio é válido.)
Dos dois, o Absoluto pode ser considerado o mais comum. Em bancos de dados temporais, podemos ter os dois tipos. O relativo aparece quando temos um dado com maior necessidade de confirmação.
‹#›
‹#›
Tipos de Tempo
Tempo de uma transação:
Fornecido pelo SGBD. É o tempo em que o fato é válido no banco. Quando um dado for inserido, modificado ou excluído do banco, ele recebe um tempo de transação. Marca o início e o fim de sua validade no banco.
Tempo válido/de validade:
Conjunto de Instantes em que o dado é válido no universo do banco de dados.	Tem de ser informado pelo usuário. Todo fato tem um tempo de validade.
Tempo Bitemporal
Quando se possui os dois tipos de tempo acima. Não precisam coincidir.
Operações e Implementação
‹#›
PARTE #3
Operações Básicas no Banco de Dados Temporal
No BDT, as informações não podem ser substituídas por outras, uma vez que todo o passado dos dados deve ficar armazenado. A exclusão, em um BDT, pode ser de duas formas: exclusão lógica e física.
# Exclusão Lógica: Encerrando-se a “Vida” da Informação
# Exclusão Física: Quando se deseja remover fisicamente uma informação que não é mais relevante.
Esta operação é conhecida por vacuuming. 
‹#›
Implementação de um Banco de Dados Temporal
1. Tabela Instantânea do Departamento: contém as informações atuais de um departamento acadêmico;
2. Tabela Temporal – Nome do Departamento: contém as diferentes denominações do departamento acadêmico ao longo dos anos;
3. Tabela Espaço-Temporal – Localização do Departamento: contém a localização de um departamento acadêmico ao longo dos anos.
‹#›
Implementação de um Banco de Dados Temporal
1 – Criação de um modelo conceitual de representação através de um diagrama Entidade-Relacionamento que permita a localização de um atributo em tempo e espaço distintos;
2 – criação de um modelo de Banco de Dados Espaço-Temporal;
3 – definição de um Sistema Gerenciador de Banco de Dados – SGBD open source para se validar o modelo proposto (PostgreSQL)
4 – Validação do modelo proposto através de consultas no SGBD.
‹#›
Implementação de um Banco de Dados Temporal
Modelo de implementação temporal:
- O SGBD trabalha com “timestamps”.
 A cada alteração em um atributo é gerado um novo estado do BD.
 O mecanismo permanece transparente para o usuário.
Para representar o tempo de transação, optou-se por acrescentar dois atributos adicionais: 	
 início do período de transação (DT_I)
 final do tempo de transação (DT_F)
‹#›
‹#›
Implementação de um Banco de Dados Temporal
Implementação de um Banco de Dados Temporal
‹#›
Os atributos Nome e Localização são TEMPORAIS pois podem apresentar valores diferentes em cada data.
Implementação de um Banco de Dados Temporal
‹#›
Fazendo uma busca
Implementação de um Banco de Dados Temporal
- BD Convencional: o dado é destruído e substituído por outro (visão do usuário).
 BD Temporal: o dado é armazenado com um “timestamp” da data que foi modificado de acordo com o tempo do SGBD (DT_I=NOW) até outra data indefinida (DT_F=NULL).
- O dado antigo passa a fazer parte de um histórico e seu “timestamp” será (DT_I=data_da_ultima_mod.) e DT_F=NOW.
‹#›
Atualização dos Dados
A operação UPDATE: Ao alterar o valor de um atributo em um banco de
dados convencional, o usuário estará destruindo o antigo valor do atributo e
atribuindo a este um novo valor. Em banco de dados espaço-temporais, ao alterar
o valor de um atributo, tanto convencional quanto temporal, o usuário estará pondo
fim à história deste, e inserindo um novo valor que dará início a uma nova história
na base de dados. A rotina responsável pela operação update, a cada alteração,
atribui um valor NOW (o valor do momento no SGBD) à DT_F (final do intervalo
de validade da informação) na tupla da tabela temporal, na qual o atributo está
armazenado e gera uma nova tupla com o novo valor do atributo, atribuindo o
valor NOW a DT_I (início do intervalo de validade da informação). 
‹#›
Concluindo...
Claramente pudemos observar aqui como o Banco de Dados Temporal é uma importante alternativa quando o objetivo é guardar informações de diferentes períodos de tempo de forma coesa e precisa, agregando diferentes conceitos de representação temporal e trazendo uma nova dimensão ao armazenamento de elementos.
Fontes
https://docplayer.com.br/1602416-Banco-de-dados-temporais-teoria-e-pratica.html
https://www.devmedia.com.br/entendendo-sobre-banco-de-dados-temporais/24840
https://www.diegomacedo.com.br/banco-de-dados-temporais/
‹#›
Muito obrigado pela compreensão!

Continue navegando

Outros materiais