Message Queue Storage Device Offloading Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing distributed messaging service systems rely on general-purpose computing systems as worker nodes, leading to high resource utilization, increased energy consumption, and higher hardware costs due to inefficient storage and management of message queues.
Innovation Solution
The implementation of specialized message queue storage devices that provide a queue-based interface, allowing manager nodes to interact directly with storage devices via a network adapter, and offloading queue management operations from host computing systems, thereby reducing resource utilization and costs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If general-purpose computing systems are used as worker nodes for message queue management, then the system can handle diverse computing tasks, but resource utilization increases and energy consumption rises
Solution Approach 1:
The patent extracts the message queue management function from general-purpose computing systems and implements it in a dedicated storage device. The storage controller is configured to receive message write commands, identify queues based on queue identifiers, and store messages in non-volatile flash memory, thereby separating this specific function from general computing tasks and reducing overall system resource utilization and energy consumption.
Solution Approach 2:
The storage device provides self-service capabilities by implementing message queue management operations directly within the storage controller. The controller autonomously handles message storage, retrieval, and queue management without requiring general-purpose computing resources, enabling the storage system to serve its own management needs efficiently.
2Adaptability or versatility
If general-purpose computing systems are used as worker nodes, then the system can perform multiple functions, but hardware costs increase
Solution Approach 1:
The patent extracts the message queue management workload from expensive general-purpose computing hardware and relocates it to a dedicated storage device with a specialized storage controller. This consolidation reduces the number of computing nodes required and lowers overall hardware costs while maintaining the necessary functionality.
Solution Approach 2:
The storage device achieves multi-functionality by combining message queue management operations with standard storage functions within a single device. The storage controller handles both traditional storage tasks and message queue operations, eliminating the need for separate dedicated hardware for each function and reducing overall system cost.
3Adaptability or versatility
If block-level storage interfaces are used, then the storage device can operate with standard protocols, but message access performance decreases
Solution Approach 1:
The patent implements local quality optimization by configuring the storage controller with message queue-specific access patterns tailored to the characteristics of message data. The controller identifies messages based on queue identifiers and retrieves them using patterns optimized for message access, improving performance for this specific data type while maintaining standard block-level interfaces for other operations.
Data Source
AI summary
A message queue storage device includes: a non-volatile flash memory unit including one or more flash memory dies including one or more pages grouped into one or more flash blocks; a volatile memory; a data port; and a storage controller configured to: receive, via the data port, a message write command including a message and a queue identifier; identify a queue from one or more queues based on the queue identifier; determine that the message is a persistent message; select a write physical location in one or more pages of the flash memory dies in which to store the message; and store the message associated with the queue at the write physical location in the one or more pages of the non-volatile flash memory unit.


