1. A method of adaptively evaluating a top-k query with respect to at least one document, the method comprising: a) based on the query, forming a plurality of servers having respective server queues configured to store candidate answers that may constitute partial answers and final answers; b) processing the candidate answers in the server queues by steps including: b1) adaptively choosing a winning server to whose queue a current candidate answer should be sent; b2) sending the current candidate answer to the winning server's queue; b3) adaptively choosing a next candidate answer to process from among candidate answers in the winning server's queue; b4) computing a join between the current candidate answer and next candidate answers at the winning server, so as to produce a new current candidate answer; and b5) updating a top-k set with the new current candidate answer only if a score of the new current candidate answer exceeds a score of a top-k answer in a top-k set; and c) providing the top-k set as an evaluation of the top-k query.