Sie sind auf Seite 1von 43

UNIVERSIDADE FEDERAL DO PARÁ

CAMPUS UNIVERSITÁRIO DO TOCANTINS

Bacharelado em Sistemas de Informação


5º Período

BANCO DE DADOS TEMPORAL

EQUIPE: ADRIANA CUNHA DE MORAES, ALINNE SANTOS DA SILVA, LUIZ


SERGIO GARCIA CARVALHO, PATRÍCIA DA SILVA LOPES, ROSINALDO JR.
MORAES DA CRUZ.
AGENDA

Definição

Aplicação

Considerações Finais
Definição
Banco de dados temporal está relacionado ao tempo,
oferecem a possibilidade de armazenar informações
históricas a respeito de um determinado objeto que nele está
sendo mantido (EDELWEISS, 1998, TANSEL, 1997).

Um banco de dados temporal armazena vários estados dos


dados, assim como os instantes em que estes diferentes
estados são válidos [Silva 92, Pissiniou 94, Snodgrass 95,
Tansel 90].
3
Aplicação
Área médica: Quadro clinico de pacientes, diagnósticos,
histórico do paciente.
Área empresarial: Tomadas de decisão, planejamento de
orçamentos.
Sistemas de informação geográfica: Crescimento
demográfico, desmatamento.
Controle acadêmico: Alunos graduados, histórico.
Sistema de reservas: Empresas aéreas, hotéis.
4
BD Convencional X BD Temporal
Banco de dados Banco de dados Temporal:
Convencional:
Representação do estado Representação dos estados
presente de um dado. passados, presente e futuros de
dado.
Gerenciamento temporal a Gerenciamento temporal é
cargo da aplicação. controlado pelo banco de
dados.
Não necessita de um espaço Requer maior espaço de
grande. armazenamento. 5
Tipos de Tempos
Classificação:
• Instantâneo;
• Transação;
• Validade;
• Bitemporal.

6
Tempo instantâneo
• Característico de BD convencional (BD instantâneo);
• registra apenas o dado válido no momento atual;
• na medida em que os dados do banco são alterados, os
valores anteriores são perdidos.

7
Tempo de Transação
• Característico de BD de Tempo de Transação ou BD
Rollback;
• Para cada transação efetuada em um registro, um rótulo
indicando a data em que à mesma ocorreu é gravado.

• Exemplo: Operação bancária.

8
Tempo de Transação
• Há a definição para tempo de transação (TT) onde define o
tempo em que os dados são inseridos ou alterados na
tabela. O TT permite que o usuário saiba o momento em que
foi feita cada alteração de dados.

9
Tempo de Validade
• Característico de BD de Tempo de Validade ou BD Histórico.
• Além de utilizar a ideia de tempo de transação associando
um rótulo com a data da alteração, possuem também a
informação da validade do registro, indicando o tempo de
validade do mesmo
• Tempo fornecido pelo usuário;

Exemplo: quadro clínico de um paciente.

10
Tempo de Validade
• Há a definição para tempo de validade (TV) a qual define o
tempo em que os dados começarão a ter validade.

11
Tempo Bitemporal
• Combinam as características de bancos de dados de
tempo de transação com bancos de dados de validade;
• não necessariamente ambos coincidem;
• característico de BD Bitemporal;
• Exemplo: Reserva aérea

12
Tempo Bitemporal
• Definimos além da data de atualização a validade do
registro. Desse modo, sabemos que o usuário fez a
atualização do salario de João no dia 26/04/2003 e esta
alteração entrou em vigor no mesmo dia.

13
Ordem no Tempo
Existem três tipos de ordem do tempo:
• Linear;
• Ramificada;
• Circular.

14
Ordem Linear
• Forma mais usual de ordenação temporal;
• Um dado com no máximo um sucessor e um predecessor;

Exemplo: evolução do salário de um empregado.

15
Ordem Ramificada
• Um dado pode ter vários sucessores e/ou predecessores.

