2012-08-12 32 views
0

我已經開發了用於數據索引的字對齊位圖壓縮算法。算法基於WAH壓縮研究paper.compression bitmap在位操作上表現良好,並且非常節省空間。但修改壓縮位圖效率不是很高,因爲修改需要拆分壓縮字大小的塊和幾個memmove導致性能瓶頸。修改WAH壓縮位圖的性能

請看下面的例子。

例如:數據集 - [1000000,34,9,23456,6543,10000000,23440004,100,345]

性能由於所述數據集的隨機性質降低,在實際的應用場景這可能發生。

  1. 誰能給我一個關於如何克服這個性能問題的提示嗎?
+0

硬盤沒有的你真的做一個更好的想法猜測。用於索引數據的 – 2012-08-12 19:05:35

+0

位圖。例如位圖表示表格的行號.one關鍵字表示用於表示行號的多行number.bitmap。 – nsa 2012-08-12 19:09:07

+0

你可以顯示緩慢的代碼(拆分和memmoves)? – IvoTops 2012-08-14 11:12:40

回答

1

Daniel Lemire撰寫了一些關於預分類以提高壓縮率和性能的論文。 這裏是最新的:http://arxiv.org/abs/1207.2189

你也可以看看他的EWah變種。

當前的感覺是,當數據集緩慢變化時,位圖數組壓縮技術效果很好,因爲大多數實現都會在每次更改時丟棄並重建索引。對於經常變化的數據集,傳統的索引方法(如B-Tree變體)仍然是重要的。

實現:https://github.com/lemire/javaewahhttps://github.com/lemire/EWAHBoolArray