Lucene需要索引的文本文件太大,怎么解决

Lucene需要索引的文本文件太大,怎么解决,第1张

就报错来看,还没有用到Lucene就出错了,意思是只到第一行就虚慎举拟机内存溢出了,可以考虑把源文件进行切割,如把10M的文本切成5个1M的,建议你试一下

给一个可以切分文件的程序,可把它作为预处橘毕理的一部分圆孝芹

public static void splitToSmallFiles(File file, String outputpath) throws IOException {

int filePointer = 0

int MAX_SIZE = 10240000

BufferedWriter writer = null

BufferedReader reader = new BufferedReader(new FileReader(file))

StringBuffer buffer = new StringBuffer()

String line = reader.readLine()

while (line != null) {

buffer.append(line).append("\\r\

")

if (buffer.toString().getBytes().length >= MAX_SIZE)

{

writer = new BufferedWriter(new FileWriter(outputpath + "output" + filePointer + ".txt"))

writer.write(buffer.toString())

writer.close()

filePointer++

buffer = new StringBuffer()

}

line = reader.readLine()

}

writer = new BufferedWriter(new FileWriter(outputpath + "output" + filePointer + ".txt"))

writer.write(buffer.toString())

writer.close()

}

segment_N文件存储的是当前正处于激活状态的索引文件的信息,也就是当前 *** 作的索引文猜扮件的维护信息。 在这里N=3,N的最大值可以设定的,一般默认是10,就是说内存中到10个segment文件迹闹就合并一次。姿兆罩

segment.gen文件是专门用于管理segment_N文件的。

cfs文件不一定是以0开头的,它存的是索引。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12290461.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存