我寫了一個「普查」方案,通過在一列家庭和每一行中的所有行迭代計算的列,記錄的最大值和行鍵。我一直花更多時間在Hector客戶端上,但也寫了一個Pelops客戶端來測試。計數列,速度很慢CountQuery VS SliceQuery操作
基本流程是使用使用RangeSlicesQuery通過行迭代,然後在每行中,使用SliceQuery迭代通過和收集統計資料。 Pelops中的工作原理類似,只是不同的API。缺點是需要手動進行緩衝,緩衝採摘尺寸行和列...我現在的數據是1200萬行,其中最大列數〜25K,所以是需要一段時間......我目前的配置,我越來越>每秒25K行。
尋找方法來改善,並發現Hector的CountQuery(我假設,使用節儉客戶端get_count())。我以爲這會更快只是迭代鍵(使用RangeSlicesQuery.setReturnKeysOnly()),然後在每行按鍵重新使用CountQuery,我修改了代碼。
這不僅是慢,但慢30倍! (每秒處理只有900行)...
是否有更好的方法來計算列?
我認爲計數器列跟蹤,但隨後隨着數據更新,我會檢查,看看如果列已經存在,則在更新計數之前。普查不會是一個高頻率的任務,只是偶爾使用...但我想我會避免CountQuery。 – libjack
所以,雖然不理想,恕我直言,計數器列確實是更好的方式來計算。 – libjack