Compressed Object Serialization for Data Transfer Bottlenecks
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing XML format for data transfer in computer systems leads to large file sizes and network bandwidth issues when dealing with huge data sets, causing delays in data display and increased overhead due to the need for parsing at the client side.
Innovation Solution
The solution involves serializing server objects into a compressed format using identity-value pairs, inserting them into a file, and transmitting this file to the client, where the client automatically deserializes and loads the data into objects using an identity-value pair mechanism, allowing for efficient data exchange and rendering.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If XML format is used for data transfer, then data can be transferred from server to client, but file size becomes very large causing network bandwidth issues and display delays
Solution Approach 1:
The patent changes the data format parameter from XML text format to a custom binary format. The server serializes data objects into this compact binary format using identity-value pairs, where identities are integer codes representing data types and values are stored in efficient binary representations. This parameter change reduces file size by a factor of 10 or more while maintaining data transfer capability.
Solution Approach 2:
The patent extracts only the essential data elements (identities and values) from the complete object structure and transmits them in a minimal format. The client reconstructs the full objects from these extracted elements, eliminating the need to transmit redundant structural information, type declarations, and formatting characters that bloat XML files.
2Reliability
If XML format is used for data transfer, then data can be transferred from server to client, but client must parse XML data causing increased overhead and processing time
Solution Approach 1:
The binary format is designed to be self-describing, where each data element contains its own type information in the form of identity codes. The client deserializer automatically recognizes data types and reconstructs objects without requiring complex parsing logic or external schema definitions, making the format self-sufficient and eliminating the need for heavyweight XML parsers.
Solution Approach 2:
The patent replaces the mechanical XML parsing process with a simpler binary deserialization process. Instead of using DOM or SAX parsers that traverse and interpret text-based markup, the system uses direct binary-to-object mapping where the deserializer reads binary sequences and directly instantiates corresponding Java objects, dramatically reducing processing overhead.
3Reliability
If XML format is used for data transfer, then data can be transferred from server to client, but transfer speed is reduced due to large file size
Solution Approach 1:
The patent changes the data representation parameter from text-based XML to compact binary format. This parameter change directly reduces the amount of data to be transmitted over the network, increasing transfer speed. The binary format stores numerical values in their native binary representation rather than as decimal text strings, and uses efficient encoding for data structures, achieving 10x or greater compression ratios.
Data Source
AI summary
A computer-readable medium, computer-implemented method, apparatus, and system for converting and restoring an object are provided. In one embodiment, an object created by a server is serialized, at the server, into a compressed object format. The compressed object format is then inserted into a tag of a file. The file can then be sent from the server to the client at runtime. In another embodiment, a file is received, at a client. The client then automatically deserializes and loads the compressed data within the tag of the file into an object created by the client. The client then uses the object to load and invoke a view engine in order to render a view.


