Storage Metadata Pre-Storage Operation Association

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current storage systems lack the ability to efficiently associate and perform pre-storage operations on data, leading to suboptimal storage resource utilization and compression results, as well as increased I/O exchanges in distributed systems.

Innovation Solution

A storage system that allows users to associate pre-storage operations with sets of data prior to storage, using storage metadata to determine the appropriate operations based on data type, granularity, and precedence, enabling efficient compression, encryption, and error correction techniques.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If pre-storage operations are not associated with data sets, then the storage system is simpler to operate, but compression performance and storage resource utilization deteriorate

Engineering Contradiction:
Improvecompression performanceVSAvoidease of operation
Core Design Contradiction:
Manufacturing precisionVSEase of operation

Solution Approach 1:

The storage system automatically determines and applies appropriate pre-storage operations to data sets based on their characteristics without requiring manual configuration. The system self-manages the association between data sets and operations by examining data types, granularities, and precedence rules, eliminating the need for users to manually configure compression settings while achieving optimal compression performance.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system changes operational parameters dynamically based on data characteristics. By declaring directives that specify data types, granularities, and precedence levels, the system adapts the pre-storage operations applied to different data sets, transforming a static storage system into one that automatically optimizes compression parameters based on the specific characteristics of each data set.

Inventive Principle:
Principle #35Parameter changes

2Manufacturing precision

If pre-storage operations are manually configured for each data object, then compression results improve, but the complexity of the system increases

Engineering Contradiction:
Improvecompression resultsVSAvoidsystem complexity
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The patent creates a universal framework for pre-storage operations that can handle multiple data types, granularities, and operation kinds through a single declarative directive system. Rather than requiring separate manual configurations for each data object, the system defines operations at higher levels (data types, granularities) that automatically apply to multiple data objects, reducing system complexity while maintaining optimal compression results.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The system performs preliminary configuration by declaring directives that establish pre-storage operations for categories of data (data types, granularities) before actual data storage occurs. This preliminary action creates a template system where future data objects automatically inherit appropriate operations based on their classification, eliminating the need for manual configuration of each individual data object while maintaining high compression results.

Inventive Principle:
Principle #10Preliminary action

3Quantity of substance

If pre-storage operations are applied to all data, then storage resource utilization improves, but I/O exchanges in distributed systems increase

Engineering Contradiction:
Improvestorage resource utilizationVSAvoidI/O exchanges
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent applies pre-storage operations selectively based on local data characteristics rather than uniformly to all data. By defining operations at specific granularities (column, table, database levels) and specifying data types that qualify for particular operations, the system applies compression only where beneficial, reducing unnecessary I/O exchanges in distributed systems while maintaining high storage resource utilization for data that benefits from compression.

Inventive Principle:
Principle #3Local quality

4Manufacturing precision

If fine-tuning of operations is enabled at data type level, then compression performance improves, but the difficulty of configuring the system increases

Engineering Contradiction:
Improvecompression performanceVSAvoiddifficulty of configuring
Core Design Contradiction:
Manufacturing precisionVSDifficulty of detecting and measuring

Solution Approach 1:

The system performs preliminary configuration by establishing pre-storage operations at the data type level through declarative directives before actual data storage. Users declare the desired operations, data types, and granularities in advance, and the system automatically applies these configurations to matching data objects. This preliminary action simplifies the configuration process by eliminating the need for manual fine-tuning of each data object while achieving optimal compression performance through type-based generalization.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10002145B2Declaring directives in a data store
Publication Date: 2018.06.19 EMC IP HLDG CO LLC
  • US10002145B2 patent drawing
  • US10002145B2 patent drawing
  • US10002145B2 patent drawing

AI summary

A specified data type and pre-storage operation are receive. In response, an association between the two is created in storage metadata. After the association is created, data to be stored is received where the data has a data type. In response to receiving the data, the storage metadata, including the association, is accessed and it is determined if the data type of the data is the same as the specified one. If so, the specified pre-storage operation is automatically performed on the data in order to obtain an output and the output is stored.