Data Storage Device Sub-Block Pointer Table

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Search and replace operations in computers are bandwidth intensive, CPU intensive, and time intensive due to the need to read entire data sets from storage into memory before processing, which is inefficient.

Innovation Solution

A data storage device that partitions data into unique sub-blocks, stores them in a deduplication data table, and uses a pointer table with linked lists to efficiently locate and replace data, reducing the need to read entire data sets by using hash-based indexing and linked lists to identify matching blocks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If entire data sets are read from storage into memory before processing, then search and replace operations can be performed, but bandwidth consumption increases

Engineering Contradiction:
Improvesearch and replace operation capabilityVSAvoidbandwidth consumption
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent divides the data into smaller units called sub-blocks (e.g., 4KB segments) rather than handling entire data sets as a single unit. This segmentation allows the system to read and process only the necessary portions of data, reducing bandwidth consumption while maintaining search and replace functionality.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts only the necessary data for processing by using a data table that maps sub-blocks to their locations in the data set. Instead of reading the entire data set into memory, the system extracts only the specific sub-blocks needed for search and replace operations, significantly reducing bandwidth requirements.

Inventive Principle:
Principle #2Taking out (Extraction)

2Productivity

If entire data sets are read from storage into memory before processing, then search and replace operations can be performed, but CPU processing load increases

Engineering Contradiction:
Improvesearch and replace operation capabilityVSAvoidCPU processing load
Core Design Contradiction:
ProductivityVSPower

Solution Approach 1:

By segmenting data into smaller sub-blocks and maintaining a data table with pointers to these sub-blocks, the CPU only needs to process the relevant portions of data rather than the entire data set. This reduces CPU processing load while enabling efficient search and replace operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a data table as an intermediary structure that maps sub-blocks to their locations in the data set. This intermediary allows the CPU to quickly locate and access only the necessary sub-blocks without processing the entire data set, thereby reducing CPU processing load.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If entire data sets are read from storage into memory before processing, then search and replace operations can be performed, but processing time increases

Engineering Contradiction:
Improvesearch and replace operation capabilityVSAvoidprocessing time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent performs preliminary action by pre-creating and maintaining a data table that maps sub-blocks to their locations in the data set before search and replace operations are needed. This pre-prepared index structure allows for rapid access to relevant data during actual operations, significantly reducing processing time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

By extracting only the necessary sub-blocks for processing using the pre-built data table, the system avoids the time-consuming task of reading and processing entire data sets. This extraction approach dramatically reduces processing time while maintaining operational capability.

Inventive Principle:
Principle #2Taking out (Extraction)

4Productivity

If data is stored in a traditional manner without partitioning, then storage structure is simple, but search and replace efficiency is poor

Engineering Contradiction:
Improvesearch and replace efficiencyVSAvoidstorage structure complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments data into smaller sub-blocks and introduces a data table structure with pointers to these sub-blocks. This segmentation, while increasing structural complexity, enables efficient search and replace operations by allowing the system to work with smaller, more manageable data units and quickly locate relevant information.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent adds another dimension to data storage by introducing a data table layer that maps sub-blocks to their locations in the data set. This additional dimensional structure (the mapping layer) enables efficient search and replace operations without directly modifying the underlying data storage, achieving improved efficiency through structural enhancement.

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

Data Source

PatentUS10416900B2Technologies for addressing data in a memory
Publication Date: 2019.09.17 SK HYNIX NAND PRODUCT SOLUTIONS CORP
  • US10416900B2 patent drawing
  • US10416900B2 patent drawing
  • US10416900B2 patent drawing

AI summary

Technologies for addressing data in a memory include an apparatus that includes a memory and a controller. The memory is to store sub-blocks of data in a data table and a pointer table of locations of the sub-blocks in the data table. The controller is to manage the storage and lookup of data in the memory. Further, the controller is to store a sub-block pointer in the pointer table to a location of a sub-block in the data table and store a second pointer that references an entry where the sub-block pointer is stored in the pointer table.