80 likes | 169 Views
Disposable Index for Moving Objects. Jing Dai 4/19/2009. Record Velocity for Location Prediction . Velocity Info is collected for Omit location update if velocity is stable Reduce communication between sensors and server
E N D
Disposable Index for Moving Objects Jing Dai 4/19/2009
Record Velocity for Location Prediction • Velocity Info is collected for • Omit location update if velocity is stable Reduce communication between sensors and server • Use predicted location if connection is lost Enhance usability of the system • Implementation • Client sends both location and velocity to database • Add temporal information to B-tree (Bx-tree)
Record Velocity for Location Prediction KEYspace KEYtime KEY =○ • Bx-tree 0 or 1: Identifying the half of B+-tree and determining reference time 1d value: representing the 2d location of the object being indexed. BT0 BT1 BT1 BT0 4T T 2T 3T 0 tnow
Update Cost on Bx-tree • Update locations for moving objects • Insert a new location to current sub-tree • Delete the old location from an old sub-tree • Why bother updating the old sub-trees? • Old sub-trees are to be deleted shortly • Updating old sub-trees make them smaller, but cost a lot…
Disposable Index • No Update on a non-current sub-tree • Create Use Dispose • When an object moves • Insert the new location into current sub-tree (as Bx-tree) • Locate the old location in corresponding sub-tree • Mark that location as obsolete in D-buffer • When search query executed • Search the window on each sub-tree • Validate the results against D-buffer
18 E C D 24 39 53 5 8 B A Data Pages F 0 5 6 8 15 18 20 24 28 39 48 53 56 61 … 21 22 25 26 37 38 41 42 20 23 24 27 36 39 40 43 19 18 29 28 35 34 45 44 16 17 30 31 32 33 46 47 15 12 11 10 53 52 51 48 14 13 8 9 54 55 50 49 1 2 6 57 56 61 62 7 0 3 4 5 58 59 60 63 Applied for Continuous Queries • SFC and B+-tree for continuous queries • Suitable for point data • Efficient update cost • Fixed SFC mapping Query Index (hashing) Object Index (Blink-tree) Object Index (Disposable tree) Objects and queries Query Results BT0 BT1 BT1 BT0 4T T 2T 3T 0 tnow
Formal Correctness Proof • Serializable isolation • Operations are serializable if and only if their conflict graph has no cycles • Deadlock free • Operations do not cause deadlock if they request data in the same order.