Google Caching for GIS Field Operations
A frequently overlooked capability of Google Earth is its ability to cache data on your local computer and therefore allow for field based visualizations of GIS data. In a typical office setting, Google Earth uses streaming imagery over a high speed Internet connection to provide you with images and vector datasets. However, many GIS users need to be able to visualize Google Earth imagery and their own internal datasets while in the field where high speed connections to the Internet are not available or impractical. In this post/article we are going to take a look at how you can cache Google imagery and vector datasets to your laptop for offline viewing in the field. In addition, we are also going to take a brief look at a number of tools that you can use to integrate your existing vector ArcGIS datasets with this cached data.
Virtually any industry that makes use of GIS in field situations can benefit from the use of Google Earth caching technology to display high resolution imagery and vector datasets. Some, but certainly not all industries which can benefit from this capability include:
- Environmental Management
- Fire, Police, Emergency Mangement
- Local, State, and Federal Government
- Wildlife Management
- Many Others
How it Works
As we mentioned earlier, Google Earth typically streams imagery over a high speed Internet connection from Google’s servers to your computer. As this data is streamed to your computer it is saved to the cache for performance reasons, but can also be used for offline viewing when you don’t have an Internet connection. The term “cache” as we use it in this case refers to files that are on your computer which store the imagery and/or vector datasets that are streamed into Google Earth. At a physical file system level, the cache is composed of a dbCache.dat and dbCache.dat.index file. These are the files where the imagery is actually stored and indexed, and they can be found in the c:\Documents and Settings\<username>\Local Settings\Application Data\Google\GoogleEarth directory as you can see below. Once you no longer have a connection to the Internet, Google Earth will display the information stored in these files.
The Google Earth cache is limited in size to 2GB, but by default it is not set to this upper limited so you will need increase the cache size so that it can hold the maximum amount of data. The cache uses a recently used algorithm. What this means is that the older data in your cache will be removed from the cache after the maximum amount of data has been stored in the cache and new data enters the cache. Because you are limited in size to 2GB you will need to limit the geographic area you intend to visualize in the field.
While creating your cache you will need to keep in mind that Google Earth will cache exactly what you see so make sure you are at a scale that gives you the level of detail you want. Furthermore, you must also move slowly enough to give Google Earth time to fully load the data into the viewer before panning, zooming, tilting, etc. Finally, make sure you turn on any vector layers you wish to visualize before you cache the data. This would include layers such as roads, borders, parks, etc.
How to Create the Cache
The cache parameters for Google Earth can be accessed by selecting Tools à Options from the main Google Earth menu and then clicking the Cache tab. This will present the dialog box that you see below. In addition to controlling the cache size from this dialog box you can also clear the memory and disk caches an delete the cache file if necessary.
The Disk Cache Size is the parameter we are most concerned with in this article as it controls the storage of data for later offline use. This parameter can and should be set as high as 2GB (2000MB) for instances where you are planning to work with Google Earth in an offline mode. The value you enter in this field should be set in MB which means a value of 2000 equals 2GB.
The Memory Cache Size parameter can be used to alter the amount of memory dedicated to processing data in Google Earth. This can greatly improve the performance of Google Earth, but can result in a performance degradation of other applications running on your computer. The available memory is dependent on the specifics of your computer. You don’t need to know the actual limits of your computer’s memory because Google Earth automatically limits the size according to the physical memory available on your computer.
Once these parameters have been set you will need to navigate to your area of interest and remember to keep in mind the following guidelines:
- Select a limited geographic area that covers your study area
- Make sure you are at a scale that gives you the level of detail you want
- Move slowly to give Google Earth enough time to fully load the data into the cache
- Turn on any vector layers you wish to capture in the cache
Click here to see a demonstration of using Google Earth’s caching functionality.
ArcGIS Tools for Integration of Organization Specific Data
Using the Google Earth cache is all well and good when you need to see Google Earth imagery and vector datasets, but many users also want to visualize their existing ArcGIS format datasets into the field as well. This can be accomplished through a number of existing ArcGIS Extensions. I’ll save a detailed discussioin of these extensions for a later post, but for now I’d like to highlight the process that can be used to accomplish this task. There are a number of superb ArcGIS extensions available for converting existing ArcGIS data into KML format including Arc2Earth, KML Home Companion, and Export to KML. In addition, there are also non-ArcGIS tools such as Shape2Earth which can also be used to convert shapefiles to KML. Some tools, like Arc2Earth Publisher enable you to schedule the export of your data at pre-determined times. For instance, you could use the scheduling functionality in Arc2Earth to automatically publish your ArcGIS data to a KML file each morning before going out into the field. This process combined with your Google Earth cache files would give you access to current GIS data that can be visualized in Google Earth along with your background imagery and additional vector datasets. This represents a very powerful and useful way to work with your data in the field. One additional consideration that I’d like to address concerns the export of your ArcGIS data using these tools. I frequently get questions from users who are concerned about privacy issues surrounding the possibility of their local GIS data being uploaded to Google’s servers. This in fact is not the case since KML/KMZ export files created by these tools are written to your local file system. Your local data is not being uploaded to Google.
For more information about the integration of Google Earth and ArcGIS please see our virtual training course “Integrating ArcGIS Desktop and Google Earth”.