banco de dados temporais - temporal database

15

Upload: sergiosouza

Post on 17-Dec-2014

7.297 views

Category:

Technology


3 download

DESCRIPTION

Developed in www.inforium.com.br Bacharelado em Sistemas de Informação Brasil - MG Sergeduardo

TRANSCRIPT

Page 1: Banco de Dados Temporais - Temporal DataBase
Page 2: Banco de Dados Temporais - Temporal DataBase

Um banco de dados armazena dados transacionais relevantes de umaorganização, sejam eles estáticos ou dinâmicos . Para cada caso existe uma abordagem de retenção de dados.

São elas,• Banco de Dados Convencionais .• Banco de Dados Temporais .

A implementação de um desses modelos é decidida de acordo com a necessidade do cliente/aplicação.

Porém a necessidade de controle da informação coloca o BD temporalcomo a melhor das opções em uma organização.

Banco de Dados:

Page 3: Banco de Dados Temporais - Temporal DataBase

Banco de Dados Convencionais:

Os Bancos de Dados convencionais buscam uma visão estática da realidade ocasionando:

• Perda do histórico de atualizações.• Falta de controle das Informações.• Impossível a analise de evolução.

Ou seja, a evolução histórica da realidade não é armazenada, desta forma os dados atualizados não persistem.

Modelo query de Consulta de Dados,select saláriofrom Empregados E, Salários Swhere S.RG = E.RGand E.nome = ‘Maria’and S.início >= ’01/07/02’and S.fim <= ’31/12/02’

Page 4: Banco de Dados Temporais - Temporal DataBase

Definição:

Linha

Col

una

Tempo

Os Bancos de Dados temporais retém a informação de forma dinâmica , possui 3 dimensões [Linha, Coluna e tempo ], permitindo uma consulta histórica da evolução dos dados.Seja ela baseada em,

• Tempo de Transação. (timestamp)• Tempo de Validade. (byuser)

ou• Bitemporal - (Tempo Validade + Transação).

Modelo query de Consulta de Dados,select saláriofrom Empregadoswhere nome = ‘Maria’and period ‘[01/07/02,31/12/02]’

Page 5: Banco de Dados Temporais - Temporal DataBase

Predicados e Funções Temporais:

• INCLUDES– contém

• OVERLAPS– sobrepõe (intersecção)

• PRECEDS / BEFORE– precede no tempo

• FOLLOWS / AFTER– sucede no tempo

• MEETS– “casa” (encontro no tempo)

• VACUUM– Exclusão física

• INTERSECT– Entre dois pontos

• ... (para todos, exige-se chronons¹ iguais)

¹Chronons – Intervalos temporais consecutivos em uma dada linha de tempo.

Page 6: Banco de Dados Temporais - Temporal DataBase

Banco de Dados Convencional x Banco de Dados Tempor al

IBM System Storage DS3400

21.6TBIBM XIV Storage System

180TB

Além da abordagem sobre a capacidade ou não de contextualizar o ‘tempo’ histórico dos dados, uma outra característica marcante quando um BD convencional e um BD temporal são comparados é sem dúvida o armazenamento de dados.

• Um BD temporal requer maior espaço de armazenamento.• Armazena a informação antiga.• Possuí crescimento acelerado.

• Um BD convencional não necessita de um espaço grande.• Sobrescreve os dados, descartando os antigos.• Seu crescimento pode ser previsto, ou controlado.

Page 7: Banco de Dados Temporais - Temporal DataBase

Aspectos Temporais:

O tempo é um aspecto essencial na ocorrência dos fatos e pode ser classificado em diversos ordens, como:

• Ordem Linear: presume-se que o tempo flui de forma linear, entre dois pontos, do passado ao futuro.

• Ordem Ramificada: um dado pode ter diversos sucessores ou predecessores. Ex: Uma certa decisão pode gerar um entre diversas opções de resultados.

• Ordem Circular: são dados que se repetem ao longo de um período de tempo. Ex: datas de promoções vendas em determinadas épocas do ano.

