Asynchronous I/O Interface for Non-blocking Cloud Storage
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing cloud computing systems require dedicated threads for each operation, leading to inefficiencies as servers must wait for operations to finish before proceeding, limiting scalability and performance.
Innovation Solution
Implementing an asynchronous input/output interface that allows non-blocking persistence of data to cloud storage, using a pool of threads and ticket-based confirmation, enabling servers to perform other operations while data is being written or read without waiting for completion.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a dedicated channel and thread are used for each cloud operation, then the operation can be tracked and confirmed, but the server must wait for operation completion resulting in inefficiency
Solution Approach 1:
The patent segments the thread pool into multiple worker threads that can independently handle different cloud operations. Instead of dedicating one thread per operation, multiple operations are divided and distributed across available threads, allowing parallel processing while maintaining track of each operation through correlation IDs or tickets.
Solution Approach 2:
The patent introduces an intermediary mechanism in the form of a ticketing system or correlation ID that links cloud operations to their initiating requests without requiring a dedicated thread. This intermediary allows the server to submit operations asynchronously and retrieve results later, decoupling the request-submission process from the operation-completion process.
2Reliability
If a dedicated thread is allocated for each cloud operation, then the operation can be monitored, but the server cannot perform other operations concurrently
Solution Approach 1:
The patent makes threads universal by designing them to handle multiple different cloud operations sequentially rather than dedicating each thread to a single operation type. The thread pool becomes a multi-functional resource that can dynamically allocate capacity to various storage, retrieval, and processing operations, increasing system adaptability and concurrent operation capability.
Solution Approach 2:
The patent implements dynamic thread allocation where the system can adjust the number and state of active threads based on current workload demands. Threads can be dynamically created, reused, or terminated based on operation priorities and system resources, allowing the server to adaptively handle varying concurrent operation requirements while maintaining monitoring capabilities.
3Reliability
If the server waits for data operations to finish, then data integrity is ensured, but wait times increase reducing scalability
Solution Approach 1:
The patent implements preliminary actions by submitting cloud operations asynchronously before the server needs the operation results. The server can pre-initiate data persistence, pre-warm caches, or pre-process data in the cloud while performing other critical operations, thereby reducing perceived wait times while maintaining data integrity through proper acknowledgment and confirmation mechanisms.
Solution Approach 2:
The patent establishes feedback loops where the server submits operations asynchronously and receives confirmations or notifications when operations complete. This feedback mechanism ensures data integrity by allowing the server to verify operation success or handle failures appropriately, while the asynchronous nature eliminates blocking wait times and improves scalability.
Data Source
AI summary
An apparatus and a method operating on data at a server node of a data grid system with distributed cache. Data is copied to a network cloud of storage services remotely coupled to a server node with an asynchronous input output interface. The asynchronous input output interface is configured to asynchronously communicate with the network cloud of storage services. Confirmation that the data has been copied on the network cloud of storage services is received at the server node.


