| US 7,454,411 B2 | ||
| Parallel data processing architecture | ||
| John D. Birdwell, Oak Ridge, Tenn. (US); Tse-Wei Wang, Oak Ridge, Tenn. (US); Roger D. Horn, Knoxville, Tenn. (US); Puneet Yadav, Fremont, Calif. (US); and David J. Icove, Knoxville, Tenn. (US) | ||
| Assigned to Universtiy of Tennessee Research Foundation, Knoxville, Tenn. (US) | ||
| Filed on Jan. 30, 2004, as Appl. No. 10/767,776. | ||
| Application 10/767776 is a division of application No. 09/671304, filed on Sep. 28, 2000, granted, now 6,741,983. | ||
| Prior Publication US 2004/0186920 A1, Sep. 23, 2004 | ||
| Int. Cl. G06F 17/30 (2006.01); G06F 7/00 (2006.01); G06F 17/00 (2006.01) | ||
| U.S. Cl. 707—3 [707/10; 707/104.1] | 20 Claims |

| 1. A parallel data processing system for search, storage and retrieval of data of a database responsive to client queries
for specific data of said database, said parallel data processing system comprising:
a plurality of host processors including a root host processor, said root host processor being responsive to said client queries
for said specific data of said database, wherein at least two host processors have a search engine and maintain information
of a search queue of said client queries;
at least two host processors having a queue of search requests for specific data of said database, each of said host processors
executing a search engine, communicating capacity and load information between host processors and said at least two host
processors exchanging at least one search request, the search engine removing at least one search request from a search queue
and generating an additional search request,
each of said host and root host processors maintaining a list of available host processors and information about the capacity
and load for each available host processor in memory and broadcasting its capacity and load information to other host processors
and bringing its search queue into balance with another host processor according to a time constant in response to receipt
of said broadcast capacity and load information; and
a communications system coupling said host and root processors, wherein at least two host processors communicate capacity
and load information to other host processors; selected host processors storing a database index for said database comprising
nodes of a database tree for said database and data accessible via said nodes of said database tree.
|