Sequence OLAP Engine Pattern Grouping
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional online analytical processing (OLAP) systems are unable to effectively handle and analyze sequence data, which is common in real-life applications such as stock market data and RFID logs, due to their lack of support for sequence data analysis and pattern-based grouping.
Innovation Solution
A sequence online analytical processing (S-OLAP) system is developed, which includes a sequence cuboid builder that uses a WHERE clause, CLUSTER BY, SEQUENCE BY, SEQUENCE GROUP BY, and CUBOID BY clauses to analyze event databases, supporting pattern-based grouping and aggregation through operations like APPEND, PREPEND, and abstraction level modifications.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If traditional OLAP systems are used to process data, then independent records can be summarized and analyzed, but sequence data with logical ordering cannot be handled effectively
Solution Approach 1:
The patent segments the data processing task into distinct phases: clustering events into sequences, forming sequences from clusters, grouping sequences by dimensions, and finally computing cuboids. This segmentation allows each phase to handle specific aspects of sequence data processing independently, resolving the contradiction between handling sequence data and maintaining analysis accuracy.
Solution Approach 2:
The patent introduces a new dimension of sequence ordering to the traditional OLAP framework. By adding sequence formation and sequence grouping operations alongside the conventional dimension grouping, the system extends OLAP capability to handle ordered data while preserving the mathematical rigor needed for reliable analysis.
2Adaptability or versatility
If traditional OLAP operations are applied to sequence data, then basic aggregation can be performed, but pattern-based grouping and analysis are not supported
Solution Approach 1:
The patent creates a universal framework that encompasses both traditional OLAP operations and new sequence-specific operations. The S-OLAP system integrates clustering, sequence formation, sequence grouping, and cuboid computation into a single unified system that can handle both independent records and sequence data, avoiding the need for separate specialized systems.
Solution Approach 2:
The patent performs preliminary actions by pre-defining the sequence of operations: first clustering events, then forming sequences, then grouping sequences by dimensions, and finally computing cuboids. This predetermined operational sequence simplifies the system structure by establishing a fixed processing pipeline, reducing the complexity that would otherwise arise from handling multiple arbitrary operations.
3Ease of operation
If sequence data is analyzed using conventional methods, then basic statistics can be obtained, but interactive exploration at different summarization levels is not enabled
Solution Approach 1:
The patent performs preliminary computation by pre-grouping sequences according to dimension attributes and pre-computing the cuboid structure at multiple levels of summarization. This preliminary organization of data allows users to interactively explore different views by simply navigating the pre-computed cuboid structure, avoiding repeated expensive computations and enabling fast interactive exploration.
Data Source
AI summary
A sequence online analytical processing (S-OLAP) system 50 for analysing an event database (41) storing events (12), the system (50) comprising: an S-OLAP engine (53) to compute an S-cuboid (49) for a query on the event database (41); a sequence query engine (54) to form part of the S-cuboid (49) by performing the steps of: selection, clustering, sequence formation and sequence grouping; a cuboid repository (52) to store computed S-cuboids (49) and to be searched by the S-OLAP engine (53) for an S-cuboid query to determine whether an S-cuboid has previously been computed; and a sequence cache (56) to cache constructed sequence groups.


