Serializing Multiple Data Objects into Single Binary Stream

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data object serialization and deserialization techniques require multiple binary streams for multiple data objects, leading to increased memory usage and transmission pipeline load, causing 'out of memory' issues in distributed collaboration environments.

Innovation Solution

A method that serializes multiple data objects into a single binary stream, using a hash table to manage object identifiers and locations, allowing for selective deserialization and reducing memory footprint.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If multiple data objects are serialized using separate binary streams, then each data object can be transmitted independently, but the memory resources are overloaded and transmission pipeline load increases

Engineering Contradiction:
Improvedata transmission reliabilityVSAvoidmemory resource consumption
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent merges multiple separate binary streams into a single consolidated binary stream by appending serialized data objects sequentially. This combining approach reduces the total number of streams from N to 1, thereby decreasing memory overhead and transmission pipeline load while maintaining the ability to transmit multiple data objects independently through the unified stream structure.

Inventive Principle:
Principle #5Merging (Combining)

2Ease of operation

If data objects are kept in temporary memory for longer periods, then selective access is enabled, but memory resources are overloaded

Engineering Contradiction:
Improvedata access flexibilityVSAvoidmemory resource consumption
Core Design Contradiction:
Ease of operationVSQuantity of substance

Solution Approach 1:

The patent performs preliminary serialization of data objects into a binary stream before they are needed for access. By pre-converting data objects to their serialized form and storing them in the binary stream, the system enables selective deserialization and access without keeping multiple complete data objects in memory simultaneously, thus reducing memory consumption while maintaining access flexibility.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If multiple binary streams are used for multiple data objects, then data transmission can proceed in parallel, but the transmission pipeline load increases causing out of memory issues

Engineering Contradiction:
Improvedata transmission speedVSAvoidtransmission pipeline complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the binary stream into distinct data object portions using delimiters or markers that indicate the boundaries of each serialized data object. This segmentation allows the receiving end to identify and extract individual data objects from the unified stream, maintaining the ability to process multiple objects independently while using a single stream, thereby reducing pipeline complexity without sacrificing transmission efficiency.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9350595B1System and method for serializing and deserializing data objects into a single binary stream
Publication Date: 2016.05.24 EMC IP HLDG CO LLC
  • US9350595B1 patent drawing
  • US9350595B1 patent drawing
  • US9350595B1 patent drawing

AI summary

The present invention is a system and method for optimizing the storage and transmission of a data object. Specifically, the present invention improves current data object serialization and deserialization methods involving multiple data objects. Current serialization techniques provide for serialization and deserialization using a single data object per transmission, or stream. As such, data objects may be serialized, then streamed to a destination one data object at a time. Unfortunately, present serialization and deserialization techniques require that each object must be streamed on its own binary stream, so many streams may be simultaneously transmitting. This places a toll on the transmission pipeline, and results in an “out of memory” response from the associated software application. The present invention provides a system and method for enabling multiple data objects to be transmitted on a single binary stream, improving the efficiency of the software applications associated with the distributed collaboration environment.