问题标签 [elastica]

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 投票
2 回答
963 浏览

elasticsearch - 使用 elastica 根据位置对结果进行排序

我正在尝试使用 elastica 来学习 ElasticSearch 以进行连接并查找难以获取的信息以了解如何查询它。

所以基本上我想做的是,我已经将数据插入到弹性搜索中,添加了地理坐标,现在我需要做的是能够运行一个查询,该查询将对我得到的最接近的结果进行排序。

我想找到我所在州的所有商店,然后按照离我当前位置最近的一家为它们排序。

所以给定一个名为“state”的字段和一个名为“point”的字段,这是一个使用 elastica 保存 long/Lat 的数组,查询会是什么?

感谢您能给我的任何帮助。

0 投票
2 回答
9396 浏览

php - 如何使用 Elastica 进行查询

这是我第一次使用 Elastica 并从 ElasticSearch 查询数据

对我来说,作为初学者,我有一个关于如何使用 Elastica 查询以下代码的问题?:

希望有人可以在这里帮我一把。

谢谢,

0 投票
2 回答
316 浏览

azure - Elastica 搜索结果未得到处理

我正在使用 elastica 在 windows azure linux 虚拟机上搜索 elasticsearch 索引。我使用弹性搜索的 JAVA API 创建了索引:-

这就是我尝试连接和搜索的方式:-

它只是在输出 php 页面上打印单词“Array”。

var_dump($elasticaClient)打印这个: -

var_dump($result) 什么也不打印。

有人可以帮我吗?

0 投票
1 回答
597 浏览

elasticsearch - ElasticSearch 不返回常见查询字符串的任何结果(适用于不太常见的字符串)

我正在使用 ElasticSearch 进行一些测试,我发现它不会返回非常常见的术语的结果。我认为这可能是因为它超时、内存不足或其他相关,但我很困惑为什么我没有收到任何类型的错误反馈。

这是代码片段:

正如评论中提到的,如果我搜索一个不太常见的字符串,那么它工作正常,我会得到这样的东西:

但是,如果我搜索一些非常常见的东西,比如“the”,我不会从 中得到任何东西$eRS->getResults(),而是得到这个:

请注意,我已经确认索引中确实有许多“the”实例。这里发生了什么?我做错了吗?如果不是,我怎样才能让它吐出一些有意义的错误而不是这个明显意外的结果集?

0 投票
1 回答
896 浏览

elasticsearch - Elasticsearch 获取父字段

在我的索引中,我有两种类型的广告和产品,

产品 :

广告

那么如何获取产品的所有广告,以及如何将相关产品检索到广告

PS : 1 个产品可能有一个或多个广告,但一个广告与 1 个产品相关联

谢谢你

0 投票
1 回答
437 浏览

php - symfony2.1 FOQElasticaBundle 类加载

我在此https://github.com/Exercise/FOQElasticaBundle#readme之后设置了 FOQElasticaBundle ,使用 git 子模块安装了 Elastica 和 FOQElasticaBundle。

当我尝试应用程序/控制台时,它给出了错误The autoloader expected class "Elastica_Client" to be defined in file "/path/to/project/../vendor/elastica/lib/Elastica/Client.php". The file was found but the class was not in it, the class name or namespace probably has a typo.

我发现 FOQ 尝试在 vendor/elastica/lib/Elastica/Client.php 中加载 Elastica_Client 类,但自名为 Client 的类以来一无所获。

我随机浏览了 elastica repo https://github.com/ruflin/Elastica/blob/v0.18.6.0/lib/Elastica/Client.php,发现该类之前命名为 Elastica_Client。

问题是

  1. 与当前的 Elastica 库相比,FOQElasticaBundle 是否已过时?
  2. 还是我的自动加载出了什么问题。ps:我正在使用作曲家自动加载器?

应用程序/自动加载.php

0 投票
1 回答
1616 浏览

php - 从使用 elastica 进行弹性搜索的查询过滤器开始

我有一个适用于 web 应用程序的弹性搜索搜索实现,但我被困在最后一个细节上。我希望能够按字母顺序过滤某些字段。因此,如果我查询“d”,它应该为该字段带回所有以“d”开头的内容。目前这就是我所拥有的:

它适用于只有一项工作的领域,即“丹”。但是如果有多个单词,那么它会返回每个关键字的结果。即“丹瑞安”,“瑞安丹”。我也尝试了通配符和前缀查询,但它们给出了相似的结果。

我需要创建一个自定义分析器还是有其他方法可以解决这个问题?

0 投票
1 回答
1370 浏览

php - PHP sf.1.4 Propel 1.6:循环结果时内存泄漏

我正在使用 symfony 1.4 + propel 1.6,我想将我的所有用户数据库导出(索引)到 ElasticSearch。

我已经编写了所有脚本并且一切正常,除了一个问题。我做了一个循环,重复大约 20.000~ 次,每次 memory_usage 增加。

问题是:它不应该,因为我正在销毁所有引用。

我认为 Propel 在某处留下了对我创建的每个对象的静态引用。但是找不到它,因为我已经禁用了实例池。

有人遇到过类似的问题吗?也许有人知道如何调试 PHP 内存限制?(webgrind 没有)我在这段代码调试上花费了最后几个小时,但仍然无法修复它。

函数 $instance->toElastic 是这样的:

0 投票
1 回答
1070 浏览

php - 如何通过 Elastica 使用 ES 插件 MongoDB River 将 MongoDB 与 Elastic Search 连接起来

我是编程新手,所以我很抱歉,如果我的问题很简单。

首先,我已经使用 MongoDB River 安装和配置了 MongoDB 和 ES,但我无法通过 Elastica 找到如何做到这一点。我的例子是

还有一个查询是

我如何使用 PHP 和 Elastica 编写它们?

我举个例子

而且我找不到如何将 curl 命令与正确的 php 代码匹配。

我希望是晶莹剔透!如果您需要任何其他详细信息来帮助我,我将很乐意添加它。

先感谢您!

编辑***

编写 ElasticSearch 分析或映射的好方法是以下 chrome 扩展https://chrome.google.com/webstore/detail/sense/doinijnbnggojdlcjifpdckfokbbfpbo。这对我很有帮助。

0 投票
1 回答
789 浏览

php - 对过滤查询的结果进行排序

由于大量的过滤条件(1000 年代的权限系统),我必须使用Elastic_Query_Filtered这很好,我什至可以使用设置分页限制

在我介绍排序选项之前,这一切都很好。这是我到目前为止所拥有的:

我是在做一些愚蠢的事情还是排序还不支持。有没有替代方案。使用 bool 过滤器使事情发生在max_clause_count.