nt
re
nt
International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences, Vol XXXV, Part B4. Istanbul 2004
Where Nearest (Snapshot (position, NOW), Point (x, v), k) =
TRUE F
(2) Slice Queries
In this section, we show the example of the slice queries for
moving objects. The slice query requires the period parameter
as follows.
Example 6: Find the location of cellular phone user 1001
between time // and #2.
Select Project (Slice (location, 17, /2))
From People
Where id = 1001;
Example 7: Find people who were within Ikm from point (x, y)
between time // and /2.
Select id
From People
Where Withins (Slice (location, 11, 12), Buffer (MPoint (t1, t2, x,
y), 1000)) = TRUF;
Example 8: Find k people who were closest to the point (x, y)
time // and 2.
Select id
From People
Where Nearest (Slice (location, #1, 12), Point (x, y), 1) = TRUE;
(3) Trajectory Query
Trajectory query include the operations such as Enter(), Leave(),
Passes(), Insides(), Meets().
Example 9: Find people who were (at least once) in Daejeon
between time // and /2.
Select id
From People, Region
Where Passes (Slice (location, 17. 12), Region.area ) = TRUE
AND Region.name = 'Daejeon';
4. BUFFER MANAGEMENT MODULE (BMM)
The BMM plays an important role in enhancing the
performance of the query of location insertion. Locations of
moving objects are permanently stored into various types of
database systems by LSM. In this environment, it is difficult for
LSM to process every insertion request from QPM, because the
cost of insertion transaction is very high in database system and
insertion requests from QPM occurs very frequently. Therefore,
buffering of insertion request and batch processing are very
effective.
Another role of BMM is that when QPM issues a search request
BMM searches moving objects in the memory buffer, transfer:
the request into LSM, and then bind the results from the
memory buffer and those from permanent storage.
4.1 MORow Object
BMM stores locations of a moving object into a MORow object
for insertion request from QPM. There is one-to-one
relationship between a moving object and a MORow object.
Therefore, a MORow object take a responsibility for buffering
locations of a corresponding moving object. MORow object
depicted in Figure 8 is composed of MOID (Moving Object
113
[Dentifier), Length (the number of locations stored in it), MBR
(Minimum Bounding Rectangle of the locations), From (time
that first location in it is acquired) and To (time that last
location in it is acquired). The MaxLocation means the
maximum number of locations stored in a MORow object. If
the Length of a MORow Object is equal to the MaxLocation,
then all of the locations in the MORow object are transferred to
LSM in order to store permanently.
Memory Buffer
Pa "AGI 7 o00MM
ROID
ect ne ne acc tram ren pére ta ne net sin netteté met
?
i MOR ew
| E 307 3E NI RENN
—
Leesen[X, Y, Bere. Ties)
Lecerse[X, Y, Error, Timds
[eren T eren, Ti
[1 [ [LecatinfX ¥. Brror, Time)
i
Figure 8. Structure of Memory Buffer
4.2 Memory Buffer
The overall structure of memory buffer is composed of a set of
MORow objects. Each MORow object represents a trajectory of
a moving object from From time to To time. As the figure
indicates, there is a B-tree for indexing MOIDs of MORow
objects. The BMM, therefore, finds efficiently a corresponding
MORow object by using MOID.
5. LOCATION INDEXING MODULE (LIM)
According to the previous works (Pfoser et al., 2000; Kollios et
al, 1999; Nascimento and Silva, 1998; Vazirgiannis et al.,
1998; Song and Roussopoulos, 1987), there are three kinds of
location indexes for moving objects.
Current Location Indexes: The indexes of this type take only
current locations of continuously moving objects into
consideration. And current locations are also used for
anticipating future locations of moving objects. These indexes
should have capabilities to process frequently updates of
numerous moving objects.
Past Location Indexes for time interval (or time point) queries:
The indexes, such as 3DR-tree and HR-tree, have a special
purpose of efficient processing of a time interval (or time point)
queries for the current and past locations.
Past Location Indexes for trajectory queries: The indexes, such
as STR-tree and TB-tree, have a special purpose of efficient
processing of a trajectory queries for the past locations.
LIM we implemented in this paper supports all kinds of indexes
mentioned above. We implemented Adaptive Quad-tree (show
Figure 9) as current location index. This index partitioned