elasticsearch相关内容

太多字段对弹性搜索索引不利?

假设我有一千个键,我想存储相关的值.直观的方法似乎类似于 {“key1":“一些","key2":"someotherval",...} 对于具有数千个键的弹性搜索索引来说,这是一种糟糕的设计模式吗?以这种方式引入的每个键是否会为索引下的每个文档产生开销? 解决方案 如果您知道您将拥有的键数量有上限,那么几千个字段不是问题. 问题是当你有一组无限的键时,例如当键从一个值派生时,您 ..
发布时间:2022-01-15 12:59:12 其他开发

Elasticsearch 查询时间提升会导致顺序不足

在对每个关键字应用 boost 功能后,给定搜索关键字 一二三 的 ES 搜索结果似乎是错误的.请帮我修改我的“错误"查询,以便按照我的描述完成下面的“预期结果".我在 ES 1.7.4 和 LUCENE 4.10.4 提升标准 -三个 被认为是最重要的关键字: word - 提升---- -----一个 1两个 2三 3 ES 索引内容 - 只显示 MySQL 转储以缩短帖子 mys ..
发布时间:2022-01-15 12:58:58 其他开发

弹性搜索:“function_score"使用“boost_mode":“替换"忽略功能分数

我正在尝试使用 function_score 中定义的不同函数修改来自正常查询的分数. 为了找出我的函数计算出的分数,我将“boost_mode"指定为“replace".但是,这会使所有分数保持不变:都等于 1. 考虑以下查询: {“询问": {“功能分数":{“询问": {“条款":{“名称":[“男人",“女人"]}},“score_mode":“平均",“职能": [{“筛选 ..
发布时间:2022-01-15 12:55:08 其他开发

如何找出elasticsearch解析query_string的结果?

有没有办法通过 elasticsearch API 找出 查询字符串查询 真的被解析了吗?您可以通过查看 lucene 查询语法来手动执行此操作,但它会是如果您可以查看解析器实际结果的一些表示,那就太好了. 解决方案 正如 javanna 在评论中提到的那样,有 _validate api.以下是我的本地弹性(1.6 版)的工作原理: curl -XGET 'http://localho ..
发布时间:2022-01-15 12:53:03 其他开发

突出显示 _all 字段上的匹配结果

我希望突出显示匹配的结果.如果我提到字段名称并返回突出显示的文本,这对我有用,但是如果我将字段指定为“_all",它不会返回任何值.这对我有用: curl -XGET "http://localhost:9200/my_index/my_type/_search?q=stackoverflow&size=999" -d '{“强调":{“领域":{“我的字段":{}}}}' 这将返回预期值, ..
发布时间:2022-01-15 12:52:43 其他开发

如何在 elasticsearch 或 lucene 中基于索引类型提升搜索?

我有三个食物类型指数“意大利"、“西班牙"、“美国".当用户搜索“Cheese"时,来自“Italian"的文档似乎出现在顶部.如果我倾向于说“西班牙语",是否有可能“提升"结果?(我仍然应该得到意大利语的结果,但是基于索引类型“西班牙语"的一些数字提升值,结果中返回的文档的排序优先于“西班牙语"索引.这在用户输入 lucene 和/还是 ES 查询?如果是,怎么做? 解决方案 为 _ty ..
发布时间:2022-01-15 12:52:13 其他开发

使用 ElasticSearch JDBC River 从表中获取更改

我正在为 ElasticSearch 配置 JDBC River,但我找不到任何好的配置示例.我已阅读 pages 上的所有 elasticsearch-river-jdbc GitHub. 我有一个 SQL 查询,我需要每隔 X 秒从所有表列中获取更改.如何告诉 JDBC River 某行已更改并应重新编制索引? 在 ES 服务器启动期间获取数据,正在进行轮询,但不会将更改从 DB ..

在 not_analyzed 字段上进行 Elasticsearch 通配符搜索

我有一个类似以下设置和映射的索引; {“设置":{“指数":{“分析":{“分析仪":{“分析器关键字":{“分词器":“关键字",“过滤器":“小写"}}}}},“映射":{“产品":{“特性":{“名称":{“分析器":“分析器关键字",“类型":“字符串",“索引":“未分析"}}}}} 我正在努力实现对 name 字段的通配符搜索.我的示例数据是这样的; [{“名称":“SVF-12 ..
发布时间:2022-01-15 12:50:07 其他开发

elasticsearch 分析器 - 小写和空格标记器

如何创建一个映射来标记空格上的字符串并将其更改为小写以进行索引? 这是我当前的映射,它通过空格进行标记,我无法理解如何将其小写并搜索(查询)相同... {“映射":{“我的风格" : {“特性" : {“标题":{“类型":“字符串",“分析器":“空白",“标记器":“空白",“搜索分析器":“空白"}}}}} 请帮忙... 解决方案 我设法编写了一个自定义分析器,并且这个工作 ..
发布时间:2022-01-15 12:49:51 前端开发

我可以自定义 Elastic Search 以使用我自己的停用词列表吗?

具体来说,我想为没有停用词列表的所有内容(例如谁)编制索引.弹性搜索是否足够灵活且易于更改? 解决方案 默认情况下,elasticsearch 使用的分析器是一个 标准分析器,带有默认的 Lucene 英语停用词.通过将以下内容添加到 elasticsearch.yml 文件,我已将 elasticsearch 配置为使用相同的分析器但没有停用词. # 索引设置指数:分析:分析仪:# 将 ..
发布时间:2022-01-15 12:49:35 其他开发

如何在elasticsearch中对结果进行分组?

我将书名存储在 elasticsearch 中,它们都属于许多商店.像这样: {“书":[{“身份证":1,"title": "标题 1",“商店":“商店 1"},{“身份证":2,"title": "标题 1",“商店":“商店 2"},{“身份证":3,"title": "标题 1",“商店":“商店3"},{“身份证":4,"title": "标题 2",“商店":“商店 2"},{“身 ..
发布时间:2022-01-15 12:44:24 其他开发

多字段,多词,不匹配query_string

我希望能够将多词搜索与多个字段进行匹配,其中搜索的每个词都包含在 any 字段的任意组合中.问题是我想避免使用 query_string. curl -X POST "http://localhost:9200/index/document/1" -d '{"id":1,"firstname":"john","middlename":"clark"“姓氏":“史密斯"}'curl -X POST ..
发布时间:2022-01-15 12:42:41 其他开发

了解 Elasticsearch 中的分段

我假设 Elasticsearch 中的每个分片都是一个索引.但我在某处读到每个段都是一个 Lucene 索引. 究竟什么是细分?它如何影响搜索性能?使用默认 Elasticsearch 设置,我每天的索引大小达到 450GB 左右(我每天创建一个新的). 当我执行 curl -XPOST "http://localhost:9200/logstash-2013.03.0$i_opti ..
发布时间:2022-01-15 12:41:00 其他开发

优化 API 以减少分段并消除 ES 删除的文档不起作用

这是我之前问题的延续 大量删除的文档计数是否会影响 ES 查询性能与我的 ES 索引中已删除的文档相关. 正如答案中所指出的,我使用 优化 APIES 1.X 版本,其中 强制合并 API 不可用,但在阅读了弹性创始人 Say Bannon 的优化 API github 链接(之前在 ES 网站上找不到它)后,看起来它做了同样的工作. 在运行优化 API 后,我收到了索引的成功消息,但 ..
发布时间:2022-01-15 12:39:57 其他开发

Elasticsearch 总是返回“缺少映射类型";

我正在按照此处给出的建议使用 elasticsearch 查找部分单词: ElasticSearch n-gram tokenfilter 找不到部分单词 我创建了一个简单的 bash 脚本来尝试运行它的一个版本: curl -XDELETE 10.160.86.134:9200/productscurl -XPOST 10.160.86.134:9200/products -d ' ..
发布时间:2022-01-15 12:33:09 其他开发

通过 mongodb River 在 elasticsearch 中创建索引的映射未生效

我正在尝试使用以下命令使用 mongodb-river 在 elasticsearch 中索引 mongodb,但文档映射未生效.它仍在为字段 text 使用默认分析器(标准) Mongodb-river该文档指定了索引的创建,但没有关于如何提供自定义映射的文档.这是我尝试过的.是否有任何其他文档可以找到如何在使用 mongodb-river 时指定自定义分析器等. curl -XPUT " ..
发布时间:2022-01-15 12:32:28 其他开发

动态更改弹性搜索同义词

是否可以将 elasticsearch 的同义词存储在索引中?或者是否可以从像 couchdb 这样的数据库中获取同义词列表?我想通过 REST-API 将同义词动态添加到 elasticsearch. 解决方案 使用同义词有两种方法: 在索引时扩展它们, 在查询时扩展它们. 不建议在查询时扩展同义词,因为它会引发以下问题: 评分,因为同义词具有不同的文档频率, 多标 ..
发布时间:2022-01-15 12:32:03 其他开发

Lucene 正则表达式中的单词边界

我想在 Elastisearch 中使用 单词边界 进行正则表达式查询,但是它看起来像 Lucene 正则表达式引擎 不支持 \b.我可以使用哪些解决方法? 解决方案 在 ElasticSearch regex 风格中,没有直接等价于单词边界.初始 \b 类似于 (^|[^A-Za-z0-9_]) 如果 word 以单词 char 开头,如果 word 以单词 char 结尾,则尾随 \b ..
发布时间:2022-01-15 12:29:08 其他开发