显示Lucene索引的内容

des4xlb0  于 2023-10-18  发布在  Lucene
关注(0)|答案(4)|浏览(225)

我试图在Lucene中调试索引文档,我需要看到索引的内容,这样我就可以确切地看到文档是如何被索引的。AlleyouLuke这样做了,但是没有任何文档,当我把它指向索引目录时(在任何一个目录下,虽然我不知道为什么它不能自己找出哪个是正确的),我什么也没有得到。肯定有一些简单的方法来做到这一点吗?

wixjitnu

wixjitnu1#

路加福音是做这件事的简单方法。你运行它,浏览到索引,然后去参加比赛。再简单不过了
还有其他的工具,比如LIMO也是一个很好的工具,但是它比Luke更难上手。
也许如果你给予一些关于你在路加福音中遇到的问题的细节,你将能够在这方面得到一些帮助。

mlnl4t2r

mlnl4t2r2#

我不太了解Luke,但我和Lucene一起工作过很多次。查看索引的内容可能很棘手,即使是Luke,因为您只能看到存储字段的数据。
在我做的最后一个Lucene项目(实际上是Solr)中,我几乎将每个字段都标记为索引但不存储。对于这些情况,为了测试文档是否具有正确的索引术语,我将查询索引,以查找具有给定主键和预期术语的文档。如果匹配的话,我就知道它是用那个词索引的。
例如,要查看产品5是否为英文,我会说productId:5和lang:en
我知道这不能直接回答你关于如何使用路加福音的问题,但如果路加福音不能帮助你,这可能是一个替代方案。

jum4pzuy

jum4pzuy3#

Luke试图在使用“文档”选项卡中的“重建和编辑”按钮时显示已索引但未存储的字段中的值。如果我没记错的话,停止词不会出现在“重建和编辑”显示中--你会看到“null_1”,“null_2”等。

pengsaosao

pengsaosao4#

可以从源代码编译luke,同时将Elastic搜索格式添加到Luke MetaINF/services中。
就按照这个办法
Using Luke with ElasticSearch
这也可以遵循测试自定义发布格式/编解码器与LUCene
ElasticSearch使用自定义postings格式(postings格式定义了倒排索引在内存/磁盘中的表示方式),Luke并不知道这一点。要告诉Luke有关ES发布格式的信息,请按照以下步骤添加SPI类。
1.克隆人卢克源代码库:
2.在Luke项目的pom文件中添加ElasticSearch所需版本的依赖项:

<!-- ElasticSearch -->
<dependency>
    <groupId>org.elasticsearch</groupId>
    <artifactId>elasticsearch</artifactId>
    <version>1.1.1</version>
</dependency>

1.编译Luke jar文件(创建target/luke-with-deps.jar):
$ mvn包
4.将Luke的已知帖子格式列表解压缩到一个临时文件中:

$ unzip target/luke-with-deps.jar META-INF/services/org.apache.lucene.codecs.PostingsFormat -d ./tmp/
Archive:  target/luke-with-deps.jar
  inflating: ./tmp/META-INF/services/org.apache.lucene.codecs.PostingsFormat

1.将ElasticSearch postings格式添加到temp文件中:
$ echo“org.elasticsearch.index.codec.postingsformat.BloomFilterPostingsFormat”
./tmp/META-INF/services/org.apache.lucene.codecs.PostingsFormat $ echo“org.elasticsearch.index.codec.postingsformat.Elasticsearch090PostingsFormat”./tmp/META-INF/services/org.apache.lucene.codecs.PostingsFormat $ echo“org.elasticsearch.search.completion.Completion090PostingsFormat”./tmp/META-INF/services/org.apache.lucene.codecs.PostingsFormat
1.将修改后的文件重新打包回jar:
$ jar -uf target/luke-with-deps.jar -C tmp/ META-INF/services/org.apache.lucene.codecs.PostingsFormat
1.卢克快跑
$./luke.sh

相关问题