004
nts:
ocal
vide
ion)
DDI
ices
ocal
rder
BP-
°r to
y an
BP-
Ie ud
SS IS
/her
h is
net
th a
1D),
The
er is
rver.
ized
ed.
| the
d in
ating
BP-
«the
GLO
dress
IS in
with
then
with
e the
TERR
odes
node
od to
International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences, Vol XXXV, Part B2. Istanbul 2004
We can use documents clustering methods as (Baesa-Yates,
1999) to cluster the nodes in BP-GServices system. We treat
each node as a document, whose content is the services
description information (UDDI registry) contained in that node.
Thus we can cluster the nodes in BP-GServices according to the
services that the nodes can provide. Simply speaking, nodes in
the same cluster may provide more similar services than these
from different clusters. However, different from traditional
documents clustering methods that are based on a global data
view, BP-GServices is based on decentralized P2P network and
the nodes in the system are dynamic. Thus, we adopt a simple
local clustering strategy in BP-Services.
Here we use Boolean model to represent a peer services node.
There are two reasons for using Boolean model: 1) Boolean
model is easier to evaluate than vector space model (VSM); 2)
It is difficult to set the document vector space because there is
no deterministic global data view in P2P environment.
Given a peer services node p, there exists a set of keywords
extracted from the services description document of p. We
denote the set of keywords K,, and treat it equal to the node p
itself. For two services nodes p and q, suppose their keywords
sets are K, and K,, the similarity of the two nodes are defined as
follows:
| K, NK, |
Rae
sim(K
[A Kad
p?
Above, |e| indicates the cardinality of a set.
After joining the network, the node (say p) can begin to find its
neighbor by the following steps:
1) Through the ping-pong messages (Gnutella, 2004), it
contacts the set of peers within a certain number (say À) of
hops away from it. Let denote the set of peers as Peer(p,
k)-1q142....4.), and get these peers’ keywords sets
{Kili=1~n}.
2) Calculate the similarity of p and each peer in Peer(p, k),
i.e., (sim(p, q:)| i=1-n}.
3) Suppose q is the peer in Peer(p, k) that has largest
similarity with p, then take q as p's neighbor node, and
connect p and q by a direct link, which is termed neighbor
link of p and q.
Through the process of neighbor finding, the peers that share
services tend to be connected together by neighbor links, and
consequently form clusters of services peers. Considering the
dynamism of P2P system, the peers should update their
neighbors regularly.
3.4 GIS Services Generating in BP-GServices
In generic GIS, geographic information and data may be stored
in all kinds of databases or files. However, different from a
generic GIS, geographic information and data in BP-GServices
are provided in the form of Web services. Before these
geographic information and data are provided to users, they
must be wrapped into GIS Web services to be accessed by users
more conveniently. GIS Web services in the GServices
repository can be divided into two kinds: static GIS services
823
and dynamic GIS Web services. Static GIS services have been
generated before a user’s GIS service request and have been put
in the GServices repository to improve the GIS services
accessing speed, and Dynamic GIS Web services are not formed
until the GIS service request comes. There are two reasons to
use dynamic services: 1) the storage space of each peer node is
limited. 2) GIS services request of different users are different
and it isn’t realistic to produce all possible GIS services in the
GServices repository. Figure 3 illustrates the process of GIS
services generating.
G S servi ces request | fa S services returning
GSer vi ces Repository
| Static GS Dynamc GS
ser vi ces ser vices
G S servi ces generat i ng
4
Spatial Data
Engi ne
A
A
rv
| .
Rel ati on or i ent od | Shaya |
| |Deta Files
Database Dat abase M QU TES
Figure 3. GIS services generating in BP-GServices
When a GIS service is required to be generating, the following
steps are taken.
1) Firstly, read out the geographic information and data from
spatial database or files according to the GIS service
demand. When these geographic information and data are
from spatial database, they need to be transformed into a
common format, such as GML (GML, 2004) format.
2) Secondly, these geographic information and data are
wrapped into a static GIS Web service or a dynamic GIS
Web service according to different situation.
3) Finally, the generated GIS Web services are kept in
GServices repository.
3.5 GIS Services Discovery in BP-GServices
UDDI registries of a generic Web Services system are mainly
based on centralized approaches. When a user needs a GIS
service, he only need search the centralized servers that have
UDDI registries. Different. from that of a generic Web Services
system, these of GIS Web Services system are distributed on the
peer nodes. The request of GIS services submitted by the user
can be in the local GServices Repository or in the remote
GServices Repository. Since different peer nodes can have same
GIS Services in the GServices Repository, it is not necessary to
search the targeted services by traversing all peers one by one
and when a GIS Services that satisfies the requester’s
requirements is found, the discovery process should be stopped.
In BP-GServices, once a requester submits his/her GIS service
requirement, say a service query Q, the following process will
be launched: