The advantage of a centralized search is that we avoid many of the problems to be overcome of a decentralized search. The advantages of a distributed search, that make it worthwhile to overcome the problems, involve scaling. We gain much greater processing power with each remote server performing part of the search, and we avoid the bottleneck of a centralized controller managing the entire process. The results still have to come back to the originator, so this argues in favor of decentralized accumulation of results as well. One problem with no central control is that the interrelated, interlinked web is likely to search the same area multiple times, at least once for every interconnection to neighboring related areas.
Interconnections are to more distantly related material in other areas.
One possible solution to this is identifiers for queries. Each query that is started by an individual is identified when it is created. This identifier is passed with the query wherever it goes. That way, a collection will know that it has processed the query already by comparing to its cache of recent queries. Queries should also have a time to live on them - the time during which the query must be satisfied or all activations of the query should die.