Full text: Proceedings, XXth congress (Part 8)

  
International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences, Vol XXXV, Part B-YF. Istanbul 2004 
  
      
Geo-Union 
Client 
Cache 
2 
Z1 Geo-Union 
       
Client. 
  
     
    
  
      
  
  
     
         
       
Geo-Union 
Client 
t 
= Network se 
N Cache 
=~ 
= 
ure Geo-Union 
- 2 - Spatial = = Client 2, Client 
= _ Database - i dd 
c 
   
Data Proxy 
Server. 
Cache 
t d Geo-Union| + 
Client 
Figure 2 Spatial Cache Framework 
    
    
    
      
Geo-Union 
Client 
Geo-Union 
Client 
      
(1) Cache for spatial database. Geo-Union server is the bridge 
between Geo-Union client and ORDB, so cache for spatial 
database is maintained by Geo-Union server. Cache is stored in 
both local file and memory. Because Geo-Union server can 
manage different spatial data resources, and also can reply 
different spatial data requests from different clients, so cache 
for spatial database is a global cache. 
(2) Network spatial cache. The bandwidth of different users in 
network is different, but public users of Internet always have 
low bandwidth. So when people use WebGIS applications, it is 
a lethal delay when spatial data is transferred from Geo-Union 
server. In Geo-Union client, we adopt a two-level spatial cache 
mode to relief transmission bottleneck of the network: 
The first network cache is used to help a single client access 
remote data: building a spatial cache in local place. This kind of 
cache is a partial cache, which is also a popular method in 
today's browser. 
The second network cache is used to help many clients in a 
LAN access remote data: building a common spatial cache for a 
LAN (cache server). Once a local client in the LAN accessed 
some spatial data, other clients can reuse the spatial data in 
cache server. Cache server is still a partial cache. 
Cache server can realize massive spatial data cache by means of 
the shared resources, which will speed up the hit rate of cache 
greatly, so as to improve efficiency of all local clients, and save 
resource of all local clients. Cache server solves the speed 
conflict between local disk data access and remote data access, 
and the speed conflict between the high-speed LAN and WAN 
with narrow bandwidth. 
(3) Spatial data proxy server. Because the distribution of users 
in Internet is not well-proportioned, so different Geo-Union 
servers are unbalanced. Some Geo-Union server and its 
communication may overload. Aiming to this problem, we 
design spatial data proxy server for those Geo-Union servers to 
improve performance. 
Spatial data proxy server is an initiative cache server. 
Overloaded Geo-Union server selects a suitable Geo-Union 
client and builds a spatial data proxy server there to response a 
special group of users. 
202 
In Geo-Union, spatial data proxy server serves as special server 
in Internet to provide spatial data access services for public 
users. The structure and implementation of spatial data proxy 
server is same as cache server, but they play a different role in 
Geo-Union. 
Cache server is private of a LAN, and clients in the LAN have 
to get an authorization before accessing to cache server. Spatial 
data in cache server is changing with different requests of 
clients in the LAN. 
Spatial data proxy server is public to all clients. Spatial data 
proxy server may serve as a peer of Geo-Union server. Spatial 
data proxy server can be built anywhere in Internet if needed. If 
spatial data in a spatial database is unchanged for a long time, 
spatial data proxy server can cache all spatial data of that spatial 
database. 
Building spatial data proxy servers properly in Internet will 
make Geo-Union applications more effective. 
2.2 Organization of Spatial Cache 
In Geo-Union, spatial cache is organized as three levels: layer, 
slot and entity. 
When creating a layer in spatial database, a GUID (Global 
Universal Identification) is generated to identify the layer, 
which is named as /ayer/D. When reading a layer into cache, 
the system will allocate a separate space for the layer according 
to its /ayerID. Whether a layer is valid in cache is determined 
by the /ayerVersion of the layer both in cache and in spatial 
database. 
Entities in a layer are always separated into different slots 
according to a certain rule. When reading a layer into cache, we 
do not read the whole layer, but read some slots of the layer. 
Slot brings two benefits: almost all spatial queries do not need a 
whole layer but only a certain scope in the layer, so when the 
layer is massive, reading relative slots can satisfy the 
requirement and will reduce network load greatly; less data will 
exhaust less computing resource and storage resource. The rules 
to organize slot are various. We can organize slots in a layer 
according to a correlativity of geographical location or a 
neighborhood geographical location. 4A  correlativity of 
geographical location means we can put entities along a railway 
into a slot, and a neighborhood geographical location means we 
will put entities in a certain spatial scope into a slot. Every 
entity in a layer belongs to a slot. When entities in any slots 
changed, the s/otVersion of the layer will change too. 
An update operation may modify only one or several entities in 
a layer, so /ayerVersion and slotVersion of the layer cannot 
reflect the latest modification of entities. We set a 
versionNumber for every entity, and when a entity changes, its 
versionNumber changes too. The entityVersion of a layer is the 
max versionNumber in the layer. When the versionNumber of a 
layer in cache is less than that in spatial database, some entities 
in cache is invalid and those entities that have larger 
versionNumber should be reloaded from spatial database into 
cache. 
2.3 Refresh and Pro-load Spatial Cache 
Refreshment of spatial cache can be done online or offline. 
Online refreshment means updating spatial data in cache at the 
 
	        
Waiting...

Note to user

Dear user,

In response to current developments in the web technology used by the Goobi viewer, the software no longer supports your browser.

Please use one of the following browsers to display this page correctly.

Thank you.