A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Objetos móveis: modelagem e consulta Cássio Leonardo Rodrigues Raul Fernandes Herbster.

Apresentações semelhantes


Apresentação em tema: "Objetos móveis: modelagem e consulta Cássio Leonardo Rodrigues Raul Fernandes Herbster."— Transcrição da apresentação:

1 Objetos móveis: modelagem e consulta Cássio Leonardo Rodrigues Raul Fernandes Herbster

2 Roteiro Motivação Contextualização Problemática Objetos Móveis Abordagem de Modelagem Avaliação de Consultas Comentários Finais

3 Motivação Aplicações que manipulam objetos cujas características espaciais se modificam com o passar do tempo −Aplicações SIG envolvendo tempo −Aplicações de tempo real para monitoração de veículos −Aplicações de realidade virtual

4 Contextualização A cidade Lyon pretende oferecer um novo serviço de transporte público Em cada terminal de ônibus, o usuário pode consultar informações a respeito dos ônibus que circulam

5 Contextualização Jean quer saber quais os ônibus que estarão dentre 5 min naquele terminal

6 Contextualização Marie quer saber quais os ônibus estão a um raio de 5 km de distância daquele terminal

7 Contextualização Mais exemplos −Quais aviões passaram pelo território aéreo da Venezuela na última semana? −Quais os satélites mais próximos à rota da nave espacial nas próximas 4 horas? −Quão rápido a Floresta Atlântica está sendo desmatada? −Rotas de migração de aves e baleias

8 Problemática Definir modelos para armazenamento e consulta de objetos móveis

9 Objetivos Discutir abordagens para modelar objetos móveis Analisar consultas a objetos móveis

10 Objetos Móveis São objetos que se movem no espaço ao longo do tempo −Posição e/ou extensão Exemplos −Trajetórias de transportes públicos −Evolução da área atingida por um câncer em um paciente

11 Abordagem de Modelagem 1.Criação de tipos e operações entre os tipos 2.Associar uma álgebra aos tipos e operações criadas −Modelo Abstrato −Modelo Discreto

12 Criação de Tipos Tipos básicos −point – descreve um ponto no plano 2D −region – descreve uma região no plano 2D −time – descreve dimensões de tempo válidas Tipos estendidos −mpoint  time  point −mregion  time  region

13 Criação de Tipos mpoint mregion

14 Operações attimempoint × time  point minvalue,maxvaluempoint  point start,stopmpoint  time durationmpoint  real constpoint  mpoint

15 Operações mdistance mpoint  mpoint  mreal visits mpoint  mregion  mpoint trajectory mpoint  line inside point  region  bool length line  real

16 Modelo Abstrato Para os seguintes tipos e operações tipos point,time,real,mpoint,mreal operações attimempoint × time  point mdistancempoint × mpoint  mreal

17 Modelo Abstrato Para os tipos

18 Modelo Abstrato Para as operações −Sejam r, s valores do tipo mpoint e t tempo

19 Modelo Abstrato

20 Modelo Discreto Modelos abstratos não podem ser implementados −São necessárias representações finitas Modelos discretos são aproximações −Descrições finitas de conjuntos infinitos Há dificuldades de mapear modelos abstratos em modelos discretos −Tipos de dados, operações

21 Modelo Discreto Para os seguintes tipos e operações tipos point,time,real,mpoint operações attime mpoint × time  point

22 Modelo Discreto Para os tipos

23 Modelo Discreto Para as operações

24

25 Consultas flights(id:string,from:string,to:string,route:mpoint) “Quais os destinos distantes em no máximo 3 horas de Fortaleza?” SELECT id FROM flights WHERE from = “FOR” AND duration(route) <= 3.0

26 Consultas “Quais são os vôos que passaram através de uma tempestade tropical?” SELECT id FROM flights, weather WHERE kind = “snow storm” AND duration(visits(route,area)) > 0 flights(id:string,from:string,to:string,route:mpoint) weather(kind:string,area:mregion)

27 Avaliação de Consultas Exemplo da frota de táxis −Qual o táxi mais próximo de um endereço específico? −Nós próximos 15 minutos, quais táxis estarão pelo menos 3 km próximos de um endereço de um cliente? −Quantos táxis viajaram mais de 5 km até chegar ao endereço de um cliente

28 Avaliação de Consultas Objetivos 1.Definição de um conjunto conciso de tipos de dados para objetos móveis 2.Definir um esquema de avaliação de consulta a objetos móveis 3.1 e 2 devem se basear soluções industriais prontas (off-the-shelf)

29 Idéia básica SIG Básico SGBD Sistema Gerente de Localização de OM Dados Espaço- Temporais

30 Representação de um ponto móvel

31

32 Modelo de dados A trajetória é uma relação em cada elemento tem os seguintes atributos −(sequence#, (x, y), t, b) Exemplo: (3, (50,75), 1000, true) Em uma trajetória típica de 10 km de extensão, cada trecho tem cerca de 500 m

33 Modelo de dados Definição do tipo trajetória CREATE TYPE trajectory AS OBJECT (SEQUENCE# integer, x integer, y integer, t real, b boolean); Definição do tipo objeto móvel CREATE TYPE m_o AS OBJECT (id integer, T trajectory, color integer, driver person_id);

34 Predicados de consulta Nos próximos 20 minutos, quais táxis estarão sempre pelo menos 5 minutos próximos de um endereço de um cliente, sem sair da sua trajetória original? A consulta SQL equivalente é SELECT obj FROM M_O WHERE obj WITHIN cost minutes FROM R ALONG EXISTING PATH ALWAYS BETWEEN StartTime AND EndTime

35 Custo = 5 min StartTime = 40 min EndTime = 60 min R = (50,50)

36 Custo = 5 min StartTime = 40 min EndTime = 60 min R = (50,50)

37 Custo = 5 min StartTime = 40 min EndTime = 60 min R = (50,50)

38 Esquema de processamento da consulta Processamento de consulta em duas fases: 1.Filtragem 2.Refinamento Filtragem −Consulta SQL é mapeada para uma janela de consulta 3D, chamada Q −Trajetórias que intersectam Q são recuperadas e são armazenadas em um conjunto S

39 Custo = 5 min StartTime = 40 min EndTime = 60 min R = (50,50) Q = (R,StartTime), (R,EndTime+Custo)

40 R = (50,50)

41 Custo = 5 min StartTime = 40 min EndTime = 60 min

42 Esquema de processamento da consulta Refinamento −Para cada trajetória T pertencente a S, vamos considerar a coordenada temporal em que T cruza o ponto R −e 1 = tempo em que T intersecta R pela primeira vez −e 2 = tempo em que T intersecta R pela segunda vez −... e assim por diante

43 Esquema de processamento da consulta Situação hipotética em que a consulta é satisfeita Se e 1 – StartTime > Cost −O objeto móvel está mais 5 min longe. Logo deve ser descartado STETET + CostST + Cost e1e1 STETET + CostST + Cost e1e1 e2e2 e3e3 e4e4

44 Esquema de processamento da consulta Se e 1 – StartTime  Cost −Precisamos analisar e 1 em relação ao tempo final ET. Se e 1 > ET então a trajetória deve ser selecionada −Situação ocorre quando o custo é maior que o intervalo em que o predicado deve valer STETET + CostST + Cost e1e1 STET ET + CostST + Cost e1e1

45 Esquema de processamento da consulta se ET > e 1, temos que analisar a subtrajetória entre e1 e ET com relação a e 2, e 3 etc. −Esse processo é feito recursivamente, atribuindo-se e 1 a StartTime −Se não existe nenhum e 2, a trajetória deve ser eliminada de S No final, as trajetórias que permanecem em S são a resposta da consulta STETET + CostST + Cost e1e1

46 Comentários Finais Solução simples e poderosa Permite tratamento de geometrias que se modificam ao longo do tempo −Modelagem e consulta Tipos de dados espaço-temporal podem ser usados para estender qualquer SGBD Banco de dados e mobilidade

47 Referências Martin Erwig, Ralf Hartmut Güting, Markus Schneider and Michalis Vazirgiannis. “Spatio-Temporal Data Types:An Approach to Modeling and Querying Moving Objects in Databases”. GeoInformatica Vol. 3, No. 3, 1999. Michalis Vazirgiannis and Ouri Wolfson. “A Spatiotemporal Model and Language for Moving Objects on Road Networks”. C.S. Jensen et al. (Eds.): SSTD 2001, LNCS 2121, pp. 20-35, 2001


Carregar ppt "Objetos móveis: modelagem e consulta Cássio Leonardo Rodrigues Raul Fernandes Herbster."

Apresentações semelhantes


Anúncios Google