Standing Query Evaluation Using Property-Based Hash Tables
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In multi-tenant cloud-based architectures, efficiently processing standing queries against continuously updated contact data poses a significant computational resource challenge, as existing systems require continuous re-searching of large datasets, leading to resource inefficiencies.
Innovation Solution
The method involves resolving standing queries into sets of rules, sorting facts into hash tables based on their properties, and comparing them to identify matching rules, thereby applying only the updated data (event stream) to the rules, reducing computational load by avoiding re-search of unchanged data.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If continuous re-searching of large datasets is performed to maintain real-time search capability, then search results remain current, but computational resources are consumed excessively
Solution Approach 1:
The patent segments the large contact database into smaller hash tables organized by properties (name, company, location, etc.). Instead of searching the entire database continuously, the system only evaluates standing queries against newly added or modified contact entries by hashing their properties and comparing with relevant hash table entries. This segmentation reduces the search space from millions of records to only the changed subset, maintaining real-time accuracy while minimizing computational resource consumption.
2Measurement precision
If standing queries are processed against all contact data periodically, then search accuracy is maintained, but processing time increases
Solution Approach 1:
The system performs preliminary organization of contact data into hash tables based on properties before queries need to be executed. When contact data changes, the system pre-computes hash values and updates only the relevant hash table entries. This preliminary structuring allows standing queries to be evaluated instantly against changed data without time-consuming full database scans, maintaining search accuracy while reducing processing time from periodic full scans to immediate incremental updates.
3Reliability
If the entire contact database is searched for each standing query, then all matching results are found, but computational complexity increases
Solution Approach 1:
The patent extracts only the necessary subset of contact data that is relevant to each standing query by using property-based hash tables. Instead of searching through all contact entries, the system extracts and compares only those entries that match the query criteria by hashing the query properties and retrieving corresponding hash table entries. This extraction approach ensures complete matching results while dramatically reducing computational complexity from O(n) full database scans to O(1) hash table lookups.
Data Source
AI summary
Methods and systems are provided for evaluating standing queries against updated contact entries configured as a stream of facts. The method includes resolving the standing queries into an array of rules, each rule having a first and a second condition; sorting one of the facts into a first property and a second property; comparing the first property of the fact to the first condition of each rule in the array of rules to produce a first subset of matching rules; comparing the second property of the fact to the second condition of each rule in the first subset of rules to produce a second subset of matching rules; and reporting at least one of the second subset of rules to an author of the matching rule. The method further includes populating a first hash with indicia of the first subset, and populating a second hash with the second subset.


