在我的應用程序中,我必須讀取大量的數據。在獲得所有數據後,我將它放在一個列表中並對其進行處理,並據此進行工作。以最高效的方式從數據庫中獲取大量數據
現在我想知道如果我可以做任何事情,任何加快從數據庫過程中獲取數據?我的數據庫位於不同的服務器上,我正在使用java與數據庫進行交互。
我沒有確定的數據大小,即我需要處理的特定行數。另外我聽說我可以去多線程,但那怎麼辦呢?因爲我不知道如何分割我的數據,因爲它是不確定的。也就是說,如果下面的僞代碼被應用
for(i=0 to number of partition) // Not certain on the number of partitions
create new thread and get data.
也許我可以將某些屬性的基礎上,散列數據和以後告訴每個線程獲取地圖的某一特定指數,但後來如何映射它甚至在獲取數據之前?
我可以看看所有可能的解決方案,我該如何解決?讓我知道你是否需要更多信息。
謝謝。
我們在談論多少數據?你可以在數據庫中執行一些處理嗎?目前的瓶頸是什麼? –
我想,多線程獲取數據是一個不錯的選擇。您可以創建一個模型,在該模型中需要提供單個線程要獲取的記錄總數。 –