Can you build a hash of clients in the search files and the rows they occur in. Use this to pull the data for each client you have to lookup. This way there is less sorting but the mem requirement would be high if the 30-60K client list is mostly unique clients (could be very optimal though if there are a lot of repeat clients).
Cheers,
R.