Distributed resource allocation in stream processing systems

a resource allocation and stream processing technology, applied in data switching networks, frequency-division multiplexes, instruments, etc., can solve the problems of dynamic load distribution, resource allocation has not yet been fully studied, and it is difficult to determine the best resource allocation policy. to achieve the effect of maximizing the concurrent flow ra

Inactive Publication Date: 2007-12-27
IBM CORP
View PDF2 Cites 21 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Benefits of technology

[0011]A method for resource allocation includes, in a network having nodes and links, injecting units of flow for at least one commodity at a source corresponding to the at least one commodity. At each node, queue heights, associated with the at least one commodity, are balanced for queues associated with each of one or more outgoing paths associated with that node. An amount of commodity flow is pushed across a link toward a sink, where the amount of commodity flow is constrained by a capacity constraint. Flow that reached the sink is absorbed by draining the queues.
[0012]In other embodiments, methods include determining a maximum concurrent flow rate for a plurality of commodities, by: initializing a maximum concurrent flow rate variable and an error tolerance value; performing the steps as recited in claim 1 until a number of iterations exceeds T or a queue threshold is exceeded due to the maximum concurrent flow rate variable; if T iterations have been exceeded without exceeding a queue threshold, increasing the maximum concurrent flow rate variable; and bisecting the maximum concurrent flow rate variable until a criterion is met to maximize concurrent flow rate. In still other embodiments, the method includes balancing all queue heights for the at least one commodity to equal heights and deleting any excess flow so that every queue in the node has a height of no more than a buffer size (H).
[0013]A resource allocation system includes at least one queue corresponding to one or more outgoing paths. An input path is configured to receive one or more commodities in a distributed network. A resource allocation program is configured to balance queue heights for flow units injected in the queues associated with the at least one commodity, and is further configured to push an amount of commodity flow across a link toward at least one sink. The amount of commodity flow is constrained by a capacity constraint.

Problems solved by technology

The requirements to process large volumes of real-time data at high rates, and to effectively coordinate multiple servers in a distributed environment, have led to many great design challenges for efficient stream processing systems.
A fundamental problem in such stream-based processing networks is how to best utilize the available resources and coordinate seamlessly so that the overall system performance is optimized.
It is thus difficult to determine the best resource allocation policy at each server in isolation, such that the overall throughput of the whole system is optimized.
The problem of dynamic load distribution and resource allocation has not yet been fully studied.

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Image

Smart Image Click on the blue labels to locate them in the text.
Viewing Examples
Smart Image
  • Distributed resource allocation in stream processing systems
  • Distributed resource allocation in stream processing systems
  • Distributed resource allocation in stream processing systems

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0029]Embodiments in accordance with present principles consider a distributed stream processing system which includes a network of cooperating servers, collectively providing processing services for multiple concurrent stream-based applications. Each application needs sophisticated processing of data streams from dispersed sources in a near real-time manner. The performance of such stream processing systems depends on an effective distribution of the available processing resources to the variety of data streams over the multiple, cooperating servers. Assuming all servers have finite computing resources and all communication links have finite available bandwidth, a generalized multi-commodity flow model is presented for the above-described allocation problem. Distributed methods are provided for finding the best resource allocation schemes in such stream processing networks.

[0030]Detailed performance analysis on the optimality and complexity of these methods are also provided. Numer...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

PUM

No PUM Login to view more

Abstract

A system and method for resource allocation includes, in a network having nodes and links, injecting units of flow for at least one commodity at a source corresponding to the at least one commodity. At each node, queue heights, associated with the at least one commodity, are balanced for queues associated with each of one or more outgoing paths associated with that node. An amount of commodity flow is pushed across a link toward a sink, where the amount of commodity flow is constrained by a capacity constraint. Flow that reached the sink is absorbed by draining the queues.

Description

BACKGROUND[0001]1. Technical Field[0002]The present invention relates to resource allocation in distributed stream processing, and more particular to systems and methods for more efficiently allocating system resources in distributed networks or systems.[0003]2. Description of the Related Art[0004]The rapid development of computer technology has enabled streaming applications to emerge from many areas of the information technology (IT) industry. Examples of the broad application areas include network traffic monitoring, real-time financial data analysis, environmental sensing, surveillance, etc. In these applications, multiple data streams are generated by a large number of distributed sources, such as news and financial data feeds, monitoring sensors and surveillance video / audio sources. In order to provide valuable services to the users, these continuous streams of data need to pass through a series of sophisticated processing operations, including filtering, aggregation, and tran...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

Application Information

Patent Timeline
no application Login to view more
Patent Type & Authority Applications(United States)
IPC IPC(8): H04J1/16H04L12/56
CPCH04L47/10H04L47/30H04L47/25
Inventor BROBERG, JAMES ANDREWLIU, ZHENXIA, HONGHUIZHANG, LI
Owner IBM CORP
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Try Eureka
PatSnap group products