- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 Elastic search 的新手,我正在尝试使用 whitespace Analyzer 创建一个 Completion suggester 演示。
As per the documentation of Whitespace Analyzer, It breaks text into terms whenever it encounters a whitespace character. So my question is do it works with Completion suggester too?
So for my completion suggester prefix : "ela", I am expecting output as "Hello elastic search."
我知道一个简单的解决方案是将多字段输入添加为:
"suggest": {
"input": ["Hello","elastic","search"]
}
However, if this is the solution then what is meaning of using analyzer? Does analyzer make sense in completion suggester?
我的映射:
{
"settings": {
"analysis": {
"analyzer": {
"completion_analyzer": {
"type": "custom",
"filter": [
"lowercase"
],
"tokenizer": "whitespace"
}
}
}
},
"mappings": {
"my-type": {
"properties": {
"mytext": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"suggest": {
"type": "completion",
"analyzer": "completion_analyzer",
"search_analyzer": "completion_analyzer",
"max_input_length": 50
}
}
}
}
}
我的文档:
{
"_index": "my-index",
"_type": "my-type",
"_id": "KTWJBGEBQk_Zl_sQdo9N",
"_score": 1,
"_source": {
"mytext": "dummy text",
"suggest": {
"input": "Hello elastic search."
}
}
}
搜索请求:
{
"suggest": {
"test-suggest" : {
"prefix" :"ela",
"completion" : {
"field" : "suggest",
"skip_duplicates": true
}
}
}
}
此搜索没有返回正确的输出,但如果我使用 prefix = 'hel',我会得到正确的输出:“Hello elastic search。”
简而言之,我想知道 whitespace Analyzer 是否与 completion suggester 一起工作?如果有办法,请给我建议。
PS:我已经在寻找这个链接,但没有找到有用的答案。
ElasticSearch completion suggester Standard Analyzer not working
What Elasticsearch Analyzer to use for this completion suggester?
我发现此链接很有用 Word-oriented completion suggester (ElasticSearch 5.x) .但是他们没有使用完成建议器。
提前致谢。
吉米
最佳答案
补全建议器无法执行全文查询,这意味着它无法根据多词字段中间的词返回建议。
来自 ElasticSearch本身:
The reason is that an FST query is not the same as a full text query. We can't find words anywhere within a phrase. Instead, we have to start at the left of the graph and move towards the right.
正如您所发现的,可以匹配字段中间的完成建议器的最佳替代方法是边缘 n-gram 过滤器。
关于 Elasticsearch : Completion suggester not working with whitespace Analyzer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48304499/
我想利用 Postgres 中仅索引扫描的强大功能,并用一张表进行了试验: CREATE TABLE dest.contexts ( id integer NOT NULL, phrase_i
我是Elasticsearch的新手,并且愿意用于全文搜索引擎。 对于文本分析,我需要使用(多语言)语言分析器。 Elasticsearch提供了内置的语言分析器,但我不确定它们是否涵盖了预处理步骤,
这是我在elasticSearch上的 Realm : "keywordName": { "type": "text", "analyzer": "custom_sto
在之前使用 Mysql 数据库的项目中,当大量数据被添加到表中时,我不得不使用 ANALYZE tablename,以便数据库为 SQL 创建合理的查询计划。 现在我将 H2 与 Hibernate
在最新的 alpha (alpha08) 中,我似乎无法弄清楚如何正确配置所有内容,以便我的 Analyzer正常运行。我可以看到它工作一次,然后它就再也不会运行了。 由于种种原因我需要使用 Text
我想匹配函数的特定参数可以为空的所有方式。现在我正在使用 hasArgument( 3, anyOf( cxxNullPtrLiteralExp
下面的代码可以按预期工作,并且当文本中存在Internet时,它将被匹配。 (.*)(Internet)(.*)
我正在使用新的.csproj文件格式来打包NuGet包,而不使用.nuspec文件。 问题是,它会将我的dll放在\lib\中,我需要将其放在\analyzers\ 我是谁完成的? 最佳答案 控制构建
在我的 Android 项目(Android 4.2 Canary 15)中,完成不再起作用(文本着色也是如此)。这仅发生在一个 Android 项目中(其他项目运行良好)。 No completio
使用雪球分析仪,当我查询“房屋”时会得到“房屋”的结果。我需要分析器进行大多数搜索,但是在这种情况下,返回值是无关紧要的。我将如何限制分析仪应对这些情况的工作? 最佳答案 您可以通过keyword_m
我正在使用带有自定义索引和搜索分析器的ElasticSearch。 我正在查询用户数据,有时在字符串中也有相同的情况。 示例:“Hello World,您好,先生!”在这里您可以看到2次“Hello”
我们在 flex 搜索索引中有很多文档,目前正在进行全文搜索。我在项目中的下一个要求是在文档中查找所有信用卡数据。用户将来也可以动态定义一些正则表达式搜索规则。但是,使用标准分析器无法搜索信用卡信息或
有人可以告诉我 mvn dependency:analyze 是如何工作的吗?我的一个项目中的 mvn dependency:analyze 输出显示 [WARNING] Used undeclare
我继承了一个不使用 ARC 的旧 Objective C 项目,并且由于第三方库的使用,可以使用 ARC。 我正在尝试解决由于访问未/释放内存而导致的一些随机崩溃。 我的首要任务之一是运行 Xcode
我正在使用 maven-2 构建一个 java 项目,由于在 pom.xml 文件中列出了一些依赖项,而其他项未列出,并且在 dependency:analyze-only mojo 配置中,fail
处理依赖关系是否仍然是一种好的做法 mvn dependency:analyze 不显示任何警告? 当代码显式使用未声明的依赖项时,或者代码未使用已声明的依赖项时,它会提示 对于后一种情况,我可以想到
我们有一些准则,我们希望如何使用我们的 namespace ,并且对它们也有访问限制。因为有时开发人员会做错,所以我们需要分析这些规则。目前我们正在用 nDepend 做这件事,效果很好。但是,有人必
我有一个 Roslyn 分析器,最近更新为使用 CSharp.Workspaces 2.3 版。我发现在构建时会收到如下警告: Analyzer attempted to register an 'a
我需要在执行VACUUM ANALYZE 后释放存储空间。我知道有 VACUUM FULL 但问题是,它锁定了可能导致问题的表(如果有正在进行的事务)。 有没有其他方法可以释放空间给操作系统? 感谢您
我通过解释分析得到以下输出: Nested Loop Anti Join (cost=0.00..36.92 rows=83 width=3) (actual time=0.303..1 0.631
我是一名优秀的程序员,十分优秀!