问题标签 [pyelasticsearch]

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 投票
1 回答
626 浏览

python - 如果注册的查询包含术语,则 ElasticSearch 的 Percolate API 匹配文档始终不返回匹配项

我尝试使用Percolatorby Elasticsearch,但我遇到了一个小问题。

假设我们的文档如下所示:

我们注册的查询是这样的:

我得到:

而且我不知道我做错了什么,因为如果我terms从注册查询中删除并匹配occupation它,它会按预期工作,我会得到一个匹配项。

有什么提示吗?

更新 1

好的,我认为@Slam 的解决方案是正确的方向,但我仍然有一些问题:

我更新了标签映射,现在看起来像这样:

要渗透的新文件:

当我尝试将上面的文档与 匹配时tags.raw,仍然找不到匹配项。我分析了字段tags.raw,但看起来它仍然会创建令牌computergames并且running.

0 投票
0 回答
1224 浏览

django - haystack.exceptions.MissingDependency:“elasticsearch”后端需要安装“elasticsearch”

我是 Django-haystack 的新手。遵循 Django-Haystack 文档时出现错误。

命令执行顺序,我按照:

  1. 我使用命令提示符启动了 elasticsearch 服务器(1.7.3),并且能够访问http://127.0.0.1:9200/

  2. python manage.py rebuild_index

输出:

警告:这将无法挽回地从连接“默认”中的搜索索引中删除所有内容。在此之后您的选择是从备份中恢复或通过rebuild_index命令重建。您确定要继续吗?[是/否] 是

错误:

packages\haystack\backends\elasticsearch_backend.py",第 28 行,在 raise MissingDependency("'elasticsearch' 后端需要安装'elasticsearch'。请参考文档。")

haystack.exceptions.MissingDependency:“elasticsearch”后端需要安装“elasticsearch”。请参阅文档。

当前平台(Windows): 1.Django 1.8 2.elasticsearch:1.9.0(通过pip安装)3.pyelasticsearch:0.0.5(通过pip安装)4.elasticseach:1.7.3(下载以启动elasticsearch服务器)

我已经尝试将“elasticsearch”也添加到我安装的应用程序中,但存在同样的错误。

似乎存在版本兼容性问题(可能在 pyelasticseach 中),因为我发现其他一些人也面临同样的问题。任何帮助,将不胜感激。谢谢。

0 投票
0 回答
242 浏览

elasticsearch - elasticsearch-py 驱动程序在聚合时未正确过滤数据

我在弹性搜索 python 驱动程序中遇到了一个奇怪的问题,想知道是否有人可以向我解释!下面的代码可以直接使用,cURL但不能使用python-requestsor elasticsearch-py,奇怪的是,当我切换到pyelasticsearch库时它可以工作!详情如下:

我有一个名为的类型MY_TYPE,它有一个嵌套对象MY_NESTED_FIELD和一个子文档MY_CHILD_TYPE。我正在尝试根据应用于MY_TYPEandMY_CHILD_TYPE类型的过滤器对嵌套属性进行术语方面聚合。查询看起来像

cURL当我直接(使用或插件)对 elasticsearch 运行此查询时,head它会过滤父级并根据正确的结果返回聚合。但是,当我从 python 脚本中尝试它时,它运行成功但返回错误数据(它从所有文档返回构面而不应用过滤器)

我努力了:

  • 卷曲:工作!
  • ElasticSearch 的 HEAD 插件:有效
  • python-requests 2.8.1 版:没用!
  • elasticsearch-py api 版本 1.4.0 和 2.1.0:没用
  • pyelasticsearch 1.4 版:有效

elasticsearch-py 的代码片段是:

使用 python-requests 时,代码为:

我的弹性搜索版本是:

所以我的问题是:

  1. 这是编写此查询的最佳方式吗?
  2. 有没有解释为什么 elasticsearch-py 行为异常?
  3. 在 elasticsearch-py 上是否有解决此问题的方法?
0 投票
1 回答
4484 浏览

python - 找不到记录器“elasticsearch.trace”的处理程序

更新:原来,这不是 cron 的功能。从命令行运行脚本时,如果它实际上有记录要处理并与 ElasticSearch 通信,我会得到相同的行为。


我有一个运行 python 脚本的 cron 作业,该脚本用于pyelasticsearch索引 ElasticSearch 实例中的一些文档。该脚本在命令行中运行良好,但通过 cron 运行时,会导致以下错误:

找不到记录器“elasticsearch.trace”的处理程序

显然,只有在 cron 下运行时才会出现一些日志记录配置问题,但我不清楚它是什么。有什么见解吗?

0 投票
1 回答
3139 浏览

python - 基于弹性搜索中的术语或布尔查询匹配突出显示

我有两个疑问。

有两个问题?

  1. 为什么带有 should 查询匹配的文档被突出显示,而只有 must 术语匹配的文档没有被突出显示。

  2. 有什么方法可以提及特定于上述术语查询的突出显示条件吗?

这意味着突出显示条件{ 'terms': 'metadata.loc':['ten','twenty']}

和一个单独的高亮条件{ 'terms': 'metadata.doc':['prince','queen']}

0 投票
1 回答
1565 浏览

elasticsearch - 如何在elasticsearch中对多值字段进行桶聚合

假设我的弹性搜索索引中的每个文档都是一篇博客文章,它只包含两个字段,标题和标签。标题字段只是一个字符串,而标签是一个多值字段

如果我有三个这样的文件:

我想按所有可能标签的唯一值进行存储,但是如何获得如下结果,其中包含存储桶中的三个项目。或者有没有有效的替代方案?

如果有人可以在 elasticsearch python API 中提供答案,那就太好了。

0 投票
1 回答
70 浏览

elasticsearch - 在elasticsearch中按索引搜索数组值

我有两个文档存储在elasticsearch数据库中

一个是

另一个是

现在我的问题是search记录哪些python在索引上0foo在索引上1如何实现这一点?我已经阅读了有关bool查询的信息,elasticsearch但不知道如何使用它,请帮助!

0 投票
2 回答
9428 浏览

elasticsearch - 在弹性搜索中更改集群名称

如何在弹性搜索配置中重命名当前集群?

如果可能的话,我想重命名集群而不让它崩溃。

0 投票
2 回答
4265 浏览

python - Python elasticsearch dsl搜索多字段和订单结果

我如何在弹性搜索 dsl python 模块中搜索多字段,例如titlebody字段并按created_at字段 DESC 排序。

我有这个仅在title字段上搜索的示例:

我怎样才能做到这一点?

0 投票
1 回答
2580 浏览

elasticsearch - Elasticsearch 映射空字符串

在 Elasticsearch 中,我的一个字段是一个日期,我使用与我的日期匹配的自定义日期格式定义映射。

但是,在某些情况下,我的日期字段的值只是一个空字符串"LastUpdateDate": ""并导致异常。如何处理日期字段映射中的空字符串?