objetos m veis modelagem e consulta n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Objetos móveis: modelagem e consulta PowerPoint Presentation
Download Presentation
Objetos móveis: modelagem e consulta

Loading in 2 Seconds...

play fullscreen
1 / 46

Objetos móveis: modelagem e consulta - PowerPoint PPT Presentation


  • 60 Views
  • Uploaded on

Objetos móveis: modelagem e consulta. Cássio Leonardo Rodrigues Raul Fernandes Herbster. Roteiro. Motivação Contextualização Problemática Objetos Móveis Abordagem de Modelagem Avaliação de Consultas Comentários Finais. Motivação.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Objetos móveis: modelagem e consulta' - samuru


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
objetos m veis modelagem e consulta

Objetos móveis: modelagem e consulta

Cássio Leonardo Rodrigues

Raul Fernandes Herbster

roteiro
Roteiro
  • Motivação
  • Contextualização
  • Problemática
  • Objetos Móveis
  • Abordagem de Modelagem
  • Avaliação de Consultas
  • Comentários Finais
motiva o
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
contextualiza o
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
contextualiza o1
Contextualização
  • Jean quer saber quais os ônibus que estarão dentre 5 min naquele terminal
contextualiza o2
Contextualização
  • Marie quer saber quais os ônibus estão a um raio de 5 km de distância daquele terminal
contextualiza o3
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
problem tica
Problemática

Definir modelos para armazenamento e consulta de objetos móveis

objetivos
Objetivos
  • Discutir abordagens para modelar objetos móveis
  • Analisar consultas a objetos móveis
objetos m veis
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
abordagem de modelagem
Abordagem de Modelagem
  • Criação de tipos e operações entre os tipos
  • Associar uma álgebra aos tipos e operações criadas
    • Modelo Abstrato
    • Modelo Discreto
cria o de tipos
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
cria o de tipos1
Criação de Tipos

mpoint

mregion

opera es
Operações

attime mpoint ×time  point

minvalue,maxvalue mpoint  point

start,stop mpoint  time

duration mpoint  real

const point  mpoint

opera es1
Operações

mdistance mpoint  mpoint  mreal

visits mpoint  mregion  mpoint

trajectory mpoint  line

inside point  region  bool

length line  real

modelo abstrato
Modelo Abstrato
  • Para os seguintes tipos e operações

tipospoint,time,real,mpoint,mreal

operações

attimempoint× time  point

mdistancempoint× mpoint mreal

modelo abstrato1
Modelo Abstrato
  • Para os tipos
modelo abstrato2
Modelo Abstrato
  • Para as operações
    • Sejam r, s valores do tipo mpoint e t tempo
modelo discreto
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
modelo discreto1
Modelo Discreto
  • Para os seguintes tipos e operações

tipospoint,time,real,mpoint

operações

attimempoint× time  point

modelo discreto2
Modelo Discreto
  • Para os tipos
modelo discreto3
Modelo Discreto
  • Para as operações
consultas
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

consultas1
Consultas

flights(id:string,from:string,to:string,route:mpoint)

weather(kind:string,area:mregion)

“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

avalia o de consultas
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
avalia o de consultas1
Avaliação de Consultas
  • Objetivos
    • Definição de um conjunto conciso de tipos de dados para objetos móveis
    • Definir um esquema de avaliação de consulta a objetos móveis
    • 1 e 2 devem se basear soluções industriais prontas (off-the-shelf)
modelo de dados
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
modelo de dados1
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);

predicados de consulta
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

slide34

Custo = 5 min

StartTime = 40 min

EndTime = 60 min

R = (50,50)

slide35

Custo = 5 min

StartTime = 40 min

EndTime = 60 min

R = (50,50)

slide36

Custo = 5 min

StartTime = 40 min

EndTime = 60 min

R = (50,50)

esquema de processamento da consulta
Esquema de processamento da consulta
  • Processamento de consulta em duas fases:
    • Filtragem
    • 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
slide38

Q = (R,StartTime),

(R,EndTime+Custo)

Custo = 5 min

StartTime = 40 min

EndTime = 60 min

R = (50,50)

slide40

Custo = 5 min

StartTime = 40 min

EndTime = 60 min

esquema de processamento da consulta1
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
    • e1 = tempo em que T intersecta R pela primeira vez
    • e2 = tempo em que T intersecta R pela segunda vez
    • ... e assim por diante
esquema de processamento da consulta2
Esquema de processamento da consulta
  • Situação hipotética em que a consulta é satisfeita
  • Se e1 – StartTime > Cost
    • O objeto móvel está mais 5 min longe. Logo deve ser descartado

e1

e2

e3

e4

ST

ST + Cost

ET

ET + Cost

e1

ST

ST + Cost

ET

ET + Cost

esquema de processamento da consulta3
Esquema de processamento da consulta
  • Se e1 – StartTime  Cost
    • Precisamos analisar e1 em relação ao tempo final ET. Se e1 > 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

e1

ST

ST + Cost

ET

ET + Cost

e1

ST

ET

ST + Cost

ET + Cost

esquema de processamento da consulta4
Esquema de processamento da consulta
  • se ET > e1, temos que analisar a subtrajetória entre e1 e ET com relação a e2, e3 etc.
    • Esse processo é feito recursivamente, atribuindo-se e1 a StartTime
    • Se não existe nenhum e2, a trajetória deve ser eliminada de S
  • No final, as trajetórias que permanecem em S são a resposta da consulta

e1

ST

ST + Cost

ET

ET + Cost

coment rios finais
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
refer ncias
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