我有問題,而接近Binary search in a sorted (memory-mapped ?) file in Java如何做在java內存映射壓縮文件的二進制搜索?
我想要實現字符串二進制搜索中使用Java MappedByteBuffers一個大的文件,但在我的情況下,大的文件被壓縮用bzip2。假設文件是用-1選項100k塊壓縮的。 (其實我不知道確切的選項,但我可以重新包裝文件)。
我應該如何在這樣的MappedByteBuffer中搜索字符串?如何解壓1塊?是否有一些standart lib或我應該讀取標題,deflate節和crc?那些塊是100k壓縮狀態,還是100k它是未壓縮的數據長度?以及最後的塊如何?
有人在壓縮文件中完成BinarySearch,也許不是用Java?
無論如何這是一個壞主意。我早在70年代就研究過這個問題。二進制搜索是什麼被描述爲虛擬陣列非常緩慢。一個合適的索引結構執行很多次。向混音添加壓縮只會使其變得更糟。 – EJP