Storage System Pattern Matching Accelerator for Host Performance
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Large storage systems face performance degradation when performing pattern matching due to excessive load, particularly when dealing with a vast amount of data, which can lead to inefficient operations and decreased performance.
Innovation Solution
A storage system equipped with a pattern matching accelerator that includes a scan engine and a scheduler, capable of dynamically assigning files to multiple scan engines, allowing for efficient pattern matching by controlling and optimizing the scanning process across multiple files.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Manufacturing precision
If pattern matching is performed on large amounts of data stored in the storage system, then the completeness of pattern matching is improved, but the host performance deteriorates due to excessive load
Solution Approach 1:
The patent extracts the pattern matching function from the host system and implements it as a dedicated hardware accelerator within the storage system. This separates the pattern matching workload from the host, allowing the host to maintain high performance while the accelerator handles the computationally intensive pattern matching operations on large datasets
Solution Approach 2:
The pattern matching accelerator acts as an intermediary between the host and the stored data. It receives pattern matching requests from the host, performs the matching operations independently, and returns results to the host, thereby shielding the host from the performance impact of processing large amounts of data
2Device complexity
If a single scan engine is used for pattern matching, then the device complexity is reduced, but the pattern matching speed deteriorates when handling multiple files
Solution Approach 1:
The patent divides the pattern matching functionality into multiple independent scan engines within the accelerator. Each scan engine can independently process different files or portions of files in parallel, significantly increasing the overall pattern matching speed while maintaining manageable complexity through modular design
Solution Approach 2:
The patent introduces parallelism as a new dimension for processing by implementing multiple scan engines that operate simultaneously. This transforms the pattern matching process from sequential single-engine operation to parallel multi-engine operation, exponentially increasing processing capacity for multiple files
3Productivity
If the scan engine continuously scans multiple files, then the productivity is improved, but the system stability deteriorates due to interruptions and resource conflicts
Solution Approach 1:
The patent implements a dynamic scheduling mechanism that can adaptively control the operation of multiple scan engines based on current system conditions, file characteristics, and resource availability. This dynamic management allows the system to maintain high productivity while avoiding interruptions and conflicts by adjusting the scanning workload in real-time
Solution Approach 2:
The scheduling mechanism incorporates feedback loops that monitor the state of scan engines and adjust their operation accordingly. When interruptions or resource conflicts are detected, the feedback system modifies the scanning behavior to maintain system stability while minimizing impact on overall productivity
Data Source
AI summary
Provided is a removable storage system including: a data storage device configured to store a plurality of files including a first file and a second file; a host interface configured to receive, from a host, a pattern matching request including pattern information and file information regarding the plurality of files, and transmit, to the host, a result of pattern matching regarding the plurality of files; and a pattern matching accelerator configured to perform the pattern matching in response to the pattern matching request, wherein the pattern matching accelerator includes a scan engine configured to scan data based on a pattern, and a scheduler configured to control the scan engine to stop scanning the first file and start scanning the second file.


