问题标签 [elasticsearch-php]
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.
php - 带有文本字段的 Elasticsearch 基数聚合
我正在尝试查询每个会话中生成的平均请求,我在将数据放入索引时插入了一个 session_id,我想计算不同的会话并取出平均值,同时检查我知道的数据映射它在文本字段中:
为了获取我调用的数据:
但我收到一条错误消息:
如果我根据关键字进行更改:
它给了我 0 价值
elasticsearch - 在弹性搜索中生成数据表
我正在尝试制作一个包含一些计算的数据表
我创建了一个包含所有数据的索引,因此我的数据以以下格式存储:
因此,根据我的数据集,我想获取所有唯一的bidderCode(将在表中表示为Bidder)并使用相应的计算生成数据。例如
- 请求 - 这将是聚合中的文档总数
- CPM - CPM 将是所有 CPM 的总和除以 1000
- 收入 - 总 CPM 乘以 1000
- 响应时间 - (responseTimestamp - requestTimestamp) 的平均值
我怎么能做到这一点,我有点困惑。我尝试通过以下方式构建块:
但它向我显示错误:
我是新手,请帮助我。谢谢。
elasticsearch - 带有分组查询字符串的 Elasticsearch
弹性搜索的新手。根据此处的文档构建 JSON:https ://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-query-string-query.html
但是,查询运行时Sydney, Australia
也会返回带有其他城市的结果。为什么 AND 部分不起作用?
我希望搜索词组与名称、关键字中的一个或两个匹配,但城市应该是严格意义上的悉尼。
elasticsearch - Elasticsearch Completion Suggester 忽略 Index 参数并返回多个索引的结果
我正在使用 Elastic 的 PHP 实现来使用这样的 Completion Suggester:
但是,响应还包含其他索引:
我担心这可能会影响性能,因为其他一些索引也包含一个suggest1
, 字段并且它们被搜索并返回结果。我没有更改名称,有时我想以类似的方式处理建议字段,但是跨索引具有相同的建议类型字段名称是否有问题?
或者有没有办法更明确地定义索引?我也尝试将索引名称附加到端点,但结果相同。我在 PHP 实现中找到了一个明确的建议端点,但它似乎已被弃用?任何帮助深表感谢!
elasticsearch - 返回 Elasticsearch 中搜索查询的位置和突出显示
我正在使用安装在个人 Debian 服务器上的官方 Elasticsearch-PHP 客户端,我正在尝试做的事情包括索引、搜索和突出显示单个文档。即每个搜索结果将只返回一个文档 - 然后将突出显示“简单查询字符串”搜索。我也在使用 FVH(快速矢量突出显示)。
我的问题和这个Position 结果类似,不是高亮,而且测试代码基本相同,这里不再赘述。但是在我的情况下,我需要定位和突出显示。我点击了有关术语向量的文档的链接,但就像其他 OP 一样,我的搜索本身并不是确切的单词。在某些情况下,它们是短语。我将如何处理这个?
我的用例是只搜索一个文档(对于每个查询),并显示带有链接的结果摘要,用户可以单击这些链接转到文档中该结果来自的特定位置。如果我有索引/位置,我可以简单地将它用于文档的完整来源。我检查了文档无济于事。
php - 使用通配符、范围和术语进行 Elasticsearch 搜索
我正在尝试在具有 product_name、exported_at 和 category_id 等字段的 Elasticsearch(7.1 版)索引上编写搜索 DSL 查询。
从文档中我了解到,我需要使用通配符、范围来搜索日期字段和术语来过滤所需的 category_id。
示例:我需要过滤其 SQL 为的数据:
更新代码如下:
现在的问题是,如果使用像“地理”这样的单个词作为它工作的产品名称,搜索就可以工作,而搜索像“亚洲地理”这样的多个词将不起作用。
elasticsearch - Elasticsearch 批量操作:如果不存在则插入,否则更新或添加嵌套元素
在弹性搜索7.11.0
中,我有描述的产品。
我已经通过批量index
操作添加了这个产品。如果存在,它将更新它,如果不存在,它将创建它。
我收到来自多个商家的产品。一种产品可以存在于一个或多个商家中。这就是为什么我有嵌套元素merchants
。
作为操作想要做的事情bulk
如下:
导入运行:
- 产品不存在:
Create a new product with a nested merchant
- 产品存在:
Check if the merchant exists. If not, create a new nested element, otherwise update the nested elements
我可以一个一个地做,但是由于产品的数量,它不是很方便。我正在使用elasticsearch PHP package
.
elasticsearch - 如何在 Elasticsearch 查询中优先考虑文档
我的索引中有产品。文档的结构基本上是这样的:
当我搜索“ BANANA
”时,我会优先考虑与mainTaxon
不同的产品JEANS
。因此,带有mainTaxon
名称T_SHIRT
或其他名称的每个产品都将列在带有mainTaxon
JEANS
.
php - Elasticsearch-PHP 7 返回给定映射的所有文档
概括
无法使用 ElasticSearch-PHP 7 包从我的 ElasticSearch 实例中获取任何/所有文档。
当我运行 Curl 查询时,效果很好。所以我知道我已经正确地批量插入了文档。意味着文件确实存在。
卷曲成功
卷曲电话
Elasticsearch-PHP 7 搜索手册
https://www.elastic.co/guide/en/elasticsearch/client/php-api/current/search_operations.html
转储的结果无法显示结果
更新了可能的解决方案?
菜鸟之举,我应该对比一下版本。包 elasticsearch/elasticsearch 有一个版本映射。
https://www.elastic.co/guide/en/elasticsearch/client/php-api/current/installation.html
我目前正在使用弹性搜索/弹性搜索的 v 5.2。
看起来 v5 不支持 match_all?这对我来说真的很奇怪。我认为一个基本功能是获取所有文档。我知道它是一个搜索工具,也许它只是专注于过滤的搜索结果。并且它可能只是以未记录的不同方式处理它。
v5:https ://www.elastic.co/guide/en/elasticsearch/client/php-api/5.x/_match_query.html
我目前被锁定在我的工作 VPN 之外,无法升级软件包进行测试。一旦我有能力就会跟进。
elasticsearch - 使用 Elasticsearch php 的多个 OR 和 AND 条件
我想用 ElasticSearch 实现以下查询:
product_shipper = 1 AND ((product_type = product and price>0) OR (product_type = product_variation and price=0))
我已经构建了以下查询,但它不起作用,给我发送了一个空结果:
我究竟做错了什么?