Resource Server Compressed Stream Blocks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing stream processing systems face challenges in efficiently serving and updating data resources to geographically distributed client systems, particularly in handling continuous data streams and performing analytics on these streams in a scalable and efficient manner.

Innovation Solution

A system and method that involves a stream processing system with an event publishing system, an event stream processing device, and a resource server, where streamed data is compressed and stored in pre-allocated memory blocks, and updates are managed using a tree map based on unique event identifiers, enabling efficient compression, storage, and delivery of data resources to client systems.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data is stored in traditional memory structures, then data access is simple, but data retrieval efficiency deteriorates when handling continuous data streams with frequent updates

Engineering Contradiction:
Improvedata retrieval efficiencyVSAvoidmemory management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments continuous data streams into discrete blocks that can be independently compressed and stored. Each block is processed and stored separately in pre-allocated memory blocks, allowing efficient retrieval without managing entire data streams as single units. This segmentation enables parallel processing and reduces memory management overhead.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements pre-allocation of memory blocks before data arrival. By preparing memory structures in advance and organizing them with tree map indexes, the system eliminates the need for dynamic memory allocation during data retrieval operations, significantly improving access speed and reducing latency.

Inventive Principle:
Principle #10Preliminary action

2Quantity of substance

If compression is applied to reduce data size, then storage efficiency improves, but processing time increases

Engineering Contradiction:
Improvedata storage sizeVSAvoidcompression processing time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent performs compression operations on data blocks as they arrive and stores the compressed versions in pre-allocated memory. By compressing data upfront rather than on-demand, the system transforms time-consuming compression operations into background processing tasks, enabling rapid retrieval of already-compressed data without repeated compression overhead.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates and stores compressed copies of data blocks in pre-allocated memory regions. These compressed copies serve as efficient storage representations that can be quickly retrieved and decompressed when needed, rather than storing and processing full-size original data, thus reducing overall storage requirements and improving access efficiency.

Inventive Principle:
Principle #26Copying

3Speed

If pre-allocated memory blocks are used, then data access speed improves, but memory utilization efficiency deteriorates

Engineering Contradiction:
Improvedata access speedVSAvoidmemory resource waste
Core Design Contradiction:
SpeedVSLoss of energy

Solution Approach 1:

The patent dynamically adjusts the parameters of pre-allocated memory blocks based on actual data characteristics and access patterns. By monitoring data arrival rates, block sizes, and access frequencies, the system optimizes memory allocation parameters to balance access speed with utilization efficiency, preventing both over-allocation and under-allocation of memory resources.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent implements feedback mechanisms that monitor memory block utilization and adjust allocation strategies accordingly. When memory blocks are underutilized, the system can reallocate or consolidate resources. When access patterns change, the feedback loop triggers reorganization of memory structures to maintain optimal performance, thus adapting to varying workloads without permanent resource waste.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9654586B2Resource server providing a rapidly changing resource
Publication Date: 2017.05.16 SAS INSTITUTE INC
  • US9654586B2 patent drawing
  • US9654586B2 patent drawing
  • US9654586B2 patent drawing

AI summary

A computing device is provided that supports receipt and processing of blocks of streamed data associated with an event and provision of pre-rendered and compressed events to event client systems with a high-throughput. The computing device includes a compression optimizer module that determines how to make new compressed blocks of the right level of compression as the blocks of streamed data are received from an event publishing system. The compression optimizer module utilizes a tree map and unique identifiers to selectively compress, read, and recompress the blocks of streamed data associated with each event. To prevent duplicate work in compressing the streamed data, compressed blocks are re-used where possible to support requests from the event client systems. Each new block includes a unique identifier defined by the event publishing system that generated the event, so that a previous version of the event in a compressed block can be replaced.