2014-10-20 46 views
0

我使用hazelcast作爲cache cluster增加分區大小以將更多數據包含在榛子圖中

我有三個地圖存儲在mysql中的三個表。每個表都有100000條記錄。 我開始使用hazelcast的三個實例來加載我的地​​圖中的這些表格,並使用different maps。 但問題。

當我開始初審和呼叫負載所有第一張表加載所有100000條目,但是當我打電話二審加載第二個表與同一個進程,它加載49449條目,並在第三個實例,只只加載33249項。

我使用三個不同的java代碼來加載這些表。 我的分區大小默認爲271 我在尋找錯誤,但沒有顯示錯誤,並且數據加載總是與上面解釋的相同。 請問您可以幫我解決問題。

回答

0

當MapLoader.loadAllKeys()被調用時,是否可以記錄每個MapLoader/MapStore實現已加載的密鑰數量?

也許這可以說明情況。如果這裏的數字不是100k,那麼問題不在HZ內部。

+0

所以至少我們知道你能夠從數據庫中獲得正確數量的密鑰;這是一個堅實的開始。 '每個表的榛實例'是什麼意思?他們是不是要組成一個集羣,或者你是否給了他們不同的分區組或什麼的? – pveentjer 2014-10-20 09:41:29

+0

我已經爲每個實例確定了一個jabva主程序,以表示它像節點結構,因此在集羣中有三個節點,您可以在配置實現中看到它爲每個地圖存儲定義,因此這三個位於三個不同的端口 – viren 2014-10-20 09:44:32

+0

MY問題是當我查詢一個有100k以下數據的地圖時,這個關鍵字在地圖中不存在,但是它應該已經到了數據庫中,以便在地圖中獲取記錄和更新。 – viren 2014-10-20 09:45:37