Lucene是一套用于全文检索和搜寻的开源程序库。
使用Pylucene可以简单的帮助我们完成对采集到的信息进行处理,包括索引的建立和搜索
java中
首先:Directory是Lucene对文件系统的操作,
java 中 FSDirectory有三个子类SimpleFSDirectory、MmapDirectory、NIOFSDirectory;
FSDirectory是一个抽象类,具体实现由子类来完成。
1、SimpleFSDirectory
最简单的FSDirectory子类,使用java.io.*API将文件存入文件系统中
缺点:不能很好支持多线程操作。因为要做到这点就必须在内部加入锁,而java.io.*并不支持按位置读取。
2、NIOFSDirectory
使用java.io.*API所提供的位置读取接口,能很好的支持除Windows之外的多线程操作。
缺点:NIOFSDirectory在Windows操作系统的性能比较差,甚至可能比SimpleFSDirecory的性能还差。
3、MmapDirectory
使用内存映射的I/O接口进行读操作,不需要采取锁机制,并能很好的支持多线程读操作。
缺点:但由于内存映射的I/O所消耗的地址空间是与索引尺寸相等,所以建议最好只是用64位JRE。
python中
它有SimpleFSDirectory和RAMDirectory、CompoundFileDirectory、FileSwitchDirectory等11个子类,列举的四个是与索引目录的保存相关的子类,SimpleFSDirectory是将构建的索引保存至文件系统之中;RAMDirectory是将索引