Proxy Server Serialized Data Stream Invocation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing remote invocation technologies face challenges in creating high-bandwidth channels for data transfer, particularly when data is not stored in a native serialized format, leading to performance penalties and difficulties in delivering media content effectively.
Innovation Solution
A system and method that utilizes a proxy server to receive a data request object, decompose it to extract a marker object containing a reference to a remote data source, and initiate a serialized data transfer directly between the remote data source and the requester via a TCP/IP connection, eliminating the need for intermediate handshaking and allowing for simultaneous initiation of multiple streams.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If remote procedure calls (RPCs) are used for remote data access, then communication between local and remote processes is enabled, but data transfer efficiency deteriorates due to component-by-component extraction requiring multiple small requests
Solution Approach 1:
The patent segments the data access process into two distinct phases: (1) a control plane phase where the requester sends a high-level data access request through the proxy server, and (2) a data plane phase where the actual bulk data transfer occurs directly between the remote server and requester. This segmentation allows the control logic to remain simple while the data transfer to operate at high efficiency.
Solution Approach 2:
The proxy server acts as an intermediary that receives high-level data access requests from requesters, translates them into appropriate remote database queries, and establishes direct bulk data transfer channels. The intermediary enables the requester to use simple high-level commands while the complex data retrieval and direct transfer handling is managed by the proxy server.
2Adaptability or versatility
If multiple small requests are generated to extract data component by component, then data can be retrieved from remote databases not stored in serialized format, but transmission overhead increases and bandwidth utilization decreases
Solution Approach 1:
The system performs preliminary serialization of data at the remote server before transfer. The proxy server requests the remote server to serialize data in bulk according to the requester's format requirements, converting non-serialized database data into serialized format in advance. This preliminary action eliminates the need for multiple component-by-component extraction requests during actual data transfer.
Solution Approach 2:
The patent changes the data format parameter at the source by requesting the remote server to serialize data in bulk according to specific format requirements (e.g., Java serialization, XML, JSON) before transfer. This parameter change from component-level extraction to bulk serialized transfer dramatically improves bandwidth utilization while maintaining compatibility with various data formats through configurable serialization options.
3Ease of operation
If a series of requests are used to simulate a serialized data stream, then remote data sources can be accessed, but performance penalty occurs and media content delivery becomes difficult
Solution Approach 1:
The patent establishes a continuous bulk data transfer channel between the remote server and requester for media content delivery. Once the initial request is processed and the direct transfer channel is established, data flows continuously without interruption or need for repeated request-response cycles. This continuous action is essential for delivering media content like video streams where continuous high-rate data flow is required.
Data Source
AI summary
Embodiments relate to systems and methods for invoking serialized data streams. A requester, such as a client computer, can request a set of data from a proxy server using a marker object containing references to remote data sources. The requester and proxy server can each host a handler object to manage marker objects communicated between the two. After receipt of the data request, the proxy server can communicate with the remote data source to initiate a serialized data stream from the remote data source to the requester. In embodiments, the marker object can indicate that the source data hosted on the remote data server should be transmitted directly to the requester, and be streamed in continuous fashion rather than be divided into pieces of data requiring separate requests. In embodiments, marker objects can be nested within other marker objects to invoke multiple serialized streams.


