减小索引格式的大小:文本

Reduce the size of an index format : text

你好,我有一个倒排索引格式的文本,格式如下:

term document1 , document2 poids1 poids2

我想缩小他的尺寸 我必须缩小文件的名称,例如 文档 1 将变为 1 .. 也用于权重,例如 2.5565465454 的权重将是 2.55,例如 java

BigDecimal bd = new BigDecimal(w);
bd = bd.setScale(2, RoundingMode.HALF_UP);

如果你有任何想法,请向我建议减小大小,我不需要代码,只需要一些想法

您给出的示例是一个文本文件,可以从现有索引的文本转储中获得(请记住,索引本质上是作为二进制文件组织的,即非文本文件)。

在这方面,trim 长文件名没有多大用处,例如"Document-1" 到 "D1",因为在典型的实现中,例如Lucene,文档和术语由整数 ID 而非名称标识。

此外,trim没有必要保留尾随小数,例如“0.25555”到“0.25”,因为它们将占用相同的存储量 space(通常为 64 位)。

A​​pache Lucene 的 trimming 实用程序可能对您有实际帮助,它已记录在案 here。这个包支持索引 trim 通过各种不同的启发式算法,其中最简单的是基于 tf 和 tf-idf 的修剪,从中删除条目 (t, d)低于截止值 tf (t,d)tf (t, d ) x idf(t) 值。