Query Graph Bitsets for Real-Time Segment Updates
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data management systems struggle with inefficiencies in providing real-time segment information due to high data volume and complexity, necessitating frequent recalculations of static database queries, which can be resource-intensive and impractical.
Innovation Solution
Implementing bitsets at each node in a graph representative of a query to store set membership, allowing selective recomputation based on events and reducing the need for full query executions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If static database queries are executed at specific intervals to provide segment information, then real-time segment information is provided, but computational resources are wasted due to frequent full query executions
Solution Approach 1:
The patent segments the query execution process by representing queries as graphs with nodes and edges. Bitsets are stored at individual nodes to track set membership, allowing the system to selectively recompute only the portions of the query that have changed rather than executing the entire query from scratch. This segmentation enables efficient incremental updates while maintaining real-time accuracy.
Solution Approach 2:
The patent performs preliminary actions by pre-computing and storing bitsets at each node in the query graph during initial query execution. These pre-stored bitsets represent set membership information that can be quickly updated or reused, eliminating the need to recompute the entire query structure when minor changes occur, thus reducing computational waste while maintaining real-time information accuracy.
2Reliability
If full database queries are executed frequently to maintain segment information with growing data volume, then accurate segment information is provided, but system performance deteriorates due to increasing computational complexity
Solution Approach 1:
The patent divides the query into a graph structure where nodes represent intermediate results and edges represent operations. By storing bitsets at each node, the system can identify and recompute only the specific nodes that have changed, rather than re-executing the entire query. This segmentation maintains accuracy while significantly improving system performance as data volume grows.
Solution Approach 2:
The patent changes the representation parameters from traditional relational query results to bitsets stored at graph nodes. This parameter change enables efficient comparison and updating operations, where the system can quickly determine which nodes need recomputation by comparing bitset states, thereby maintaining accurate segment information with improved productivity even as data volume increases.
3Adaptability or versatility
If traditional static queries are used to categorize entities, then segment information is provided, but the system cannot efficiently handle real-time updates due to the need for complete query re-execution
Solution Approach 1:
The patent transforms the static query execution model into a dynamic system where bitsets are stored at graph nodes and can be incrementally updated. When data changes occur, the system dynamically identifies affected nodes and updates only those portions of the query result, enabling real-time adaptability without requiring complete re-execution of the query, thus reducing time loss while improving update capability.
Solution Approach 2:
The patent implements a feedback mechanism where the system monitors changes in the underlying data and uses this information to selectively update bitsets at affected nodes in the query graph. This feedback-driven approach enables the system to adapt to real-time changes efficiently by recomputing only the necessary portions of the query, minimizing time loss while maintaining versatile real-time update capability.
Data Source
AI summary
A computer system and computer-implemented method are provided for executing computational queries. The method includes executing a query comprising at least one predicate, each predicate determining whether each of a plurality of entities is a member of a corresponding set for that predicate. The method also includes storing a bitset indicating set membership for the entities at each node in a graph representative of the query, wherein the bitset stored at a terminal vertex in the graph provides an output indicative of set membership for the query.


