lucene相关内容
我正在阅读倒排索引(由 Solr、Elastic Search 等文本搜索引擎使用),据我了解(如果我们以“Person"为例): 属性与Person关系倒置: 约翰->PersonId(1)、PersonId(2)、PersonId(3)伦敦 ->PersonId(1)、PersonId(2)、PersonId(5) 我现在可以在人员记录中搜索“住在伦敦的约翰" 这不是解决了所有
..
在一台机器上运行多个 Solr 分片会提高性能吗?我希望 Lucene 是多线程的,但它似乎并没有在我的服务器上使用超过一个内核和 16 个物理内核.我意识到这取决于工作负载,但任何统计数据或基准测试都会非常有用! 解决方案 我跑了一些 我们搜索堆栈的基准,并发现添加更多 Solr 分片(在一台机器上,具有 16 个物理内核)确实将性能提高到大约 8 个分片(其中我得到了 6.5 倍的加速
..
我正在尝试使用多个线程在 Lucene 中构建我的索引.因此,我开始编写代码并编写了以下代码.首先,我找到文件,并为每个文件创建一个线程来索引它.之后我加入线程并优化索引.它有效,但我不确定......我可以大规模信任它吗?有什么办法可以改善吗? import java.io.File;导入 java.io.FileFilter;导入 java.io.FileReader;导入 java.io.
..
我在我的门户(基于 J2EE)中使用 Lucene 来提供索引和搜索服务. 问题在于 Lucene 的关键字.当您在搜索查询中使用其中一个时,您会收到错误消息. 例如: searchTerms = "ik OR jij" 这很好用,因为它会搜索 "ik" 或 "jij" searchTerms = "ik AND jij" 这很好用,它搜索 "ik" 和 "jij" 但是
..
谁能举例说明 BooleanQuery 中 lucene 中 BooleanClause.Occur.Must 和 BooleanClause.Occur.SHOULD 的区别? 解决方案 BooleanClause.Occur.SHOULD 表示该子句是可选的,而 BooleanClause.Occur.Must 表示该条款是强制性的. 但是,如果布尔查询只有可选子句,则必须至少匹
..
我想知道如何查询字段以完全匹配字符串. 我实际上是在尝试这样查询: url : "http://www.domain_name.com" 返回所有以 http://www.domain_name.com 开头的字符串. 解决方案 我遇到了类似的问题,我发现“.raw"解决了它 - 在你的例子中,试试 url.raw : "http://www.domain_name.com"
..
我正在使用 Fluent NHibernate,我想用 Lucene 实现 NHibernate.Search,但我找不到任何关于如何使用 Fluent NHibernate 来实现的示例.似乎有两个步骤.(根据城堡) 在配置中设置 Hibernate 属性: hibernate.search.default.directory_provider hibernate.search.d
..
Lucene 中的段是什么? 细分有什么好处? 解决方案 Lucene 索引被分成更小的块,称为段.每个段都是它自己的索引.Lucene 按顺序搜索所有这些. 当一个新的写入器被打开和一个写入器提交或关闭时,一个新的段被创建. 使用此系统的优点是,您无需在创建段后对其文件进行修改.当您在索引中添加新文档时,它们会被添加到下一个片段中.以前的段永远不会被修改. 删除文
..
当我尝试在 solr 中创建新内核时出现此错误. root@ubuntu:/opt/solr# bin/solr create -c gettingstarted -n data_driven_schema_configs设置新的核心实例目录:/var/solr/data/gettingstarted使用命令创建新核心“入门":http://localhost:8983/solr/admin/c
..
尽管我阅读了 Elasticsearch 的文档以了解什么是过滤器.我仍然很难理解它的含义以及它的简单用途.谁能提供更多细节? 解决方案 你通常做的是索引文档并通过查询将它们取回.简而言之,渗透器允许您做的就是索引您的查询并根据索引查询过滤文档以了解它们匹配哪些查询.它也被称为反向搜索,因为你所做的与你习惯的相反. 渗透器有不同的用例,第一个是存储用户兴趣的任何平台,以便在它进入时立
..
我已经使用 lucene 索引了一组文档.我还为每个文档内容存储了 DocumentTermVector.我写了一个程序,得到了每个文档的词频向量,但是如何获取每个文档的 tf-idf 向量呢? 这是我在每个文档中输出词频的代码: 目录 dir = FSDirectory.open(new File(indexDir));IndexReader ir = IndexReader.open(
..
红宝石人有 雪貂.有人知道 Python 有什么类似的倡议吗?我们目前正在使用 PyLucene,但我想研究一下转向纯 Python 搜索. 解决方案 Whoosh 是一个新项目,类似于lucene,但是是纯python.
..
在一个新项目中,我需要大量使用 lucene 来实现搜索器.这个搜索器将是项目中非常重要(也是很大)的一部分.用 MongoDb 替换关系数据库 + Lucene 是否有效或方便? 编辑:好的,我会澄清一下:我不是在问风险,我可以在这个项目中付出这个代价.我的观点是:MongoDB 是面向这种东西的吗?我可以制作一个与 Lucene 具有相同性能的完整搜索引擎吗?一位朋友向我指出 Mongo
..
使用 Lucene.Net 的最佳实践是什么?或者我在哪里可以找到一个好的 lucene.net 使用示例? 解决方案 如果你打算使用 Lucene,我会买一本从头到尾的好书.Lucene 的学习曲线非常陡峭(在我看来).重要的不仅仅是知道如何搜索您的 - 它还涉及索引它.进行基本搜索很容易,但是创建一个包含数百万条数据记录的索引并且仍然能够对其进行闪电般的快速搜索是可能的,但非常困难.没
..
我正在使用 MySQL 数据库,并且一直在使用数据库驱动的搜索.数据库引擎和Lucene搜索引擎有什么优缺点?我想就何时何地使用它们提出建议? 解决方案 我建议你阅读全文搜索引擎与 DBMS.单线是:如果您的大部分用例是全文搜索,请使用 Lucene.如果您的大部分用例是连接和其他关系操作,请使用数据库.对于更复杂的用例,您可以使用混合解决方案.
..
有谁知道我在哪里可以找到有关 Lucene.Net 的更多信息? 我正在寻找有关如何使用 Lucene.Net 的教程或视频,堆栈溢出用户可以亲自推荐. 解决方案 CodeProject上有一些很棒的文章: http://www.codeproject.com/KB/library/IntroducingLucene.aspx http://www.codeproject.c
..
我知道 ElasticSearch 是基于 Apache Lucene 构建的,但我想知道两者之间的显着差异. 解决方案 Lucene 是一个 Java 库.您可以将它包含在您的项目中,并使用函数调用来引用它的函数. Elasticsearch 是一个基于 JSON、分布式、Web 服务器 构建于 Lucene 之上的服务器.虽然是 Lucene 在下面做实际工作,但 Elastic
..
我已经阅读了 lucene 4.0 的文档,现在这个库存储了一些统计数据,以便计算不同的评分模型,其中之一是 bm25.除了获取文档之外,还有其他方法可以获取其长度吗? 解决方案 你可以将任何你想要从 FieldInvertState 存储到“规范"中,它也不必是 8 位浮点数. 默认是长度的有损存储,如果您想要实际的确切长度,也许您选择为每个文档使用较短的(16 位)或其他东西.
..
我正在尝试将补丁 LUCENE-2899.patch 应用于 Solr. 我已经这样做了: 从官方 repo 克隆的 solr(我在 master 分支上) 下载并安装了 ant 和 GNU 补丁,我在这里得到它 http://gnuwin32.sourceforge.net/packages/patch.htm 将 Ant 和 GNU 补丁放入 PATH 环境变量. 我得到了这
..
这样的类别树: root_1sub_1sub_2... 到 sub_20 每个文档都有一个子类别(如 sub_2).现在,我只在lucene索引中写了sub_2: new NumericField("category",...).setIntValue(sub_2.getID()); 我想获取所有 root_1 的文档,使用 BooleanQuery(将 sub_1 合并到 sub_20)
..