Trainable Hashing for Rules Engine Cache Miss Reduction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing rules engines face inefficiencies in processing time and resource utilization due to the increasing number of rules and complex interactions, particularly when deriving the same query results repeatedly, which can be exacerbated by naive cache management strategies.
Innovation Solution
Implementing a caching layer that utilizes a trainable hash function to predict and infer incoming event schemas and signatures using machine learning, allowing efficient access to cached query results by filtering and hashing variable attributes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a rules engine processes a large number of rules to handle complex business logic, then the system's adaptability and functionality are improved, but processing time and computational load increase
Solution Approach 1:
The patent implements a caching layer that pre-computes and stores results of rule evaluations. When the same input data is processed again, the cached results are retrieved instead of re-executing the rules, thereby reducing processing time while maintaining the ability to handle complex business logic through the rules engine
2Quantity of substance
If naive cache management strategies are used to store query results, then memory usage increases, but cache efficiency decreases and processing time increases
Solution Approach 1:
The patent employs trainable hash functions that learn optimal parameter configurations for caching. The hash function parameters are trained to maximize cache hit rates by predicting which query results are likely to be requested again, thereby improving cache access efficiency while managing memory usage effectively
3Adaptability or versatility
If the number of rules and rule interactions are increased to handle more complex scenarios, then system versatility is improved, but computational operations and network utilization increase
Solution Approach 1:
The caching layer pre-evaluates and stores results of complex rule interactions. When similar queries are received, the system retrieves cached results instead of re-executing numerous rules and their interactions, thereby reducing computational resource utilization while maintaining the ability to handle complex scenarios
Data Source
AI summary
Technology is described for an object cache layer for a rules engine. The object cache layer may store derived objects. The object cache layer may take advantage of machine learning for incoming objects that have variable attributes. A trainable hash function may use a machine learning model to predict the incoming event schema and signature of derived objects from the incoming objects or queries. The trainable hash function may determine an incoming event schema and signature of a derived object using the machine learning model and a set of attributes of an incoming object. A cache manager of the object cache layer may use a hash value determined by the trainable hash function using the signature of the incoming object to determine whether to access the derived object in the cache. The trainable hash function may be trained at runtime using training signatures from the rules engine on cache misses.


