Semantic Query Graph Caching for Faster Dashboard Loading
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing business intelligence systems face challenges in improving user experience by reducing response times to user requests and loading dashboards faster, particularly in handling changes in view displays of widgets.
Innovation Solution
Implementing a semantic knowledge graph to predict upcoming user queries and cache potential query results, utilizing a cache efficiency method that selects cacheable query nodes based on relationship strengths, stores results, and generates a query execution plan for efficient query execution.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If query results are cached to improve response time, then user experience is improved, but cache memory is consumed
Solution Approach 1:
The system performs preliminary actions by predicting future user queries using a semantic knowledge graph before the queries are actually executed. Query results are pre-computed and cached in advance based on predicted user needs, so when users actually make these queries, the results are already available in the cache, dramatically reducing response time without waiting for actual query execution
Solution Approach 2:
The system changes the parameter of cache utilization by dynamically selecting which query nodes to cache based on their predictability score and connection strength in the semantic knowledge graph. Instead of caching all queries or using fixed caching strategies, the system adapts the caching parameter selection based on predicted query patterns and relationship strengths, optimizing the balance between cache memory usage and response time improvement
2Productivity
If more query results are cached to improve responsiveness, then user experience is improved, but system complexity increases
Solution Approach 1:
The semantic knowledge graph serves as an intermediary between the user's current query and potential future queries. It models relationships between query nodes and enables the system to predict upcoming queries without directly analyzing user behavior patterns or maintaining complex user profiles. This intermediary structure simplifies the prediction mechanism while improving responsiveness
Solution Approach 2:
The system performs preliminary actions by building and maintaining a semantic knowledge graph that captures relationships between queries in advance. This pre-established knowledge structure enables efficient prediction of future queries without requiring complex real-time analysis, thereby improving responsiveness while keeping the system architecture manageable
Data Source
AI summary
A system and method for improving cache efficiency. A method includes selecting at least one cacheable query node of a plurality of query nodes from a semantic knowledge graph, wherein the semantic knowledge graph includes the plurality of query nodes and a plurality of edges, each edge connecting two of the plurality of query nodes and having a connecting score, wherein the connecting score of each edge indicates a strength of relationship between the two nodes connected by the edge; storing a result of executing a query generated based on the at least one cacheable query node in a cache; and generating a query execution plan based on the at least one cacheable query node, wherein the generated query execution plan includes at least one instruction for query execution using the stored result.


