Data Visualization Object Model for Multi-Table Accuracy
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Generating data visualizations that combine data from multiple tables is challenging, especially when there are multiple fact tables, as it often results in unclear or incorrect visualizations due to omitted data rows and overstated totals, which can be problematic for end users who are not aware of the issues.
Innovation Solution
Constructing an object model of the data before generating visualizations, which allows storing relationships and leveraging this information to assist users in building accurate data visualizations by identifying minimal subtrees, forming queries, and aggregating data values accordingly.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If data visualizations combine data from multiple tables without an object model, then data integration capability is improved, but data accuracy deteriorates due to omitted rows and overstated totals
Solution Approach 1:
The patent applies preliminary action by constructing an object model of the data schema before generating visualizations. This pre-established model captures relationships between tables, dimensions, and measures, enabling the system to later generate accurate queries that properly join multiple tables without omitting rows or duplicating data. The object model is built in advance to guide the query generation process.
Solution Approach 2:
The object model serves as an intermediary between the user's visualization requests and the underlying database tables. It acts as a mediator that translates high-level visualization specifications into accurate SQL queries, ensuring proper joining of tables and correct aggregation of measures while preventing data accuracy issues that would arise from direct table querying.
2Ease of operation
If users directly select fields from multiple data sources, then ease of operation is improved, but visualization reliability deteriorates due to unclear data relationships
Solution Approach 1:
The object model acts as an intermediary layer between user field selections and the actual data sources. It captures the semantic relationships between fields from different tables, allowing users to freely select fields while the system automatically ensures reliable visualization generation by using the object model to guide proper data joining and aggregation.
Solution Approach 2:
The system uses the object model to provide feedback about data relationships and compatibility when users select fields. This feedback mechanism helps users make informed selections while ensuring that the resulting visualization will be reliable, as the object model validates that proper joins and aggregations can be generated from the selected fields.
3Quantity of substance
If complex queries are generated to handle multiple fact tables, then data completeness is improved, but query complexity increases leading to performance degradation
Solution Approach 1:
The object model is constructed in advance to capture the schema structure, relationships, and join paths between tables. This preliminary structuring allows the query generation process to efficiently assemble complete queries without excessive complexity, as the join paths and relationships are already predetermined in the object model rather than being computed on-the-fly.
Solution Approach 2:
The query generation process is segmented into distinct steps: identifying required tables from the object model, determining necessary joins based on relationship paths, selecting appropriate aggregation operations for measures, and assembling the final query. This segmentation reduces overall query complexity by breaking down the complex task of handling multiple fact tables into manageable, systematic steps.
Data Source
AI summary
The method receives a visual specification, which specifies a data source, visual variables, and data fields from the data source. Each visual variable is associated with data fields and each data field is either a dimension or a measure. From an object model of the data source, the method identifies a minimal subtree that includes all of the dimension data fields and constructs a query from the minimal subtree. The method executes the query against the data source to retrieve a set of tuples, each tuple comprising a unique ordered combination of data values for the dimension data fields. For each tuple, the method forms an extended tuple by appending aggregated data values corresponding to each measure data field. The method then builds and displays a data visualization according to the data fields in the extended tuples and according to the visual variables to which the data fields are associated.


