490 likes | 577 Views
Modelos e Tipos de Dados para Banco de Dados Móveis. Equipe: Aderval, Eudes, Ivanildo, Mozart, Pablo. Roteiro. Motivação Conceitos MOST Modelo proposto por Bei Yi Modelo para Rede de estradas Tipos de Dados de BD Móveis Conclusão Referências. Motivação.
E N D
Modelos e Tipos de Dados para Banco de Dados Móveis Equipe: Aderval, Eudes, Ivanildo, Mozart, Pablo
Roteiro • Motivação • Conceitos • MOST • Modelo proposto por Bei Yi • Modelo para Rede de estradas • Tipos de Dados de BD Móveis • Conclusão • Referências
Motivação • Surgimento de Aplicações Móveis (Uso militar) • Interesse na possibilidade de capturar dados relativos aos movimentos, cuja velocidade implicará em aumento da taxa de transferência. • Exemplos: Fenômenos relacionados ao movimento
Motivação • Bancos de dados Espaço-Temporais são pouco eficazes • Paradigmas de modelagem existentes são pouco adequados • Linguagens de consultas existentes não possuem operadores que exploram as novas possibilidades dos objetos móveis • O modelo consiste em agrupar versão dos objetos móveis em cada intervalo de tempo, formando assim a sua trajetória
Conceitos • Objeto espaço-temporal: Atributos espaciais, temporais e descritivos • Exemplos: Fazenda(Nome, Localização, tempo); • Desafios: Complexidade em capturar, armazenar e gerenciar grandezas envolvendo Espaço e Tempo
Conceitos • Modelagem dependente da natureza dos objetos • Classificação: Forma de variação do espaço em função do tempo • Continua: Modelagem de atributos através de um gráfico de variação continua • Registro de Eventos: Variação de espaço em intervalos discretos. Dados válidos apenas durante este intervalo • Mudança de Estado: Semelhante ao anterior, mas mantendo a localização, mesmo fora dos intervalos do evento, até o próximo evento ocorra
Conceitos • Objeto Móvel – qualquer objeto, pontual ou com extensão, que muda sua posição geográfica continuamente conforme o passar do tempo. • Especialização de objeto espaço-temporal. • Ex : Táxi, Cardume de golfinhos.
Conceitos • Banco de Dados Móveis: Especialização de bases de dados espaço-temporais • Problemas: • O número de registros cresceria muito se cada posição exigisse o armazenamento um registro novo • A complexidade algorítmica dos operadores é muito maior pois precisa considerar a continuidade do movimento. • Pode haver intervalo de tempo sem informação amostrada. Isso pode apresentar ”lacunas”de informações, o que exige técnicas de reconstituição da continuidade, usando técnicas de aproximação como interpolação.
Modelo MOST • Moving Object Spatial Temporal. • Objeto Espacial - Coordenadas x, y, z • BD com atributos dinâmicos. • updatetime • value • function
Modelo MOST • Representação de estados do futuro. • DataBase History • Past Database History • Future Database History
Tipos de MOST Query • Consultas sobre o DataBase History: • Instantâneas • Contínuas • Persistentes
Instântaneas • Consulta avaliada em um tempo infinito iniciando em um tempo t. • Presente • Ex : “Quais os supermercados que estão num raio de 10 km da minha posição ?” • Futuro • Ex : “ Quais supermercados eu poderei chegar em 5 min.?”
Contínuas • Consulta contínua em t, é uma seqüência de consultas instantâneas, uma para cada ponto t’ >t. • Update explícito • Ex : “Quais supermercados vendem pão e estão em um raio de 10 km?”
Persistentes • Seqüência de consultas instantâneas. Porém estas consultas tem um mesmo tempo t inicial. • Persistentes x Contínuos
Modelo MOST • Vantagens: • Maioria dos casos o movimento permanece uniforme. • Consultas sobre o futuro próximo. • Desvantagem: • Não Descreve a trajetória completa dos objetos móveis. • Baseado em objetos pontuais.
Considerações do modelo • Tipos de objetos a serem modelados de acordo com o comportamento temporal: • Estático • Temporal discreto • Temporal continuo • Atributos a serem consultados: • Descritivo ou convencional • Temporal • Espacial
Considerações do Modelo • Tipos de representação da trajetória: • Ponto • Linha • Polígono
Considerações do modelo • O que se consulta em um banco de dados de objetos móveis? • Que dados de objetos móveis devem ser guardados?
O que se consulta? • Consultas tradicionais em banco de dados espaço-temporais: • No tempo t1 qual a localização do carro A? • Quando o carro A estava na coordenada (x1,y1)?
O que se consulta? Existem outras necessidades de consulta: • Relacionamentos entre um objeto móvel e um estático. • Quando o carro A estava fora da área central (demarcada pelo polígono X)? • Relacionamento entre dois objetos moveis. • No tempo t1, o carro A estava ao lado do carro B?
O que se consulta? Existem outras necessidades de consulta: • Estimativas sobre futuro. • Quando o carro A entrará na região central? • Qual o local provável de interseção das trajetórias dos carros A e B?
Quais os dados armazenados? • Precisa-se armazenar a trajetória do objeto. • Trajetória é o registro do movimento, mostrando a evolução da posição do objeto indexado pelo tempo.
Quais os dados armazenados? • Por que armazenar os dados indexando pelo tempo? • Dado um tempo, só existe um estado de relacionamento espacial entre os objetos. • Qual o intervalo de tempo a se considerar? Como tratar movimentos não uniformes? • Uma solução é dividir o percurso em intervalos pequenos o suficiente para garantir movimento uniforme nele.
Modelo proposto • Modelo orientado a objetos voltado a dados vetoriais (geo-objetos). • Os objetos se relacionam, possuindo cada um o seu estado (atributo) e comportamento (métodos)
Modelo Proposto • Vantagens • Classes para representar os objetos e outras para representar as trajetórias. • Desvantagens • O modelo não possui proposta de linguagem de consulta. • Dificuldade de implementação devido ao alto grau de abstração.
Serviço de táxi • Há uma grande variedade de aplicações que manipulam objetos que se movimentam ao passar do tempo. Porém, essas aplicações geralmente são desprovidas de suporte a banco de dados. • É um desafio projetar um modelo de banco de dados para ser integrado a esses tipos de aplicações.
Serviço de Táxi • Esses modelos precisam permitir o armazenamento desses objetos como entidades estruturadas e também permitir consultas baseadas em sua estrutura espaço-temporal. • Apresentaremos um exemplo concreto de um modelo para uma aplicação comercial que utiliza objetos móveis.
Serviço de Taxi • Imagine um serviço de táxis que precisa saber continuamente a localização de seus táxis e precisa estar sempre otimizando o seu serviço. • Consultas possíveis: • Qual o táxi mais próximo a um dado endereço? • Quais táxis estarão ao menos a 5 km do endereço do cliente nos´próximos 10 minutos. • As trajetórias de dois táxis A e B se cruzaram nas últimas 2h? • Assumindo que se sabe antecipadamente as trajetórias, dois táxis A e B estarão a menos de 2 km em algum momento, nos próximos 30 min?
Serviço de Táxi • A co-existência de atributos espaciais e temporais nesse sistema tornam o processamento de consultas um desafio. • O modelo proposto para suportar esse tipo de problema vai ser descrito a seguir e foi construído através da extensão das tecnologias de banco de dados existentes.
Serviço de Táxi - Modelo • A informação inicial é a representação da rota entre dois pontos da cidade. Cada ponto é representado por uma coordenada (x,y) e a rota entre dois pontos é uma polilinha que é representada como uma seqüência de coordenadas: (x1,y1), (x2,y2),...,(xn,yn). • Dessa forma, o mapa da cidade é representado como um grafo não direcionado.
Serviço de Táxi - Modelo • Trajetória: • É a combinação da rota do objeto com o tempo que esse objeto se encontrará em cada ponto da rota. • Essa rota é especificada pelo endereço ou ponto inicial (x1,y1), o endereço ou ponto final (xn,yn) e o tempo inicial t. • Uma rotina externa deve calcular o custo (caminho ou tempo) mínimo entre esses dois pontos.
Serviço de Táxi - Modelo • A Trajetória T(o) de um objeto o, é especificado por uma relação, cujas tuplas são denotados por [i, (x,y), ti, b], onde (x,y) é o i-ésimo ponto intermediário na rota L(o) do objeto o e o estará lá no tempo ti. Como uma trajetória T(o) pode representar mais de uma viagem, pode-se adicionar um atributo b, que diz se esse ponto é um início de uma nova viagem ou não. • CREATE TYPE trajetoria AS OBJECT (sequence# integer, x integer, y integer, ti real, b boolean)
Serviço de Táxi - Modelo • CREATE TYPE objeto_movel AS OBJECT (object_id integer, T trajetoria, cor integer, peso integer, motorista pessoa_id) • É necessário, também, uma função que retorne a distância percorrida entre dois pontos quaisquer da trajetória e outra que retorne o tempo entre eles. Essas duas funções pertencem ao tipo objeto_movel.
Serviço de Táxi - Modelo SELECT LOC(id, t) | WHEN_AT(id, location-L) | <other attributes of T or moving objects relation> FROM T WHERE id WITHIN (DISTANCE s | TRAVELTIME t) FROM R [(ALONG EXISTING PATH) | (ALONG SHORTEST PATH) ] [(ALWAYS BETWEEN) | (SOMETIMES BETWEEN) starttime AND endtime]
Serviço de Táxi - Modelo • LOC(id,t) • WHENAT(id, location-L) • WITHIN (DISTANCE s | TRAVELTIME t) FROM R – retorna true se o objeto precisa alcançar R em no mínimo s ou t. • Quantificadores para refinar WHITIN: • ALONG EXISTING PATH and ALONG SHORTEST PATH • ALWAYS BETWEEN and SOMETIMES BETWEEN starttime AND endtime
Data Reduction • Técnica para otimizar o acesso / armazenamento / processamento / transmissão de dados em dispositivos móveis • Estratégias: • Abstração • Projeção • Seleção • Ordenamento • Substituição de dados / Tipos • Técnicas híbridas
Substituição de Tipos • Quanto mais complexo o tipo, mais recursos ele vai demandar para acesso / processamento / armazenamento / transmissão • Quanto maior a diversidades de tipos, maiores e mais complexas terão que ser as APIs (espaço e processamento suficientes?)
SQL Server x SQL CE * Podem acontecer falhas na sincronização por causa de tamanho de campo ** Podem acontecer falhas na sincronização por causa de precisão
Conclusão • Os modelos para banco de dados móveis estão sendo cada vez mais necessário. • Os desafios são grandes. • Existe grandes dificuldades em se encontrar modelos bem detalhados.
Referências • A.P.Sistla, O.Wolfson , S.Chamberlain and S.Dao. Modeling and queryingmoving objects. In Proc. IEEE Intl. Conf. On Data Engeneering, pages422–432, Birminghan, UK, 1997. • Yi, B. and Medeiros, C.Bauzer. Um modelo de Dados para ObjetosMóveis. In IV Simpósio Brasleiro de GeoInformática, pages 33-40, 2002.
Referências • AVazirgiannis, M. and Wolfson,O. A Spatiotemporal Model and Language for MovingObjects on Road Networks. • Wolfsony, O. Chamberlainx, S. Xuz, B. Jiang L. Moving Objects Databases: Issues and Solutions
Referências • Small Database Answers for Small Mobile Resources • http://citeseer.ist.psu.edu/lubinski00small.html • Data Reduction an Adaptation Technique for Mobile Environments • http://citeseer.ist.psu.edu/120366.html • Oracle 9i Lite: A technical White Paper • http://www.oracle.com/technology/tech/wireless/papers/q4-02/Oracle_Lite_wp11-02.pdf • Oracle 9i Lite Developers Guide for Windows CE • http://download-east.oracle.com/docs/html/A95913_01/toc.htm • SQL CE Supported DataTypes and Mappings • http://msdn.microsoft.com/library/default.asp?url=/library/en-us/sqlce/htm/_lce_accessing_data.asp