Persistent GIS Map Caching via Hash-Based Client Control
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current GIS mapping systems face delays and resource drainage due to data transfers associated with rendering maps, especially in mobile devices with suboptimal connectivity, and existing cache solutions require substantial memory resources and server processing.
Innovation Solution
A system that selectively and persistently stores GIS map images in non-volatile local memory, where the client determines which images to cache based on demand, using standardized identifiers and hash codes to manage memory resources efficiently, and removes older or less frequently used images to maintain storage capacity.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If tile images are retrieved from remote spatial server for each map rendering request, then map rendering can be performed with minimal local memory usage, but data transfer causes delays and drains processor resources especially in mobile devices with suboptimal connectivity
Solution Approach 1:
The system performs preliminary actions by caching frequently accessed tile images in local non-volatile memory before they are actually needed. The client device proactively downloads and stores tile images corresponding to frequently accessed map locations or previously viewed areas, so that when these tiles are needed for rendering, they are already available locally, eliminating data transfer delays and reducing processor resource consumption during actual map rendering operations
2Productivity
If tile images are cached in local memory to reduce data transfer delays, then map rendering speed improves, but substantial memory resources are required and server must maintain resources to prepare and transmit extracts
Solution Approach 1:
The system applies local quality by making the caching behavior adaptive and location-specific. Different client devices maintain different cache contents based on their individual usage patterns, geographic locations, and access histories. The server provides guidance information about which tiles to cache, but each client independently manages its own cache, allowing memory-constrained devices to use less local storage while still achieving fast rendering for their specific use cases
Solution Approach 2:
The caching system is dynamic rather than static. The client device continuously monitors which tiles are frequently accessed and dynamically adjusts its cache contents accordingly. When storage space becomes limited, the system dynamically evicts less frequently accessed tiles and makes room for newly identified frequently accessed tiles, allowing the cache to adapt to changing usage patterns over time
3Reliability
If extracts are compiled by GIS server and transmitted to client for caching, then tile images are available regardless of connectivity status, but server must maintain substantial hardware, firmware, or software resources to prepare and transmit extracts
Solution Approach 1:
The system extracts only the essential identification information (hash codes) from the tile images rather than extracting and transmitting the actual tile image data. The server generates hash codes that uniquely identify tile images and transmits these compact identifiers to the client. The client uses these hash codes to independently retrieve the actual tile images from the server when needed, eliminating the need for the server to maintain complex extract compilation and transmission infrastructure while still ensuring tiles are available offline
Data Source
AI summary
The present disclosure relates to a geographic information system (GIS) for collecting data for future usage. In operation, a spatial server receives an image request to a client device, applies a hash function to the image request to generate a standardized identifier. The GIS client device uses the standardized identifier, attributes of GIS data associated with the standardized identifier or the GIS data, or attributes of GIS data associated with a stored identifier that corresponds to the standardized identifier to determine whether to retrieve or cache a GIS data associated with the standardized or stored identifier for display on the client device.