Page 8: Banco de Dados Temporais - Temporal DataBase

Classificação de Banco de Dados:

• Banco de Dados Instantâneos • Banco de Dados de Tempo de Transação

• Banco de Dados de Tempo de Validade • Banco de Dados Bi temporais

Page 9: Banco de Dados Temporais - Temporal DataBase

Aplicações:

Algumas aplicações onde o controle e acesso a informações temporais são fundamentais:

• Área Médica• Área Empresarial

� Aplicações Financeiras� Controle de Produção� Gerenciamento de Vendas� Gestão de Pessoas

• Controle Acadêmico• Sistemas de Informações Geográficas• Sistema de Reservas• (...)

Page 10: Banco de Dados Temporais - Temporal DataBase

Linguagem - TSQL2 (Temporal Structured Query Language):

TSQL2 – Definida em 1995 após uma lista de discussão por emails criada em 1992.A linguagem é baseada em SQL e foi acrescida de outras funções:

• suporte a períodos de tempo• suporte a múltiplas granularidades (um chronon)• suporte a múltiplas representações• suporte a múltiplas linguagens• suporte a múltiplos calendários

(lunar – acadêmico – fiscal – eras geográficas)

• suporte a tempo indeterminado• suporte a tempo histórico

Page 11: Banco de Dados Temporais - Temporal DataBase

Não é possível encontrar um SGBD totalmente Temporal, algumas funcionalidades podem ser encontradas mas não em sua totalidade.

Como solução existem as camadas de softwares que simulam um Banco de Dados Temporal, permitindo consultas escritas.

SGBDs que suportam TSQL2:• Oracle (PTV – Pacote de Tempo de Validade + TSQL2)• PostgreSQL (TSQL2 + Btpgsql(Bi temporal) + EMap)• MySQL (EMap adaptado UFGRS/UPF)

Linguagem - TSQL2 (Temporal Structured Query Language):

Page 12: Banco de Dados Temporais - Temporal DataBase

Listar o nome de todos os empregados que trabalharam na empresa ao mesmo tempo em que João esteve no departamento de brinquedos.

SELECT E1.NomFROM Empregado E1, Empregado E2WHERE E2.Nom = João AND E2.Dept = “Brinquedos”AND VALID(E1) OVERLAPS VALID(E2)

Linguagem - TSQL2 (Temporal Structured Query Language):

Page 13: Banco de Dados Temporais - Temporal DataBase

Modelagem ER:

TempER x ER Convencional:

Page 14: Banco de Dados Temporais - Temporal DataBase

Considerações Finais:

A utilização de um BD Temporal se faz necessária em tempos onde a riqueza de dados é fundamental para a analise e obtenção de informações, ampliando a capacidade de sistemas que tem como “matéria prima” o cruzamento de dados/informações, como os,

• SIGs (Sistemas de Informações Gerenciais)• Dataminer (mineração de dados)• Data Warehousing

Sistemas de Suporte a decisão como,• BI (Business Intelligence)

dentre vários outros.Apesar do custo de armazenamento ser alto, os benefícios são relevantes como a consistência, permitindo consultas históricas com alta recuperabilidade de dados.

Page 15: Banco de Dados Temporais - Temporal DataBase

Fonte:[Universidade do Arizona] Disponível em,ftp://ftp.cs.arizona.edu/tsql/tsql2/bookspec.pdf (EN-US)http://www.cs.arizona.edu/people/rts/tsql2.html (EN-US)Acesso em 12 Jun.2009

[Ferramenta para Suporte a Consultas Temporais em SGBDs convencionais.]http://www.projetos.unijui.edu.br/erbd2009/arquivo/52075.pdfAcesso em 13 Jun.2009

[Nina Krahe Edelweiss]http://www.inf.ufrgs.br/~nina/Acesso em 13 Jun.2009

[Oliveira, Alex Martins de]http://www.lume.ufrgs.br/bitstream/handle/10183/6040/000435641.pdfAcesso em 13 Jun.2009