Controller-Worker Search Architecture for Deduplicated Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data storage systems face inefficiencies in searching large datasets, particularly in deduplicated systems, due to the need for extensive indexing and the inability to handle character or binary byte searches effectively, leading to increased time and resource consumption.

Innovation Solution

A microservices architecture is employed to perform text searches on deduplicated data without constructing a reverse index, utilizing segment-based fingerprinting and metadata to efficiently locate search terms across segmented data, allowing for parallel processing and reduced resource utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If an index is built on client-written objects in a deduplicated storage system, then search efficiency is improved, but the index size becomes enormously large and storage space is wasted

Engineering Contradiction:
Improvesearch efficiencyVSAvoidindex size
Core Design Contradiction:
SpeedVSVolume of stationary object

Solution Approach 1:

The patent segments the index into multiple smaller indexes, each corresponding to a specific data chunk or segment in the deduplicated storage system. Instead of creating one massive index covering all data, the system divides the index into manageable pieces that can be stored and processed separately, significantly reducing the volume of any single index while maintaining search efficiency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates local indexes for specific data segments or chunks rather than a global index for all data. Each local index is optimized for its specific segment, allowing efficient searches within that segment while avoiding the need to maintain a large global index. This localizes the indexing function to match the local data structure.

Inventive Principle:
Principle #3Local quality

2Adaptability or versatility

If traditional indexing is used to support character or binary byte searches, then search versatility is improved, but the system becomes unable to handle such searches effectively due to index limitations

Engineering Contradiction:
Improvesearch capabilityVSAvoidsearch effectiveness
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent implements a dynamic indexing approach where the system can adapt the indexing strategy based on the search requirements. For character or binary byte searches, the system dynamically selects appropriate indexing methods or creates temporary indexes, rather than relying on a static indexing structure that may not support all search types effectively.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameters of the indexing system to support different search types. By adjusting indexing parameters such as granularity, data structure format, and organization method, the system can effectively handle character searches, binary byte searches, and other search types without compromising reliability.

Inventive Principle:
Principle #35Parameter changes

3Quantity of substance

If the storage system stores multiple petabytes of data, then data capacity is improved, but the time and resources required to conduct searches increase significantly

Engineering Contradiction:
Improvedata capacityVSAvoidsearch time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent divides large datasets into smaller segments or chunks, each with its own index. When a search is performed, the system only needs to query the relevant segment indexes rather than scanning through all petabytes of data. This segmentation approach maintains constant search time regardless of the total data capacity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an additional dimension to the storage architecture by creating a hierarchical indexing structure. Data is organized not just by content but also by spatial or logical dimensions (such as data chunks, segments, or partitions), allowing searches to navigate through multiple dimensions to quickly locate relevant data without examining the entire dataset.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS11461140B2Systems and methods for controller-worker architecture for searching a storage system
Publication Date: 2022.10.04 EMC IP HLDG CO LLC
  • US11461140B2 patent drawing
  • US11461140B2 patent drawing
  • US11461140B2 patent drawing

AI summary

A controller is provided to manage searching a storage system. A search query including a search term is received. The controller generates a set of tasks associated with conducting a search of the storage system for any objects in the storage system having the search term. These tasks are pushed onto a message queue. A set of workers are allocated to retrieve and process the tasks. A worker processes a task in parallel with another worker processing another task.