Geohash Depth Level Selection for Spatial Join Filtering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current database technologies face inefficiencies in filtering spatial data due to the high computational cost of determining spatial relationships, especially when dealing with large datasets, as traditional indexing methods are inadequate for multi-dimensional geometries and often result in excessive cell entries for varying geometry sizes.

Innovation Solution

The method involves selecting common geohash depth levels, generating a filter table, and creating filter entries to efficiently execute database queries by identifying the smallest common geohash depth level for geometries, reducing unnecessary calculations and improving query performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If traditional indexing methods are used for spatial data, then data organization is simplified, but computational cost increases and query performance deteriorates

Engineering Contradiction:
Improveindexing method complexityVSAvoidquery execution speed
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent segments spatial data into hierarchical geohash levels (e.g., level 0 to level 8), where each level represents a different granularity of spatial resolution. This segmentation allows the system to choose appropriate depth levels for filtering based on query requirements, avoiding the need to process all spatial data at maximum granularity and thus reducing computational cost while maintaining query accuracy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimensional approach by creating filter tables that store pre-computed geohash values at multiple depth levels. This adds a temporal/dimensional dimension to spatial indexing, allowing queries to leverage pre-processed spatial relationships rather than computing them in real-time, thereby improving query execution speed without significantly increasing structural complexity.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Productivity

If geohash structures are used to represent geographic locations, then spatial filtering efficiency improves, but system complexity and storage requirements increase

Engineering Contradiction:
Improvespatial filtering efficiencyVSAvoidsystem structure complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by pre-computing and storing geohash values at multiple depth levels in filter tables before queries are executed. This pre-processing step creates ready-to-use spatial filters that can be quickly applied during query execution, improving spatial filtering efficiency while managing system complexity through structured pre-computation rather than runtime calculation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent changes parameters by allowing dynamic selection of geohash depth levels (from level 0 to level 8 or higher) based on query specificities. This parameter flexibility enables the system to balance between filtering accuracy and computational efficiency, using coarser levels for broad filters and finer levels for precise queries, thereby improving overall efficiency without requiring the system to maintain all possible granularities simultaneously.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If all geohash depth levels are processed for spatial joins, then filtering accuracy improves, but computational load and processing time increase

Engineering Contradiction:
Improvespatial filtering accuracyVSAvoidquery processing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent introduces dynamics by making geohash depth level selection adaptive rather than static. The system dynamically chooses which depth levels to process based on query characteristics, data distribution, and performance requirements. This dynamic approach allows the system to maintain high filtering accuracy when needed while reducing processing time for less critical queries, resolving the contradiction between precision and speed.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent applies partial action by processing only the necessary subset of geohash depth levels for each query rather than all levels. The system determines the minimum required depth levels based on query bounds and data characteristics, performing just enough filtering to achieve acceptable accuracy without the overhead of processing all possible depth levels, thus reducing processing time while maintaining sufficient precision.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11487824B2Automated database query filtering for spatial joins
Publication Date: 2022.11.01 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11487824B2 patent drawing
  • US11487824B2 patent drawing
  • US11487824B2 patent drawing

AI summary

A method, system, and program product for implementing an automated query filtering process for spatial data is provided. The method includes selecting a set of common depth levels for geohash structures. Data indicating results of the selection is stored and a specified depth level of the set of common geohash depth levels is selected. The selected geohash depth level is associated with a spatial column for spatial data to determine a set of geohash depth levels required to generate geohash values. A filter table or index associated with the spatial column is generated based on the selected subset of common geohash depth levels and a relationship between the spatial column, the specified geohash depth level and the filter table is stored within a database. Geohash values for the filter table are generated and a query of the database is executed with respect to the specified geohash depth level, the filter entries, and the filter table.