Spatio-Temporal Databases. Outline Spatial Databases Temporal Databases Spatio-temporal Databases Multimedia Databases …..

Slides:



Advertisements
Similar presentations
The A-tree: An Index Structure for High-dimensional Spaces Using Relative Approximation Yasushi Sakurai (NTT Cyber Space Laboratories) Masatoshi Yoshikawa.
Advertisements

Spatial Indexing SAMs. Spatial Indexing Point Access Methods can index only points. What about regions? Z-ordering and quadtrees Use the transformation.
Indexing and Range Queries in Spatio-Temporal Databases
Multiversion Access Methods - Temporal Indexing. Basics A data structure is called : Ephemeral: updates create a new version and the old version cannot.
2-dimensional indexing structure
Spatio-temporal Databases Time Parameterized Queries.
Temporal Indexing Snapshot Index. Transaction Time Environment Assume that when an event occurs in the real world it is inserted in the DB A timestamp.
Spatial Indexing SAMs. Spatial Indexing Point Access Methods can index only points. What about regions? Z-ordering and quadtrees Use the transformation.
Spatial Access Methods Chapter 26 of book Read only 26.1, 26.2, 26.6 Dr Eamonn Keogh Computer Science & Engineering Department University of California.
Spatial Indexing SAMs. Spatial Access Methods PAMs Grid File kd-tree based (LSD-, hB- trees) Z-ordering + B+-tree R-tree Variations: R*-tree, Hilbert.
Spatio-Temporal Databases
Temporal Databases. Outline Spatial Databases Indexing, Query processing Temporal Databases Spatio-temporal ….
Project Proposals Simonas Šaltenis Aalborg University Nykredit Center for Database Research Department of Computer Science, Aalborg University.
Computer Science Spatio-Temporal Aggregation Using Sketches Yufei Tao, George Kollios, Jeffrey Considine, Feifei Li, Dimitris Papadias Department of Computer.
Spatio-Temporal Databases. Outline Spatial Databases Temporal Databases Spatio-temporal Databases Multimedia Databases …..
Temporal Indexing MVBT. Temporal Indexing Transaction time databases : update the last version, query all versions Queries: “Find all employees that worked.
Spatio-Temporal Databases. Introduction Spatiotemporal Databases: manage spatial data whose geometry changes over time Geometry: position and/or extent.
Spatial Indexing SAMs.
Temporal Indexing MVBT. Temporal Indexing Transaction time databases : update the last version, query all versions Queries: “Find all employees that worked.
Multi-dimensional Indexes
Temporal Databases. Outline Spatial Databases Indexing, Query processing Temporal Databases Spatio-temporal ….
Spatial Information Systems (SIS) COMP Spatial access methods: Indexing.
Time Chapter 10 © Worboys and Duckham (2004)
Chapter 3: Data Storage and Access Methods
Spatial Queries Nearest Neighbor Queries.
Spatio-Temporal Databases. Introduction Spatiotemporal Databases: manage spatial data whose geometry changes over time Geometry: position and/or extent.
1 Geometric index structures April 15, 2004 Based on GUW Chapter , [Arge01] Sections 1, 2.1 (persistent B- trees), 3-4 (static versions.
B + -Trees (Part 1). Motivation AVL tree with N nodes is an excellent data structure for searching, indexing, etc. –The Big-Oh analysis shows most operations.
R-Trees 2-dimensional indexing structure. R-trees 2-dimensional version of the B-tree: B-tree of maximum degree 8; degree between 3 and 8 Internal nodes.
Indexing Spatio-Temporal Data Warehouses Dimitris Papadias, Yufei Tao, Panos Kalnis, Jun Zhang Department of Computer Science Hong Kong University of Science.
Spatial Indexing SAMs. Spatial Access Methods PAMs Grid File kd-tree based (LSD-, hB- trees) Z-ordering + B+-tree R-tree Variations: R*-tree, Hilbert.
Spatial Indexing I Point Access Methods. Spatial Indexing Point Access Methods (PAMs) vs Spatial Access Methods (SAMs) PAM: index only point data Hierarchical.
R-TREES: A Dynamic Index Structure for Spatial Searching by A. Guttman, SIGMOD Shahram Ghandeharizadeh Computer Science Department University of.
Moving Objects Databases Nilanshu Dharma Shalva Singh.
Fast Subsequence Matching in Time-Series Databases Christos Faloutsos M. Ranganathan Yannis Manolopoulos Department of Computer Science and ISR University.
Improving Min/Max Aggregation over Spatial Objects Donghui Zhang, Vassilis J. Tsotras University of California, Riverside ACM GIS’01.
AAU A Trajectory Splitting Model for Efficient Spatio-Temporal Indexing Presented by YuQing Zhang  Slobodan Rasetic Jorg Sander James Elding Mario A.
Spatial Data Management Chapter 28. Types of Spatial Data Point Data –Points in a multidimensional space E.g., Raster data such as satellite imagery,
Database management Systems, 3ed, R. Ramakrishnan and J. Gehrke1 Spatial Data Management Chapter 28.
Introduction to The NSP-Tree: A Space-Partitioning Based Indexing Method Gang Qian University of Central Oklahoma November 2006.
1 Spatial-temporal Database and moving objects management.
R-Tree. 2 Spatial Database (Ia) Consider: Given a city map, ‘index’ all university buildings in an efficient structure for quick topological search.
1 The MV3R-Tree: A Spatio- Temporal Access Method for Timestamp and Interval Queries Yufei Tao and Dimitris Papadias Hong Kong University of Science and.
Nearest Neighbor Queries Chris Buzzerd, Dave Boerner, and Kevin Stewart.
Bin Yao (Slides made available by Feifei Li) R-tree: Indexing Structure for Data in Multi- dimensional Space.
August 30, 2004STDBM 2004 at Toronto Extracting Mobility Statistics from Indexed Spatio-Temporal Datasets Yoshiharu Ishikawa Yuichi Tsukamoto Hiroyuki.
Marwan Al-Namari Hassan Al-Mathami. Indexing What is Indexing? Indexing is a mechanisms. Why we need to use Indexing? We used indexing to speed up access.
Spatial Indexing Techniques Introduction to Spatial Computing CSE 5ISC Some slides adapted from Spatial Databases: A Tour by Shashi Shekhar Prentice Hall.
R-Trees: A Dynamic Index Structure For Spatial Searching Antonin Guttman.
Efficient OLAP Operations in Spatial Data Warehouses Dimitris Papadias, Panos Kalnis, Jun Zhang and Yufei Tao Department of Computer Science Hong Kong.
1 CSIS 7101: CSIS 7101: Spatial Data (Part 1) The R*-tree : An Efficient and Robust Access Method for Points and Rectangles Rollo Chan Chu Chung Man Mak.
1 Complex Spatio-Temporal Pattern Queries Cahide Sen University of Minnesota.
Temporal Databases. Outline Spatial Databases Indexing, Query processing Temporal Databases Spatio-temporal ….
Spatio-Temporal Databases
R* Tree By Rohan Sadale Akshay Kulkarni.  Motivation  Optimization criteria for R* Tree  High level Algorithm  Example  Performance Agenda.
Temporal Indexing MVBT. Temporal Indexing Transaction time databases : update the last version, query all versions Queries: “Find all employees that worked.
Spatio-Temporal Databases. Term Project Groups of 2 students You can take a look on some project ideas from here:
Jeremy Iverson & Zhang Yun 1.  Chapter 6 Key Concepts ◦ Structures and access methods ◦ R-Tree  R*-Tree  Mobile Object Indexing  Questions 2.
1 Spatial Query Processing using the R-tree Donghui Zhang CCIS, Northeastern University Feb 8, 2005.
CSIS7101 – Advanced Database Technologies Spatio-Temporal Data (Part 3) The MV3-Tree: A Spatio-Temporal Access Method for Timestamp and Interval Queries.
Spatial Data Management
Mehdi Kargar Department of Computer Science and Engineering
Spatio-Temporal Databases
Chapter 25: Advanced Data Types and New Applications
Temporal Indexing MVBT.
Temporal Indexing MVBT.
Spatio-Temporal Databases
Temporal Databases.
Temporal Databases.
Spatial Indexing I R-trees
Presentation transcript:

Spatio-Temporal Databases

Outline Spatial Databases Temporal Databases Spatio-temporal Databases Multimedia Databases …..

Introduction Spatio-temporal Databases: manage spatial data whose geometry changes over time Geometry: position and/or extent Global change data: climate or land cover changes Transportation: cars, airplanes Animated movies/video DBs

ST DBs A special Temporal Database All the features of temporal database Attributes can be spatial also Extension of Spatial Databases Objects change instead of being static At any timestamp it is a conventional Spatial Database New Database type

Requirements Efficient Representation of Space and Time Data Models Query Languages Query processing and Indexing GUI for spatio-temporal datasets

Spatio-temporal Objects

ST Queries Selection Queries: “find all objects contained in a given area Q at a given time t” NN queries: “find which object became the closest to a given point s during time interval T,” Aggregate queries: “find how many objects passed through area Q during time interval T,” or, “find the fastest object that will pass through area Q in the next 5 minutes from now”

ST Queries join queries: “given two spatiotemporal relations R1 and R2, find pairs of objects whose extents intersected during the time interval T,” or “find pairs of planes that will come closer than 1 mile in the next 5 minutes” similarity queries: “find objects that moved similarly to the movement of a given object o over an interval T”

SP Data Types Moving Points Extent does not matter Each object is modeled as a point (moving vehicles in a GIS based transportation system) Moving regions Extent matters! Each object is represented by an MBR, the MBR can change as the object move (airplanes, storm,…)

SP Data Types Different Type of changes: Changes are applied discretely Urban planning: appearance or dis-appearance of buildings Changes are applied continuously Moving objects (eg. Vehicles)

Trajectories Moving objects create trajectories Usually we can sample the positions of the objects at periodic time intervals  t Linear Interpolation:easy and usually accurate enough Trajectory: a sequence of 2 or 3-dim locations

Temporal Environment Transaction or Valid time: (usually we assume transaction time) Two types of environments: Predicting the future positions: Each object has a velocity vector. The DB can predict the location at any time t>t now assuming linear movement. Queries refer to the future Storing the history. Queries refer to the past states of the spatial database

The Historical Environment Spatio-temporal Evolution

Indexing using R-trees Assume that time is another dimension, use a 3D R-tree Store the objects as their 3D MBR. How to compute that?

Problems of 3D R-tree How to store “now”? Use a large value… Common ending problem Long lived objects will have very long MBRs, difficult to cluster Extensive overlap and empty space  bad query performance for specific queries Also, works only for discrete changes

PPR-tree Better idea, partially persistent R-tree Two approaches: Multiversion and overlapping Multi-version: use the idea of the MVBT applied to R-tree.

Indexing Moving Objects The problem of indexing any type of moving objects can be reduced to indexing discrete rectangles. Continuous pointsContinuous rectanglesDiscrete rectangles x y time t

Historical R-trees (HR-trees) o1o1 o2o2 o6o6 o7o7 o5o5 p1p1 p2p2 p3p3 o1o1 o2o2 o3o3 o4o4 o5o5 o6o6 o7o7 p1p1 p2p2 p3p3 o4o4 o3o3 timestamp 1 An R-tree is maintained for each timestamp in history. Trees at consecutive timestamps may share branches to save space.

Historical R-trees An R-tree is maintained for each timestamp in history. Trees at consecutive timestamps may share branches to save space. p1p1 p2p2 p3p3 o1o1 o2o2 o3o3 o4o4 o5o5 o6o6 o7o7 timestamp 1p1p1 p2’p2’p3’p3’ o3o3 o4o4 timestamp 2 o3o3 o4o4 o5’o5’ o1o1 o2o2 o6o6 o7o7 o5’o5’ p1p1 p2’p2’ p3’p3’ o4o4 o3o3

HR-trees: Pros and Cons HR-trees answer timestamp queries very efficiently. –A timestamp query degenerates into a spatial window query handled by the corresponding R-tree at the query timestamp. Not quite efficient: –Expensive space consumption. A node needs to be duplicated even when only one object moves. –Interval query processing is inefficient. Although redundancy (from duplication) is necessary to maintain good timestamp query performance, it is excessive in HR-trees.

MVR-tree Consider a 2D R-tree that evolves over time Use the Multiversion B-tree approach to store the evolution of the tree… Need to consider some “spatial” issues: No unique siblings, split methods, copies due to time split To insert a new object, compute a bounding box that encloses the object at all time instants, insert this bb as MBR

MVR-Tree An update or a query at some time instant t searches only among the spatial objects that are alive at t Space is linear to the number of updates, the problem of “now” is avoided Very efficient for snapshot or small interval queries

An improvement: The MV3R-tree [Tao & Papadias 01] The MV3R-tree consists of a multi-version R-tree (MVR- tree) and an auxiliary 3D R-tree built on the leaves of the MVR-tree. The MVR-tree is optimized from the original multi-version framework, taking into account spatial properties.

The Multi-Version Framework: Version Copy One important feature of multi-version framework is the utilization of version copies to handle node overflows. insert o 8, [3,*), and node B overflows A o 2, [1,*) o 3, [1,*) o 4, [1,*) o 5, [1,2) o 6, [1,*) o 7, [1,*) o 5 ’, [2,*) p 1, [1,*), A p 2, [1,*), B p 3 ’, [1,*), C o 1, [1,*) BC R1R1

3D Visualization of Version Copy o5o5 o3o3 o4o4 These two objects have copies in two nodes respectively. o6o6 Bounding boxes of the two nodes involved in version copy. Long bounding boxes are truncated naturally by introducing redundancy.

Redundancy in MVR-trees As with HR-trees, multi-version structures also aim at optimizing timestamp queries. –To achieve this goal, the original multi-version framework still leads to considerable redundancy, though much less than HR-trees. Excessive redundancy is harmful. –Space consumption is increased. –Compromise interval query performance, as multiple copies of the same object need to be retrieved.

Optimizing MVR-trees: Reducing Redundancy There are some heuristics to reduce data redundancy in MVR-trees in order to lower the space consumption and improve interval query performance. Insertion 1.General Key Split 2.Insert in node after reinserting one of the entries 3.Insert in another node 4.Version split The resulting trees contain much less redundancy –Lower tree sizes and accelerate interval queries. –Timestamp queries are only slightly compromised.

Interval Query with Multi-Version Structures Need to search several logical trees responsible for the queried timestamps. Since multiple parent entries may point to the same child node, it is imperative to avoid duplicate accesses to the child. –If a node is re-visited, the entire subtree rooted at the node needs to be re-visited. Solution? Keep a hash table, other solutions exist also.

Building a 3D R-tree on the Leaves of the MVR-tree Build a 3D R-tree on the leaf nodes of the MVR-tree The size of the 3D R-tree is much smaller than a complete 3D R-tree as the number of leaf nodes is significantly lower than the number of actual objects. Since the 3D R-tree is not an acylic graph but a tree, we do not have duplicate visit problem. Long interval queries are processed with the auxiliary 3D R-trees.

What about moving objects? Problem: the MBR representation creates large empty space Use artificial deletes, approximate the object using many small MBRs But then, the space is increased Use an algorithm to distribute a small number of splits to the objects that need them most

What about moving objects? If objects move with linear functions of time: Minimize total volume by splitting in equidistant points Given K splits you can decide the best splits in O(KlogN) time. Reference: [Tao & Papadias 01]:MV3R-Tree: A Spatio-Temporal Access Method for Timestamp and Interval Queries. VLDB 2001: VLDB 2001