1
Modelagem Conceitual para Banco de Dados Temporal IN1008 – Projeto Conceitual de BD Modelagem Conceitual para Banco de Dados Temporal Márcio Angelo Bezerra de Lira marcio_angelo@hotmail.com
Interagindo O que é tempo? 3
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. 4
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 5
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 ! 6
Exemplo de Aplicações Controle acadêmico Área médica Área empresarial 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 7
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] 8
Tipos de Tempo Tempo instantâneo Característico de BD convencional; Dado válido no momento atual; Ex: progressão salarial 9
Tipos de Tempo Tempo de Transação Tempo fornecido pelo SGBD (timestamp) Registra o instante da inserção de dados no banco; 10
Tipos de Tempo Tempo de Validade Tempo em que o dado é valido no mundo real; Tempo fornecido pelo usuário; 11
Tipos de Tempo Tempo Bitemporal Manutenção conjunta do tempo de transação e do tempo de validade. 12
Ordem no Tempo O tempo pode ser: [Worboys e Duckhan, 2004] Linearmente ordenado; Ramificado ou ; Circular. [Worboys e Duckhan, 2004] 13
Ordem no Tempo - Exemplos Ordem linear ex: evolução do salário de um empregado Fonte – livro: Banco de Dados Geográfico, Cap 4 14
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 15
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 16
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 Menor Cod_prod Ano c12 300.000 h05 700.000 Cod_prod Mes Dia Hora c12 30.000 3.000 300 h05 70.000 7.000 700 17
Rótulos Temporais Formas de representar atributos temporais; Tipos Instante; Intervalo; elemento temporal; [Langran,1993] 18
Rótulos Temporais Instante Temporal Dado no instante atual (now) 19
Rótulos Temporais Intervalo Tempo decorrido entre dois instantes 20
Rótulos Temporais Elemento Temporal evita a fragmentação de um dado em várias tuplas, 21
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. 22
Modelo TempER Procura corrigir os problemas identificados nas demais abordagens. Caracteristicas: Notação famíliar; Elementos temporalizados; Elementos não temporalizados; Objeto identificador; Entidades Trasitórias; Entidades Perenes; Atributos temporais. [C. Antunes, C. Heuser e N. Edelweiss ] 23
Notação TempER [C. Antunes, C. Heuser e N. Edelweiss ] Mesclando objetos de diferentes [C. Antunes, C. Heuser e N. Edelweiss ] 24
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 ] 25
OID – Objeto identificador [C. Antunes, C. Heuser e N. Edelweiss ] 26
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 ] 27
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 ] 28
Relacionamentos Relacionamentos Temporais Associam duas entidades no âmbito da dimensão temporal. Relacionamentos Intemporais Não levam em consideração a dimensão temporal 29
Relacionamentos [C. Antunes, C. Heuser e N. Edelweiss ] 30
Atributos Dois tipos De entidade Transitória; De entidade Perene. 31
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 ] 32
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 ] 33
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. 34
Classes - TUML Três tipos: Classe tempo de validade (vt) ; Classe tempo de transação (tt); Classe bitemporal (bt). 35
Classe Tempo de Transação [SVINTERIKOU,97] 36
Classe Tempo de Validade [SVINTERIKOU,97] 37
Classe Bitemporal Composição da TV + TT; [SVINTERIKOU,97] 38
Transaction time association Associações de tempo de transação podem ser definidas entre transaction time class, bitemporal time class ou ambas. [SVINTERIKOU,97] 39
Valid time association Associações de tempo de validade podem ser definidas entre valid time class ,bitemporal time class ou ambas. [SVINTERIKOU,97] 40
Bitemporal time association Associações de tempo bitemporais somente podem ser definidas entre bitemporal time class; [SVINTERIKOU,97] 41
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] 42
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] 43
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] 44
Funções Temporais no SQLServer Na versão SQLServer 2005 implementado no Analisys Services 2005 algoritmo de Data Mining [Mauro Pichiliani, 2007] 45
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 46
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 47
48 48