问题标签 [elasticsearch-dsl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
538 浏览

elasticsearch - 未使用 Elasticsearch DSL 将分析器添加到字段

我正在使用 elasticsearch-dsl-py 0.0.5 和https://github.com/HonzaKral/es-django-example上的示例用于 Django。

我有一个 DocType:

我使用下面的管理命令更新我的索引。Page是我要索引的 Django 模型。

http://127.0.0.1:9200/my_index/_mapping?pretty的(简化)输出是:

我可以查询完全匹配,但词干提取不起作用。为什么雪球分析器没有添加到标题字段?

0 投票
0 回答
514 浏览

django - Elasticsearch DSL 查询未找到结果

我正在为 django 项目设置 Elasticsearch DSL。

当我使用 Elasticsearch DSL 设置索引和 doc_type 时,一切正常。我使用 sense(chrome 插件) 和 cURL 来仔细检查是否添加了 index 和 doc_type 映射,是否添加了我要存储的对象,确实如此。

当我使用 Elasticsearch DSL api 定义提交查询时出现问题 - 未找到任何结果。

这是调试所说的发送到 Elasticsearch(实际查询)的内容:

[INFO 2015-06-29 15:50:24,705 elasticsearch.trace] curl -XGET ' http://localhost:9200/_all/test/_search?pretty ' -d '{"query": {"match": { "title": "Foo"}}}'

但是没有找到结果。

如果我将此查询复制到带有 cURL 的 Sense 或终端,它会找到它。

还有其他人有这个特殊问题吗?

感谢您提供任何可能使我了解问题所在或可以采取不同措施的答案。

PS:API 文档不是很有帮助。

0 投票
0 回答
135 浏览

elasticsearch - 我正在尝试使用 Elasticsearch 来查找两个标签集的重叠

给定一个有多个标签的人和一本书有多个标签,我想为那个人找到最好的书。

我在使用 elasticsearch 时遇到的问题是,使用评分机制时,看起来只有一个标签的书优先于具有多个标签的书。

我用“好”作为我的搜索标签进行搜索,我会为 book1 获得更高的分数。同样,搜索“好”、“短”、“科幻”也会给出第 1 本书(我可能希望它们相等)。如果我有另一本书只有“好”标签,那就更糟了。

有什么方法可以添加这些字段,以便将它们计入计数?我整天都在阅读有关 TF/DF 等的信息。我基本上只想要 TF。

在 Elasticsearch 中有没有好的方法来做到这一点?这似乎是一个基本案例——即重叠两个标签字段。

这是我正在运行的搜索:

0 投票
1 回答
801 浏览

php - Yii2(或独立)中 ElasticSearch 查询 DSL 的构建器

据我所知,在 Yii2 中对 ElasticSearch 进行查询的唯一方法是运行ElasticModel::find()->query($query),其中$query是一个复杂的数组,其中包含用 ElasticSearch 查询 DSL 编写的实际查询。

查询很大,很快就会变得难以管理。对于 SQL,Yii2 提供了一个强大的查询构建器类,它支持大量有用的方法,例如andWhere(). 对于 ElasticSearch 来说,一切都集中在一个巨大的查询表达式中,非常类似于手动构建 SQL 表达式字符串。

Yii2 的 ElasticSearch 查询 DSL 是否有任何高级包装器?如果没有,是否有具有类似功能的独立库?

0 投票
4 回答
3182 浏览

elasticsearch - Elasticsearch 日期查询。某月出生的人

我有一个具有以下映射的字段:

  1. 我需要找到所有出生在 5 月的人(包括所有年份)
  2. 另一个查询是查找所有出生于“8 月 25 日”的人(包括所有年份)

那会是什么查询?

0 投票
1 回答
401 浏览

elasticsearch - 仅从弹性搜索中的索引中获取过滤的嵌套对象

我有一个包含嵌套对象的文档,如下所示:

现在我需要按标题(不是 book_title)和年份(比如说 2014 年)过滤书籍。我需要的输出将是:

当我使用嵌套过滤器时,即使它们不匹配,我也会得到所有嵌套对象。如何仅获取匹配的嵌套对象?

0 投票
0 回答
918 浏览

elasticsearch-dsl - 如何将文档添加到 Elasticsearch DSL 中的自定义索引

我已经尝试过这样的方法来创建自定义索引(有 10 个分片),然后添加一个文档:

但我收到以下错误: elasticsearch_dsl.exceptions.IllegalOperation: You cannot update analysis configuration on an open index, you need to close index test_index first.

有没有办法创建一个具有自定义数量的分片的索引,然后向其中添加文档?

0 投票
1 回答
5343 浏览

python - 在 Elasticsearch DSL 中设置请求特定超时的问题

我正在尝试timeout使用elasticsearch_dsl. 我尝试了以下方法:

笔记:

  • 当我将其更改为doc_type包含一百万个实体的类型时,查询运行良好。
  • 当我指向doc_type几十亿个实体时,我收到一个超时错误,显示默认超时时间为 10 秒。

elasticsearch_dsl 文档中我什至尝试设置默认连接超时:

我仍然收到 10 秒超时错误。

0 投票
1 回答
2334 浏览

elasticsearch - 如何记录或打印被调用的 python elasticsearch-dsl 查询

我正在为我的 python 应用程序使用elasticsearch-dsl来查询弹性搜索。

为了调试 elasticsearch-dsl 库实际生成的查询,我无法记录或打印到 elasticsearch 的最终查询。

例如,像这样查看发送到 elasticsearch 的请求正文:

试图将 elasticsearch 日志级别带到 TRACE。即使那样,也无法看到已执行的查询。

0 投票
1 回答
1045 浏览

python-2.7 - 使用 elasticsearch-dsl 创建具有整数字段的 DocType 类

我想使用 elasticsearch-dsl 0.0.9 库但是他们的例子已经过时了。我安装了最新版本,并且 Integer 和 Boolean 类型不再存在。

因此他们的例子是行不通的。

有人知道如何声明一个整数字段吗?

谢谢。

编辑

根据此文档https://media.readthedocs.org/pdf/elasticsearch-dsl/latest/elasticsearch-dsl.pdf整数类型在 0.0.9 中仍应可用

我不知道为什么它不会找到它。

正如您从我的 pip 输出中看到的那样,我确实安装了 0.0.9 :Downloading elasticsearch_dsl-0.0.9-py2.py3-none-any.whl