Exemplos:
• Alternativas para futuro estado de um paciente que já
possui um histórico de passagens no hospital por uma
determinada doença (futuro ramificado);
• Hipótese para a evolução do homem até os dias de hoje
(passado ramificado).
16
Ordem Circular
• Um conjunto de dados se repete periodicamente em uma
certa ordem.

Exemplos:
• períodos de promoção de uma loja, pascoa, dia das
mães, natal, queima de estoque entre outras.
17
Rótulo Temporal
Como podemos representar os atributos temporais?
• Instante;
• Intervalo;
• Elemento temporal.

18
Instante
• Representação de um ponto no tempo.
• Relaciona-se à ocorrência de um evento;
• caracteriza-se por um ponto específico no decorrer do
tempo contínuo do registro do banco de dados.

19
Exemplo - Instante
PublicacaoArtigos
RG IdArtigo conferencia Instante
1 1 SBBD 2000
1 2 VLDB 2002
... ... ...

Empregados
RG nome salário Instante
1 João 500,00 Mai/01
1 João 540,00 Dez/01
1 João 680,00 Abr/03
... ... ... 20
Intervalo
• Definido como sendo o tempo decorrido entre dois
instantes de tempo diferentes e conhecidos, tal que se
sabe a sua duração, mas não se sabe necessariamente
quando o mesmo começa ou termina.

• NOW: até o tempo presente;

21
Exemplo - Intervalo
Empregados
RG nome salário Inicio Fim
1 João 500,00 Mai/01 Ago/02
1 João 540,00 Dez/01 Mar/03
1 João 680,00 Abr/03 now
2 Maria 600,00 << Mar/03
EscalaLimpeza
RG andar Inicio Fim
1 3 10/05/03 12/05/03
1 2 22/05/03 27/05/03
2 1 13/05/03 16/05/03 22
Elemento Temporal
• É união finita de intervalos;
• representação mais expressiva que intervalo, evita a
fragmentação de um dado em várias tuplas, uma para
cada intervalo;
• útil para modelar um fato que pode apresentar os
mesmos valores em períodos distintos de tempo.

23
Exemplo – Elemento Temporal

EscalaLimpeza
RG andar periodos
1 3 [10/05/03, 12/05/03] ᵕ [04/06/03, 06/06/03]
1 2 [22/05/03, 27/05/03]
2 1 [13/05/03, 16/05/03] ᵕ [29/05/03, 31/05/03] ᵕ
[12/06/03, 17/06/03]

24
Granularidade

Dois aspectos a considerar em modelagens:


• granularidade temporal;
• granularidade do fato do mundo real;

25
Granularidade temporal (discretização):
• duração do período de tempo (chronon);
• ano, mês, dia, hora;
• pode variar de dado para dado.

26
Granularidade do fato do mundo real:
• para qual porção do fato deve-se registrar evolução
temporal;
• fato completo, alguns atributos, alguns dos seus
Relacionamentos etc.

27
Exemplo - Granularidade
QuadroClinicoPacientes
CPF temperatura pressão Batimento cardíaco
• Manter evolução de todos os atributos(fato como um todo);
• granularidade temporal (chronon): hora.
Empregados
CPF nome salário função DN
• manter evolução dos atributos salário e função;
• chronon para salário: mês;
• chronon para função: ano.
28
Modelos de Dados Temporais
A representação dos aspectos temporais em um SI é importante por:
(i) o sistema pode apresentar informações temporais a serem
introduzidas no banco de dados que o representa;
(ii) processos a serem executados podem apresentar interações
temporais, que devem também ser representadas;
(iii) determinadas tarefas podem apresentar pré-condições à sua
execução, as quais podem ser representadas através de restrições
temporais;
(iv) condições de integridade temporal do banco de dados podem ser
necessárias.

29
Modelos de Dados Temporais
Aspectos a serem considerados quando se analisa um
modelo de dados temporal:
• identificar o tipo de rótulo temporal;
• analisar a forma de variação temporal dos atributos;
• verificar se os rótulos temporais são explícitos ou implícitos ;
• homogeneidade temporal;
• apresentação e funcionalidades da linguagem de consulta.

