我正在使用Lucene为具有名称和类型的组件编制索引。一些组件更重要,因此,得到更大的推动。然而,我无法让我的动力正常工作。我可能会发现一些组件出现得晚一些(得分更差),即使它们有更高的提升
请注意,索引只在一个字段上完成,我已将提升设置为该字段。我在Java中使用Lucene
我不认为这和场长有任何关系。我见过同名(但类型不同)的组件得到错误的分数 Boost只是Lucene命中率得分的一个因素。但它应该起作用。你能给出一个更完整的例子来说明你所看到的行为,以及你所期望的吗?正如我所记得的,增
我在获取一个简单的URL来正确标记,以便您可以按预期搜索它时遇到问题
我正在使用StandardAnalyzer索引“”,它将字符串标记为以下内容(调试输出):
(http,0,4,type=)
(news.bbc.co.uk,7,21,type=)
(sport1/hi,22,31,类型=)
(足球,32,40,类型=)
(internationals/8196322.stm,41,67,type=)
总的来说,它看起来不错,http本身,然后是主机名,但问题似乎来自前斜杠。当然,应该把它们
我们目前正在为使用Solr的客户机进行概念验证,并且能够配置除评分之外的所有功能
问题是,他们想要的分数会让结果一落千丈:
第1组:类别上的精确匹配(分数=4)
Bucket 2:名称完全匹配(分数=3)
第三组:类别部分匹配(分数=2)
Bucket 4:名称部分匹配(分数=1)
我们做的第一件事是开发一个自定义的相似性类,它将根据字段和精确或部分匹配返回正确的分数
现在唯一的问题是,当一个文档在类别和名称上都匹配时,分数就会加在一起
示例:搜索“餐厅”将返回名称中包含单词restaura
在Lucene中的文档中发现关键字时,获取通知(比如事件)的最佳方式是什么
蛮力搜索的方法是在短时间内持续搜索关键字,但这似乎效率很低,而且没有“实时性”看看MemoryIndex:
它是Lucene contrib的一部分,专为您正在构建的发布/订阅系统而设计。但是,我已经有一段时间没有看到这一点了,我不确定它是否正在积极维护。除非我遗漏了什么,否则在添加n+1文档时,看看它的标记如何?为什么你需要点击整个索引?我想这是我能得到的最接近我想要的。虽然我对它在内存中保存索引这一事实不太满意。我
我想从搜索查询中删除对查询没有意义的单词/短语(我们可以称之为停止短语)。例如:
“如何……”
“我在哪里可以找到…”
“这……是什么意思?”
等等
在哪里找到/如何计算英语和法语的“常用短语”列表
如何在Solr中实现它(有什么比stopwords特性更高级的吗?)
我认为你不应该试图完全摆脱这些短语,因为它们揭示了搜索者的意图。您可以尝试利用它们的存在,使用自然语言问答系统,如。甚至还有一个目标是将it与Lucene集成。我自己也没用过,但至少评估一下吧
值得一试
如果您决定删除它们,那么我
在索引时,我以这种方式增强某些文档:
if(myCondition)
{
文件.SetBoost(1.2f);
}
但在搜索时,所有质量完全相同的文档,但一些通过和一些失败的myCondition最终都具有相同的分数
以下是搜索代码:
BooleanQuery BooleanQuery=new BooleanQuery();
添加(newtermquery(newterm(FieldNames.HAS_PHOTO,“y”)))、BooleanClause.occure.MUST);
添加(新术
我对Lucene很陌生。我有一个Lucene 4.0索引,我想计算第n个最频繁的单词来创建一个停止词列表。我在Lucene的早期版本中发现了处理此问题的帖子,如however it Seequire reader.terms()在4.0中已被弃用
我如何使用Lucene 4.0实现这一点
谢谢 你可能想看看Lucene撰稿人之一Mike McCandless的作品。您要查找的可能是TermsEnum.totalTermFreq()下面是一个使用lucene misc软件包中的高频项的示例
请注意
给定包含此文本的文档,在名为Content的字段中编制索引:
The dish ran away with the spoon.
以下查询与该文档不匹配:
+Content:dish +(-Content:xyz) <-- no results!
+Content:dish+(-Content:xyz)Lucene并不是从一个完整的视图开始的,比如SQL数据库。Lucene开始时没有匹配的文档,并根据搜索到的子句查找内容。这就是为什么:
-Content:xyz
单靠它自己是不行
这个问题以前是用Sitecore 6.x的限定词提出的
由于Sitecore 7.0已经面世并被广泛使用,我的团队和我都需要一个新的答案和辩论来回答这个问题
在Sitecore 7.0内容交付中重建自定义索引的最佳方式是什么
编辑:更多信息我无法访问正在开发的代码。我在多个Sitecore实例上运行了大约320个不同的网站,大多数网站都有自己的Lucene索引。不确定这是否是您要查找的内容,但我们编写了一个由任务代理调用的类。类本身只是查找指定的索引并重建它
Sitecore.Search.Se
标签: Lucene
loadfielddocumentlazy-evaluation
有人有一个想法,如何加载lucene searcher懒惰的字段?
我不明白
My Lucene Indexs的文档包含如下字段:
UF1:未存储字段1
UF2:未存储字段2
…:其他一些未存储的字段
SF1-存储字段1
SF2-存储字段2->但是这个字段有很多文本
现在我正在搜索索引。当我得到很多结果文档时,似乎SF2中的所有内容都是由lucene加载的,所以RAM增长非常快。
但是,我需要搜索的唯一字段是SF1。此搜索永远不会使用SF2
是否可以将特殊字段“SF2”从加载到结果文档中排除
当我们尝试重建Lucene(ContentSearch)索引时,爬行日志中充满了以下异常:
7052 15:08:21 WARN Crawler : AddRecursive DoItemAdd failed - {5A1E50E4-46B9-42D5-B743-1ED10D15D47E}
Exception: System.AggregateException
Message: One or more errors occurred.
Source: mscorlib
at Syste
要在lucene中存储数值,我使用
这些值存储在哪里?在内存中还是在磁盘上
如果是在内存中,如何将它们存储在磁盘上?反之亦然
我正在使用lucene 4.6.0
这些值存储在哪里?在内存中还是在磁盘上
取决于您正在使用的
如果您正在使用,那么它将被写入磁盘,如果您正在使用,那么索引将与所有字段(数字或非数字)一起保存在内存中
只需使用相关的目录实现即可在所需介质上获取数据。好的。此外,我目前正在使用MultiDocValues.getNumericDocValues()获取DocValues。我
我目前面临着一个Lucene方面的问题
我的文档看起来像:
doc1:
- title: lorem
- facetField: east west
doc2:
- title: ipsum
- facetField: north
doc3:
- title: dolor
- facetField: south
doc4:
- title: sit
- facetField: north west
我想使用facets缩小我对只包含文本west的文档的搜索结果
据我所知
关于Neo4j中lucene索引的几个问题,以及在查询和遍历过程中如何使用这些索引。基本上,关系存储在磁盘(链接列表)上的方式,在我看来,任何图遍历都需要连续访问节点的所有关系——不确定在这种情况下如何使用索引。更具体地说:
1) 当节点属性被索引时,如何将其用于诸如“朋友的所有女性朋友”(性别被索引)之类的查询。我看到索引被使用的唯一方法是首先查找朋友的所有朋友,然后向lucene提交查询以获取所有女性。但这比仅仅在内存中进行比较快吗
2) 当关系属性被索引时。由于关系存储在一个链表中,因此不
标签:elasticsearch Lucene
tf-idf
我的用例如下所示:
对于一个查询iphone charger,我得到了更高的结果相关性,name,iphone charger优惠券,而不是nameiphone charger,可能是因为description和其他字段更匹配。提升name字段没有多大帮助,除非我大幅扭曲了重要性。我真正需要的是tf/idfname字段中的boost
引用elasticsearch:
字段中项的频率由字段的长度偏移。然而,实际评分函数以相同的方式处理所有字段。它会将所有标题字段(因为它们很短)视为比所有正文字段(
我知道,对于分析字段,Lucene会将子句标记化,然后将标记存储为反向索引以进行搜索。但是Lucene如何对未分析的字段进行索引,我不相信它仍然是一个反向索引。是B树还是散列?未分析的字段也存储在反向索引中,与分析字段的存储方式相同,它们只是。。。没有分析。这意味着字段值在被索引之前不会被标记化,等等
因此,如果您的not\u analysisted字段包含值New York,那么该值将在反向索引中不被修改和修改,并且您仍然能够搜索包含该精确值的文档。这在某种程度上类似于分析字段,其分析器是
我有一个文档集叫做Message。作为迁移操作的一部分,我在迁移的记录上设置时间戳,例如
...
new PatchRequest
{
Type = PatchCommandType.Set,
Name = "MigratedDateTime",
Value = DateTime.UtcNow
},
...
我可以在MigratedDateTime字段上创建索引,MigratedDateTime:[2016-02-11至2016-02-12],但我不知道如何查找根本未设
我想知道是否可以手动设置文档id?也就是说,我只想将lucene用作索引搜索。所以我在应用程序中已经有了某种id->文本映射,希望我的搜索返回匹配的id
我明白我可以:
搜索->获取lucene生成的id->根据这些id搜索->获取我的id作为文档字段。
但是我为什么要做我并不真正需要的额外操作呢?对于某种评论,我自己的问题是:Lucene DocID不是你可以依赖的东西——它们是Lucene内部的,可以随着时间的推移而改变,这意味着你不能分配它们。然而,为了节省通过lucene DocId搜索
我正在寻找一种在OrientDB中使用的方法。我需要的是将minGram和maxGram参数传递给构造函数。演示如何将分析器与无参数构造函数一起使用:
orientdb> CREATE INDEX City.name ON City(name) FULLTEXT ENGINE LUCENE METADATA
{"analyzer": "org.apache.lucene.analysis.en.EnglishAnalyzer"}
但是如何使用带有参数的标记器呢?我可以
假设我有这样一个代码:
SimpleFacetedSearch sfs = new SimpleFacetedSearch(_Reader, new string[] { "source", "category" });
SimpleFacetedSearch.Hits hits = sfs.Search(query);
foreach (SimpleFacetedSearch.HitsPerFacet hpg in hits.HitsPerFa
标签: Lucene
azure-cognitive-search
我正在试验Azure搜索。在我的搜索索引中,我有一个名为“description”的字段。此字段中的一些条目示例包括:
"The trusted leader"
"The champions event was bested"
"Another day, another dollar"
"The player will succeed if he's well rested"
"Go on to the next event"
我试图创建一个正则表达式,返回以“ted”结尾的结果。例如,我想
应用程序启动时有Lucene索引,大约需要10-15分钟。项目部署在Mule ESB中,该ESB在启动之间突然重新启动
是否有任何方法可以更改Mule ESB的超时以使其成功部署应用程序?在conf\wrapper.conf中,以下是可以增加启动超时的参数:
mule运行时配置中的wrapper.startup.timeout=9000wrapper.startup.timeout
转到/{Mule Home}/conf/wrapper.conf
我使用的是Elasticsearch版本6.3,我想跨多个索引进行查询。Elasticsearch支持这一点,我可以在url中以逗号分隔的值提供多个索引,在请求正文中提供一个查询,还可以提供大小参数来限制返回的搜索结果数量。但是这限制了整个搜索结果的大小搜索结果,可能导致某些索引没有结果-因此,我想从每个索引中获取前n个结果
我尝试使用多搜索api(_msearch),但似乎我必须为所有索引提供相同的查询和大小,这是可行的,但我无法在整个结果上获得单个聚合,是否有办法解决这两个问题?解决方案1:
我有一个ASP.NET站点,有SQL Server数据库支持。我一直在使用Lucene.NET对数据库进行索引和搜索。我正在向结果页面添加分面搜索导航(分面是一个层次分类树)。我昨天要求确保我使用了正确的刻面技术。到目前为止,我得到的只是一个使用Solr的建议,但是Solr做了很多我不需要的事情
我真的很想从熟悉Solr源代码的任何人那里知道Solr的方面处理是否与。基本上,每个方面都有一个Lucene过滤器,从中获取位数组,然后计算数组中的设置位
我在想,既然我的设计一开始就不符合逻辑,我应该
我知道lucene创建了一个索引并存储了所有的数据。有人能告诉我数据是如何存储在平面文件中的吗?或者他们使用什么样的算法将数据存储在后端,以便快速检索数据?您可以阅读本书,了解信息检索系统中使用的数据结构、算法和模型。您可以找到本节中解释的所有内容。不知道这是否是您要求的。但更一般的答案是,他们使用/实现了一个。Lucene如何储存的细节你可以在中找到(正如米兰所说)
但总体思路是,它们存储反向索引数据结构和其他辅助数据结构,以帮助快速回答查询。例如,它存储每个文档和每个术语的IDF()的规范向
标签: Lucene
performance-estimation
我用lucene库搜索一种估计索引时间、索引大小和搜索时间的方法
我有一些500文件的数字,我想估计5000文件的价值
我在网上搜索,没有找到任何好的方法来估计论文数量。答案在很大程度上取决于你在索引中输入了什么。显然,如果存储全字段内容,则至少可以预期线性增长,系数在1的数量级以内。如果只对术语进行索引,则需要的空间会小得多,但同时估计会变得困难得多。例如,唯一索引项的数量是一个非常重要的因素。这可能会开始稳定在某个高度依赖于内容细节的数字上。总之,在这种情况下,度量可能是您唯一可靠的方法。将
我想使用lucene快速搜索我的数据库表。
表查询是从tablexyz中选择x,y,z。可搜索字段是x。它有200万行。我想在web应用程序中使用它,并在搜索页面上显示数据。有人使用Lucene将整个表存储在文本文件中吗?我想这就是您要寻找的
要开始,请执行以下操作:
首先读一读,
然后看看哪种可能是索引内容最简单的方法
无论您在web应用程序中使用何种技术,Solr都有将整个表存储在文本文件中是什么意思?如果该表有200万行,则所有行都将存储在文本文件中,以便搜索apache lucene
Sitecore/Lucene是否支持内容过滤/排名
我找不到任何相关文档。Lucene返回排名结果,您可以使用QueryOccurance.MustNot子句构造查询以筛选结果,或者使用QueryOccurance.Should子句提高结果
从QueryOccurance类的Sitecore:
Lucene在complex中对搜索词使用以下运算符
查询:
必须–搜索词必须出现在要搜索的文档中
包含在搜索结果中。
应–搜索词可能出现
在文件中,但不是必需的,并且文件可能
包含在基于其他条
我在Lucene中根据三个字段为文档编制索引:标题、地址、城市。现在我想构建我的查询,比如说,CAB,这样我就可以按如下方式检索文档:
C必须出现在文件的标题字段中,A或B必须出现在匹配文件的地址和城市字段中。在这两个字段中都存在的文档应该得到更高的分数或更高的提升。这里A、B、C可以是单个术语或短语
我是Lucene的新手。我没有构建这种复杂查询的经验。在这种情况下,我读了这篇文章
但这篇文章并没有回答我的问题。因此,如果有人能帮我解决这个问题,我将非常感激
标题:C和(地址:A^2或城市:A
我有一个关于lucene Stemmer的问题。
我想知道lucene是保留词干词和非词干词,还是只是用非词干词替换词干词
例如,如果记录具有以下内容:
“每个人都喜欢猫”
它会被编入索引吗
“人人都爱爱猫”或“人人都爱猫”
它对查询和记录都有相同的策略吗?通常,只保留带词干的版本。也就是说,在您的示例中,最终结果将是“每个人都爱猫”,而不是“每个人都爱猫”或类似的组合
在索引和查询时,您需要使用相同的词干分析器。可能有一些词干过滤器允许您保留原始内容,但这样做并运行未词干查询会导致短语查询无法
假设您有一组文档,您已经为这些文档定义了一个。还假设某些文档具有嵌套文档,而某些文档没有:
文件1
文件2
文件3
问题
是否有执行以下SQL查询的等效方法:
SELECT
r.id,
COUNT(*)
FROM
root r
LEFT JOIN
nested n
ON parent(n) = r
WHERE
n.x = 1 /* nested condition */
GROUP BY
r.id
使用ElasticSe
我试图在RavenDB索引中编写Lucene查询,它将返回按某个字段排序的结果
但仍然没有成功
查询如下所示:
语言:EN和键:*car*和排序=键
问题:
是否可以在查询中添加排序语句?
如果是,排序语法是什么样子?否。排序参数随查询一起传递,但不在查询中传递。如果您使用的是C#客户端API,那么您将有一个操作符OrderBy,否则您很可能使用REST API,在该API中,排序参数将作为附加URL参数传递
我有和这个问题一样的问题。我尝试了两种解决方案,但我仍然有同样的问题。我猜自动加载是个问题
这是我在\vendor\ZendSearch\vendor\composer文件夹中的自动加载\u namespaces.php文件:
// autoload_namespaces.php @generated by Composer
$vendorDir = dirname(dirname(__FILE__));
$baseDir = dirname($vendorDir);
我正在构建一个由文档组成的Lucene索引,每个文档包含三个字段(“一”、“二”和“三”)
当我要查询这个索引时,我需要在每个文档中包含的三个字段中的两个字段中搜索与我搜索的匹配的术语(比如“一”和“三”)
有没有一种方法可以索引这两个字段,以便在构建阶段获得这些字段
我知道我可以指定查询应该搜索哪些字段,但我需要提高查询速度
谢谢您可以将这两个字段合并为一个字段。琐碎的,真的。只需将它们连接起来,并在一个仅索引(未存储)字段中对它们进行索引。我在这里遗漏了你问题的某些方面吗?你想按第一和第三字
我有一个lucene索引,里面有很多文档
现在,我用以下代码显示所有文档路径的列表:
public List<Verbatim> GetAllPath(string indexFolder)
{
FSDirectory directory = FSDirectory.Open(indexFolder);
List<string> pathlist = new List<Verbatim>();
Inde
标签:elasticsearch Lucene
tokenize
鉴于以下html文本存储在lucene索引中的文档字段中,我希望能够对“jquery”或“jquery.min”或“jquery.min.js”执行查询字符串查询,并返回一个命中结果
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"></script>
我遇到的问题是,我可以搜索“jquery”或“jquery.min
我正在尝试索引,然后用lucene搜索整型字段。但它什么也找不到(文本字段搜索很好)
对于搜索,我尝试使用下一个查询:
1) new QueryParser(defautField, new StandartAnalyzer()).parse("userType:1");
2) new QueryParser(defautField, new StandartAnalyzer()).parse("userType:[1 TO 1]");
3) new QueryParser(defautFiel
我正在编写查询获取所有名称中包含“am”或“pm”的文档,我的查询如下:(sellerName:am-pm)
退回的文件如下:
doc1:
seller name:am
city: bangalore
state:Kar
country:In
zip:560034
seller name:pm
city: bang
state:Kar
country:In
zip:5600
我只需将一个文档添加到索引并关闭它(Lucene 5.5.0):
字段isbn已存储且未标记(StringField)
字段title被存储并标记(TextField)
我可以通过isbn检索此文档,包括:
IndexSearcher searcher = new IndexSearcher(DirctoryReader.open(index));
Query q = new TermQuery(new Term("isbn","9900333X"));
TopDocs td = searc
运行此查询时:
{
"query_string" : {
"query" : "text",
"fields": ["field1", "field2"]
}
}
-
有什么区别?何时使用其中一种,何时使用另一种?,如图所示
因此,查询字符串的功能要强大得多,但它也可能导致意外情况,例如,/可能会导致字符串的一部分被解释为正则表达式
DrTech在演示这两个方面做得非常出色
{
"multi_match" : {
"query" : "text",
我正在为产品名称“T恤”编制索引。我的分析仪会损坏“t恤”=>“t”、“衬衫”、“t恤”。
我将WordDelimiterFilter与catenate_单词和空白标记器一起使用。但我不希望搜索在查询“衬衫”时呈现“t恤”,它确实如此。谢谢这里的问题是ElasticSearch默认将字符串标记为analysisted=true。
您需要修改文档以将产品名称保存为“未分析”,这样可以帮助您将WordDelimiterFilter中的generate\u word\u parts设置为false。默
我使用下面的解决方案在应用斯坦福NLP时删除停止字
此项目依赖于旧版本的Lucene(3.6.2)
我需要将此代码迁移到lucene 5.5.2,以利用lucene的最新功能
当我试图修复下面的文件时
我注意到以下类在lucene 5.5.2中不再可用
import org.apache.lucene.analysis.CharArraySet;
import org.apache.lucene.analysis.StopAnalyzer;
import org.apache.lucene
Lucene布尔运算符的工作方式会像java还是C?如果我的查询是搜索string1和string2,Lucene会先搜索string1然后再搜索string2吗?如果在索引中找不到string1,它会搜索string2吗 否,lucene查询中没有短路。其中一个原因是搜索结果不是简单的二进制是或否,而是必须根据它们与每个术语的匹配程度进行评分
我正在使用alfresco并尝试执行这些查询
这是我的疑问
第一:
路径:“/app:company_home/st:sites/cm:swsdp/cm:datalist/cm:aea88103-517e-4aa0-a3be-de258d0e6465/*”
第一个查询工作正常,但第二个查询无法解析
第二
+路径:“/app:company_home/st:swsdp/cm:/cm:datalist/cm:9787a75b-cbc9-4d42-b76c-df88461e62c6/*”
例外情况:
标签:elasticsearch Lucene
reindex
我正在运行Elasticsearch 6.2.4。我有一个程序,可以自动为我创建索引以及数据所需的映射。对于这个问题,我创建了一个名为“landsat”的索引,但它实际上需要命名为“landsat_8”,所以我选择重新编制索引。原始“陆地卫星”索引有2个碎片和0个读取副本。存储大小约为13.4gb,每个碎片约为6.6gb,索引可容纳515k多个文档
我创建了一个名为“landsat_8”的新索引,其中包含5个碎片,1个读取副本,并启动了一个没有特殊选项的重新索引。在一个非常小的弹性云集群(4GB
我使用了hibernate搜索,在那里我用@索引,@字段等注释了域。
我的项目基于多种微服务,如
搜索服务-在启动时从数据库读取数据并创建索引。(代码如下所述):
@Transactional(readOnly=true)
public void初始化hibernatesearch(){
试一试{
FullTextEntityManager FullTextEntityManager=Search.getFullTextEntityManager(centityManager);
fullTex
实体类中有两个字段:
机构名称
接触式
contactType具有PBX、GSM、TEL和传真等值
我想要一个评分机制,以便首先获得最匹配的数据,然后是PBX、TEL、GSM和传真
评分:
在机构名称上首先获取最匹配的数据
在contactType上,首先获取PBX,然后获取电话,依此类推
我的最后一个问题是:
(+机构名称:kamran~1^2.5+(联系人类型:PBX^2.0联系人类型:电话^1.8联系人类型:GSM^1.6联系人类型:传真^1.4))
但它不会返回结果
我的问题是,如何
我们正在同一索引中存储多个存储的数据。
我们想为几个字段创建facet,比如category(分层)、price、color、size、price,但我们想计算每个商店id的facet。
我们将永远不会有一个用例——我们希望跨商店计数
我们如何处理这个用例,我们是将storeid添加为facets所有值的一部分,还是将所有facets声明为分层的,并将storeid作为第一级可能有多种方法来处理这个问题,但根据我的经验,我建议在为facets创建深入查询时(要指定您感兴趣的类别层次结构中的级别)
我理解VSM、TFIDF和余弦相似性的概念,但是在阅读lucene网站后,我仍然对lucene如何构建VSM和计算每个查询的相似性感到困惑
据我所知,VSM是一个矩阵,其中填充了每个项的TFIDF值。当我尝试从一组文档构建VSM时,使用此工具花费了很长时间
这实际上与编码无关,因为直观地构建大型数据的VSM矩阵非常耗时,但lucene似乎不是这样
此外,使用预先构建的VSM,查找最相似的文档基本上是计算两个文档之间的相似性,或者查询vs文档通常非常耗时(假设有数百万个文档,因为一个人必须计算与其
我正试图从Lucene目录中检索唯一术语的列表。在索引过程中,我创建了一个具有TermVector类型的字段:
private void addDoc(IndexWriter writer, String content, String title, String id) throws IOException {
Document doc = new Document();
doc.add(new TextField("content", content, Field.Store
上一页 1 2 ...
20 21 22 23 24 25 26 ...
下一页 最后一页 共 78 页