Middle tier of an application involving hundreds of thousands of data rows in memory, to be managed using multithreading