Partial Object Instantiation Reducing I/O Overhead

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In object-oriented applications, the need to access and materialize entire objects for selective data retrieval leads to inefficiencies, as only a subset of fields are required, resulting in increased input/output operations and processing costs.

Innovation Solution

A method for transparent partial object instantiation is implemented, where a processor analyzes application code to determine the list of accessed fields, allowing for selective instantiation and reducing unnecessary field retrieval, particularly effective in conjunction with column stores and leveraging cache structures.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the entire object is materialized when accessed, then the application can access all fields of the object, but the input/output operations and processing costs increase due to retrieving and loading unnecessary fields

Engineering Contradiction:
Improvedata retrieval efficiencyVSAvoidprocessing cost
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent extracts only the specific fields that are actually needed by the application from the complete object structure. The system analyzes application code to identify which fields are accessed, then retrieves and materializes only those specific fields rather than the entire object, thereby reducing I/O operations and processing costs while maintaining application functionality.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent segments the object into individual fields and selectively materializes only the necessary segments (fields) rather than the complete object. This segmentation allows the system to load only the required portions of data into memory, improving efficiency by avoiding the overhead of materializing the entire object structure.

Inventive Principle:
Principle #1Segmentation

2Ease of operation

If the entire object is materialized, then all fields are available for access, but the memory usage increases due to loading unnecessary fields

Engineering Contradiction:
Improvefield accessibilityVSAvoidmemory usage
Core Design Contradiction:
Ease of operationVSQuantity of substance

Solution Approach 1:

The system extracts and loads only the specific fields that are actually accessed by the application into memory, rather than loading the entire object. This extraction approach maintains ease of operation for accessing required fields while significantly reducing memory consumption by eliminating unnecessary data from the memory footprint.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent applies partial action by materializing only the necessary subset of fields rather than the complete object. This partial instantiation provides exactly the amount of data needed for the application to function, avoiding the excessive memory usage that would result from materializing the entire object structure.

Inventive Principle:
Principle #16Partial or excessive action

3Productivity

If code analysis is performed to determine accessed fields, then selective instantiation can be achieved, but the implementation complexity increases

Engineering Contradiction:
Improvedata retrieval efficiencyVSAvoidimplementation complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent performs preliminary analysis of application code during the compilation or loading phase to identify which fields will be accessed. By determining the set of accessed fields in advance, the system can prepare and materialize only the necessary fields before execution, achieving selective instantiation without adding complexity during runtime operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system introduces an intermediary analysis layer that sits between the application code and the object materialization process. This intermediary component analyzes the code to determine field access patterns and translates this information into selective instantiation instructions, thereby enabling efficient data retrieval without directly complicating the core object handling logic.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10747512B2Partial object instantiation for object oriented applications
Publication Date: 2020.08.18 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10747512B2 patent drawing
  • US10747512B2 patent drawing
  • US10747512B2 patent drawing

AI summary

One embodiment provides a method for transparent partial object instantiation for object oriented applications including analyzing, by a processor, application code to determine a list of objects. The processor determines a list of accessed fields for each of the objects based on performing analysis for each function in the application code for accessed fields and other functions invoked.