Curso Superior de Tecnologia em BD Tópicos Avançados em BD Banco de Dados Temporais
Interagindo O que é tempo? 2
Interagindo Algo que não se vê, não se pega, mas, se armazena (tempo cronológico); Termo criado pelos seres humanos, para conseguir definir, classificar e ordenar elementos (dados); Pode ser metereológico ou cronológico. 3
Roteiro Motivação Exemplo de Aplicações Tipos de tempo(conceitos e Exemplos) Modelagem TempER Modelagem TUML Linguagem de Consulta TSQL2 Função Temporal no Oracle e SQLServer. Conclusão Referências 4
Motivação Detalhar e melhorar meu conhecimento prévio e superficial, relacionando alguns conceitos que estavam dispersos; Comemos ex:validade de um produto,...; Trabalhamos ex:concluir atividades, cumprir metas...); Nos divertimos ex cinema, brinquedos eletrônicas...; Estudamos ex:entrega dos projetos, tempo de apresentação seminário. BD Temporais são indispensáveis no nosso cotidiano! 5
Exemplo de Aplicações Controle acadêmico ex: históricos de alunos, currículos de cursos,...; Área médica ex: quadro clínico de pacientes, diagnósticos,...; Área empresarial ex: tomadas de decisão, planejamento de orçamentos; Sistemas de informação geográfica ex:crescimento demográfico, desmatamento... DW s e Data Mining 6
Banco De Dados Temporal Permitem Armazenar todos os estados de um dado: Presente; passado e ; Futuro. Tipos Instantâneo; Transação; validade e; Bitemporal. [Edelweiss, Nina] 7
Tipos de Tempo Tempo instantâneo Característico de BD convencional; Dado válido no momento atual; Ex: progressão salarial 8
Tipos de Tempo Tempo de Transação Tempo fornecido pelo SGBD (timestamp) Registra o instante da inserção de dados no banco; 9
Tipos de Tempo Tempo de Validade Tempo em que o dado é valido no mundo real; Tempo fornecido pelo usuário; 10
Tipos de Tempo Tempo Bitemporal Manutenção conjunta do tempo de transação e do tempo de validade. 11
Ordem no Tempo O tempo pode ser: Linearmente ordenado; Ramificado ou ; Circular. [Worboys e Duckhan, 2004] 12
Ordem no Tempo - Exemplos Ordem linear ex: evolução do salário de um empregado Fonte livro: Banco de Dados Geográfico, Cap 4 13
Ordem no Tempo - Exemplos futuro ramificado ex: alternativas para o capítulo final de uma novela passado ramificado ex: hipóteses para a evolução do homem até os dias de hoje Fonte livro: Banco de Dados Geográfico, Cap 4 14
Ordem no Tempo - Exemplos Ordem circular Ex: períodos de promoção de uma loja: verão, páscoa, dia das mães, outono-inverno, dia dos pais,... Fonte livro: Banco de Dados Geográfico, Cap 4 15
Granularidade Corresponde a duração de um chronon. Um chronon é um intervalo temporal que não pode ser decomposto. EX: ANO, MÊS, DIA, HORA, MIN, SEG,... Quanto menor for a Granularidade maior os detalhes de uma informação. [Edelweiss e Oliveira, 1994] Ex: item vendido Maior Cod_prod Ano c12 300.000 h05 700.000 Menor Cod_prod Mes Dia Hora c12 30.000 3.000 300 h05 70.000 7.000 700 16
Rótulos Temporais Formas de representar atributos temporais; Tipos Instante; Intervalo; elemento temporal; [Langran,1993] 17
Rótulos Temporais Instante Temporal Dado no instante atual (now) 18
Rótulos Temporais Intervalo Tempo decorrido entre dois instantes 19
Rótulos Temporais Elemento Temporal evita a fragmentação de um dado em várias tuplas, 20
Modelagem Conceitual TempER permite representar a associação entre elementos temporalizados e não temporalizados; ERT (Entity Relationship Time Model) [LOU 91], dificil entendimento dos diagramas; TER (Temporal Entity-Relationship Model) [TAU 91] Não possui notação para atributos temporalizados; TEER (Temporal Enhanced Entity-Relationship Model) [ELM 93] assume que todos os objetos são temporalizados. STEER [ELM 92] variante da modelagem TEER não torna disponível um tratamento adequado aos objetos não temporalizados. 21
Modelo TempER Procura corrigir os problemas identificados nas demais abordagens. Caracteristicas: Notação familiar; Elementos temporalizados; Elementos não temporalizados; Objeto identificador; Entidades Transitórias; Entidades Perenes; Atributos temporais. [C. Antunes, C. Heuser e N. Edelweiss ] 22
Notação TempER Mesclando objetos diferentes [C. Antunes, C. Heuser e N. Edelweiss ] 23
OID Objeto identificador Gerado pelo sistema; Único; Invisível ao usuário; Define a identidade de uma entidade; Não descarta a chave primária; Possível alterar a chave primária; Princípios da orientação a objetos. [C. Antunes, C. Heuser e N. Edelweiss ] 24
OID Objeto identificador [C. Antunes, C. Heuser e N. Edelweiss ] 25
Entidades Transitórias Permite os intervalos no eixo temporal: Tem validade; Ex: funcionario com vários admissões numa empresa [C. Antunes, C. Heuser e N. Edelweiss ] 26
Entidades Perenes Só apresenta intervalo único. Ex: um funcionário só pode ser admitido na empresa uma vez [C. Antunes, C. Heuser e N. Edelweiss ] 27
Relacionamentos Relacionamentos Temporais Associam duas entidades no âmbito da dimensão temporal. Relacionamentos Intemporais Não levam em consideração a dimensão temporal 28
Relacionamentos [C. Antunes, C. Heuser e N. Edelweiss ] 29
Atributos Dois tipos De entidade Transitória; De entidade Perene. 30
Atributo na entidade transitória EX: atributo salário; para cada empregado contém toda a sua história salarial [C. Antunes, C. Heuser e N. Edelweiss ] 31
Atributo na entidade do perene Ex: atributo ref_salário; para cada função, contém todos os valores de referência que houve ao longo do tempo. [C. Antunes, C. Heuser e N. Edelweiss ] 32 32
TUML- Temporal Unified Modelling Language Dados temporal orientados a objeto; Várias granularidades; Classes Temporais; Associação de Classes; Extensão stereotypes (UML); Semântica temporal derivada de Modelo-TAU; TAU - integrar a tecnologia de banco de dados OO com a tecnologia de banco de dados temporal. 33
Classes - TUML Três tipos: Classe tempo de validade (vt) ; Classe tempo de transação (tt); Classe bitemporal (bt). 34
Classe Tempo de Transação [SVINTERIKOU,97] 35
Classe Tempo de Validade [SVINTERIKOU,97] 36
Classe Bitemporal Composição da TV + TT; [SVINTERIKOU,97] 37
Transaction time association Associações de tempo de transação podem ser definidas entre transaction time class, bitemporal time class ou ambas. [SVINTERIKOU,97] 38
Valid time association Associações de tempo de validade podem ser definidas entre valid time class,bitemporal time class ou ambas. [SVINTERIKOU,97] 39
Bitemporal time association Associações de tempo bitemporais somente podem ser definidas entre bitemporal time class; [SVINTERIKOU,97] 40
Linguagem de consulta TSQL2 Extensão do SQL, pesquisadores de 8 paises em 1995; suporte a: Períodos de tempo; Múltiplas granularidades; Ex: nanosegundos, anos, minutos, etc. Múltiplas representações; Ex: terceira semana de 2007. Múltiplos Calendários ex:(lunar, acadêmico, fiscal...) [SNO 95] 41
Funções TSQL2 Classificado em : Destruidor de dados; BEGIN e END Construtor de dados; PERIOD, INTERSECT e INTERVAL, Funções variadas; FIRST e LAST Funções de Agregação. COUNT, SUM, AVG, MAX, MIN [SNODGRASS, 95] 42
Funções Temporais em Oracle Também chamada no SGBD de Séries temporais Versão Oracle 8 Cartucho de Séries de Tempo (Time Series Cartridges). [ORA,99] Versão 9i Time Series (ORDTS), diretamente nas sentenças SQL. [ORA,03] 43
Funções Temporais no SQLServer Na versão SQLServer 2005 implementado no Analisys Services 2005 algoritmo de Data Mining [Mauro Pichiliani, 2007] 44
Conclusão Os BD temporais são indispensáveis para qualquer Sistemas de alto nível de complexidade e detalhes; Uma modelagem clara e detalhada é de extrema importância para uma implementação de um BD Temporal ainda maior que os Bancos convêncionias; Melhorias e inovações são sempre bem vindas; Não devemos fugir aos padrões já consagrados 45
Referências ANTUNES, Dante Carlos GPT, HEUSER, Carlos A., Edelweiss, Nina - UFRGS (Instituto de Informática):TempER:UMA PROPOSTA DE MODELAGEM DE DADOS TEMPORAL, 1998. DIAS, Taciana ; CÂMARA, Gilberto;CLODOVEU, A. Davis Jr. Banco de Dados Geográficos. MundoGEO, Curitiba, 2005. EDELWEISS, N. Bancos de Dados Temporais: Teoria e Prática. Recife, 1998. In:XVII Jornada de Atualização em Informática, do XVIII Congresso Nacional da Sociedade Brasileira de Computação, v.2. Ed.: H.P. MOURA. Anais. p.225-282. EDELWEISS, Nina; OLIVEIRA, José Palazzo M. Modelagem de aspectos temporais de sistemas de informação. Recife, 1994. Livro texto da Escola de Computação, 9. Universidade Federal de Pernambuco [SVI97a]* SVINTERIKOU, Marianthi; THEODOULIDIS, Babis. The Temporal Unified Modeling Language (TUML). Timelab Technical Report, Departament of Computation, UMIST, UK. Oct,1997. Snodgrass, R. T. (1995). The TSQL2 temporal query language. Norwell, MA: Kluwer Academic. Alex Martins de Oliveira, Funcionalidades Temporais do Banco de Dados Oracle e Mecanismos para Consultas de Tempo de Validade. - Novembro 2003 Tes Sites: http://www.dpi.inpe.br/livros/bdados/ http://www.inf.ufrgs.br/~clesio/cmp151/cmp15120031/seminariosalunos.htm http://www.omg.org http://www.devmedia.com.br/articles/viewcomp.asp?comp=5414 46
Curso Superior de Tecnologia em BD Obrigado! Prof. Gustavo Santade santade@gmail.com