that is capable to estimate the VR based on the
observed querying events. When the DB server does
not provide the NNVRs, the proxy cache server
invokes the Right-hand algorithm proposed in Gao
and Hurson (2005) to compute the nearest neighbor
estimated validity region (NNEVR) with 3 or more
querying events known to be within the result
object’s NNVR.
Our analysis revealed that NNVRs imply
neighboring objects’ locations and their partial
NNVRs. This research identifies the value of the
hidden information and proposes an iNN_EVR
algorithm, which generates NNEVR by exploiting
both querying history and the cached content at the
proxy cache server. The experimental results will
demonstrate that iNN_EVR algorithm improves the
proxy cache performance by reducing the query
response time as well as the number of NN queries
processed by the DB server.
The rest of this paper is organized as follows.
Section 2 reviews the existing work related to LDQ
caching and NNVR estimation. Section 3 reveals the
information carried in NNVRs, proposes the
iNN_EVR algorithm, and examines the algorithm
with a running example. Section 4 presents the
simulation model and analyzes the experimental
results. Finally, section 5 concludes this paper and
outlines our future research directions.
2 RELATED WORK
The idea of queries with location constraints was
originally introduced by Imielinski and Badrinath
(1992), and has been further discussed in many other
research works such as Forman and Zahorjan
(1994), Dunham and Kumar (1998), Seydim,
Dunham, & Kumar (2001), Lee, Lee, Xu, et al
(2002). Naturally, mobile users are likely to query
data and services relevant to their current positions.
Barbara (1999) named this class of queries the
location dependent query (LDQ). Seydim, Dunham,
& Kumar (2001) distinguished LDQs from other
queries with location constraints: a query whose
result depends on certain location attributes is a
location aware query (LAQ), while a LDQ is a query
whose result depends on the mobile user’s current
location. Two common types of LDQ are NN
queries and range queries. A NN query retrieves the
data object satisfying the query that is the closest to
the querying location, while a range query retrieves
all satisfying data objects within the specific range
(Guting 1994).
Location dependent data cache also received
much research attention. Ren and Dunham (2000)
proposed a semantic caching scheme for location
dependent results, which stores the query results and
the semantic description of the queries (i.e., the
query selection relationships, selection attributes,
selection conditions, and the bound of locations).
This semantic caching scheme reduces the network
traffic and allows partial query resolution as well as
query resolution during the disconnection. Taking
validity information into the consideration, Zheng,
Xu, & Lee (2002) presented algorithms for cache
invalidation and cache replacement strategies. Hu,
Xu, Wong, et al (2005) presented a proactive
caching approach, which caches both query results
and their index in order to answer different types of
queries.
There are several algorithms for the DB server
to determine NNVRs. Zheng and Lee (2001) built
the static Voronoi diagram (VD) to partition the
search space based on the VR of each data object.
The NN query result is the object whose Voronoi
cell (VC) covers the querying location, and its VC is
the corresponding NNVR. The VD, however, is
expensive to maintain due to database updates, and
it is also inapplicable for the k nearest neighbor (k-
NN) query when k is unknown. Even when k is
known, an order-k VD is very expensive in terms of
computational and storage overhead as pointed out
by Zhang, Zhu, Papadias, et al (2003).
Consequently, Zhang, Zhu, Papadias, et al (2003)
introduced algorithms to calculate NNVRs during
the run time. It avoids the large storage overhead but
introduces extra computing and I/O cost.
In an attempt to obtain the validity region, Gao
and Hurson (2005) proposed a proxy cache scheme
associated with Right_hand algorithm to compute
NNEVRs based on the querying history observed by
the proxy server. This algorithm works for NN
query and other LDQs with convex VRs. To
generate the NNEVR for a NN result, Right_hand
algorithm searches the querying history and finds
the querying locations where the same NN query
returns the identical result. Because all these
querying locations lie in the result’s NNVR and all
NNVRs are convex polygons, Right_hand algorithm
returns the convex hull, minimum convex polygon,
of these querying locations as the NNEVR.
The works thus far discussed have overlooked
useful information in the cached NNVRs that
implies neighboring objects’ locations. Section 3
will identify the hidden information and illustrate
the approaches to improve NN caching performance.
ICSOFT 2007 - International Conference on Software and Data Technologies
130