我有一個巨大的轉儲文件 - 12GB的文本包含數百萬條目。每個條目都有一個數字標識,一些文本和其他不相關的屬性。我想將這個文件轉換成能夠提供有效查找的東西。也就是說,給定一個id,它會很快返回文本。限制:用高效的查找替換一個巨大的轉儲文件Java鍵值文本存儲
- 嵌入在Java中,最好沒有外部服務器或外語依賴關係。
- 讀取和寫入磁盤,而不是內存 - 我沒有12GB的RAM。
- 不會爆炸太多 - 我不想將12GB文件轉換爲200GB的索引。我不需要全文搜索,排序或任何幻想 - 只需鍵值查找。
- 高效 - 這是很多數據,我只有一臺機器,所以速度是一個問題。可以存儲大批量和/或使用多個線程工作的工具是首選。
- 存儲多個字段很好,但不是必須的。主要關注的是文字。
你的建議是歡迎!
您應該指定轉儲的格式。 – 2012-12-06 11:21:22
格式是否重要?這聽起來像它需要被加載到一些商店,因此最初的格式是不相關的這個問題 –
@BrianAgnew我想如果每條記錄一行,他可以創建一個手動索引'id => lineNumber' – 2012-12-06 11:31:03