30
Extensões do Modelo Relacional
 Extensão temporal para um banco de dados relacional possui
formas de temporização, dependendo o nível ao qual o tempo é
associado:
(1) ao banco de dados como um todo – cada estado é armazenado
completo, com o rótulo temporal.
(2) às relações – cada relação é temporizada.
(3) às tuplas – cada tupla é temporizada.
31
Extensões do Modelo Relacional
 Algumas extensões:
HRDM (Historical Relational Data Model) [Clifford 87, 93];
• Duas dimensões usuais(valor x atributo);
• Utiliza tempo de validade;
• utilizado o conceito de duração de vida (lifespan);
• Lifespan = todos os instantes no tempo nos quais hajam
informações relevantes para o objeto.
• atributos-chaves = que não variam com o passar do
tempo.
32
Extensões do Modelo Relacional
 Algumas extensões:
TRM (Temporal Relational Model);
• em cada esquema relacional temporal tem dois atributos
obrigatórios: tempo_de_início (Ts) e tempo_de_fim (Te);
• Utiliza tempo de validade;

Exemplo: o currículo de uma determinada faculdade é válido


durante o período compreendido entre Ts e Te.

33
Linguagem TSQL2
Temporal Structured Query Language
Linguagem de consulta temporal

A Linguagem é baseada em SQL e foi acrescida de outras


funções:
• Suporte a períodos de tempo (date, time, timestamp, interval);
• Suporte a múltiplas granularidades (um chronon);
Exemplo: year, month, day, hour, minute, second, semestre -
semana - estações do ano;
• Suporte a múltiplas representações;
Exemplo: terceira semana de 1999.
34
Linguagem TSQL2
• Suporte a múltiplas linguagens;
Exemplo: 29 de setembro de 1997.

• Suporte a múltiplos calendários (lunar, acadêmico, fiscal,


eras geográficas);

• Suporte a tempo indeterminado;


Exemplo: entre 1 e 15 de julho.

• Suporte a tempo histórico.


35
As consultas na Linguagem TSQL2
Operadores de seleção:
• Extratores – extraem informação temporal do rótulo.
Exemplo: o operador BEGIN extrai o início de validade de um
atributo;
• construtores – constroem elementos temporais.
Exemplo: INTERSECT retorna o conjunto de intervalos temporais.
• de comparação – operadores lógicos que comparam intervalos
temporais.
Exemplo: OVERLAPS verifica se dois intervalos têm
intervalos temporais em comum.
36
Linguagem TSQL2
Não é possível encontrar um SGBD totalmente Temporal.

Como solução existem as camadas de softwares que simulam


um BD Temporal, permitindo consultas escritas.

SDBDs que suportam TSQL2:


Oracle (PTV – Pacote de Tempo de Validade + TSQL2);
PostgreeSQL (TSQL2 + Btpgsql (BiTemporal) + EMap);
MySQL (Emap adaptado UFGRS/UPF).
37
Exemplo – Consulta em TSQL2
Listar o nome dos funcionários que estiveram
empregados em janeiro de 1992.

SELECT Nome
FROM Empregado
WHERE VALID (Empregado) OVERLAPS PERIOD ‘[01/01/
1992, 01/31/1992]’

38
Exemplo – Consulta em TSQL2
Listar o nome dos funcionários que foram registrados
como emprega dos em janeiro de 1992.

SELECT Nome
FROM Empregado
WHERE TRANSACTION (Empregado) OVERLAPS PERIOD
‘[01.01.92, 31.01.92]

39
Predicados Temporais
• INCLUDES – contém;
• OVERLAPS - sobrepõe (intersecção);
• PRECEDS / BEFORE - precede no tempo;
• FOLLOWS / AFTER - sucede no tempo;
• MEETS - “casa” (encontro no tempo);
• ... (para todos, exige-se chronons iguais).

40
Considerações Finais

41
Referências
https://www.devmedia.com.br/entendendo-sobre-banco-de-
dados-temporais/24840;

42
43

Obrigado

Das könnte Ihnen auch gefallen