你好我有这种格式的倒排索引格式文本:
term document1,document2 poids1 poids2
我希望减小他的大小,例如,我减少了文档的名称 文件1将成为1 ..也为重量例如2.5565465454的重量将是2.55像这样的例子在java中
BigDecimal bd = new BigDecimal(w);
bd = bd.setScale(2, RoundingMode.HALF_UP);
如果您有任何想法,请告诉我缩小尺寸我不需要代码但只需要一些想法
答案 0 :(得分:0)
您提供的示例位于文本文件中,该文件可以从现有索引的文本转储中获取(请记住索引实际上是按二进制文件组织的,即非文本文件)。
在这方面,修剪长文档名称的用处不大,例如: "文献-1"到" D1",因为在典型的实现中,例如Lucene,文档和术语由整数ID标识,而不是由其名称标识。
此外,修剪尾随小数没有意义,例如: " 0.25555"到" 0.25"因为它们会占用相同数量的存储空间(通常为64位)。
实际可能对您有所帮助的是Apache Lucene的修剪实用程序,其记录为here。该软件包支持通过各种不同的启发式算法进行索引修剪,其中最简单的是基于tf和tf-idf的修剪,从术语的发布列表中删除条目(t,d) t 低于截止 tf(t,d)或 tf(t,d)x idf(t)值。