问题标签 [elasticsearch-geo-shape]
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.
elasticsearch - Elasticsearch GeoShape 查询中的 CONTAINS 和 WITHIN 有什么区别?
我试图确定一个多边形(在文档中索引)是否与另一个形状(如圆形)有共同点。
Elasticsearch文档提供了 4 种关系类型:
- 相交;
- 不相交;
- 包含;
- 内。
我试图找到更多信息,尤其是从 GeoJSON 方面没有成功。
我认为第一种类型可以回答我的问题,但我找不到两者之间的区别。文档很短。
谢谢。
elasticsearch - 查询具有与索引地理形状相交/在索引地理形状内的地理点的所有文档的 ElasticSearch
我有一组从我已索引到 ES 的形状文件中提取的 geo_shapes。我还有大量带有 geo_points 的文档索引。我正在尝试运行一个查询,该查询返回在 geo_shape 中有一个点的所有文档,但始终返回零结果。
我很确定映射是正确的,因为我可以查询特定的纬度/经度并成功取回它所在的 geo_shape。我还可以使用 geo_points 对文档进行边界框搜索并成功取回匹配的文档列表。
这是我的 geo_shapes 的映射:
这是带有 geo_points 的文档的映射:
我试图运行的查询是:
我正在针对包含具有 geo_points 的文档的特定索引/类型运行查询。如果我对整个索引运行它,那么只有 geo_shape 文档返回。
elasticsearch - 给定一个纬度/经度,找到纬度/经度所在的每个圆圈
我有一个这样的地理形状文件列表:
给定一个 lat/lng,我想找到这个 lat/lng 所在的所有文档。
elasticsearch - Elasticsearch - 基于其他文档 geo_shape 使用 geo_shape 搜索文档
是否可以选择使用 ElasticSearch 中的一个查询来执行搜索,如下所示:
- 获取 ID = 1 的文档
- 该文档有一个带有 geo_shape 映射的字段
- 从该字段中获取值
- 搜索 geo_shape 字段与 doc(id=1) geo_shape 相交的其他文档
- 返回找到的文档
?
ruby - Elasticsearch Ruby gem 不会返回正确的数据,而普通的 HTTP GET 会返回
我正在尝试使用 Elasticsearch 确定多边形是否包含地理点。当我使用弹性搜索gem 时,它的客户说没有匹配。但是当我发出一个简单的 HTTP GET 请求时,它会返回一个匹配项。
这是我的红宝石代码
输出:
HTTP GET 请求:
它确实返回了正确的数据:
javascript - 集成geojson查询以在angularjs中生成http请求
我正在尝试将来自弹性搜索的 geoshape 查询集成到我的 angularjs 代码中,以发出 http 请求以获取驻留在弹性搜索本地实例上的数据,但控制台会抛出无效 XMLhttp 参数的错误。我想这与我如何在我的 URL 中添加 geojson 有关。以下是我创建http 请求的功能
这是我在 angularjs 的 js 文件中调用 http 请求的方式
在我的 HTML 中,我添加了一个按钮,以便当用户单击按钮时显示结果。
javascript - 将 Leaflet Geojson 对象集成到 AngularJs 中的 Elasticsearch Geoshape 查询中
我有一个在本地 ES 实例上运行的 geoshape 查询,如下所示:
httprequest.js 与 geoshape 查询
目前我已将坐标硬编码到查询中,但我希望能够从用户在传单地图上绘制的 geojson 对象中获取坐标,并将它们插入到上述函数的坐标数组中。我可以在 dev-console 中以字符串形式显示 geojson 对象的坐标,但我不知道如何保存它们并在上面的函数中检索它们。这是我制作geojson并在控制台中显示它们的坐标的方法。
search.controller.js
elasticsearch - ElasticSearch geo_shape 查询未返回预期结果
这是为我的posts.d创建映射的代码
这是我的查询
我希望在结果中看到这个文档。
任何人都可以建议一种通过像 PAW 这样的客户端来攻击 ES 的方法吗?我只使用过浏览器,我不确定如何通过浏览器界面和查询参数进行这样的复杂查询。
elasticsearch - Elasticsearch 嵌套地理形状查询
假设我有以下映射:
索引中有一个文档:
如何进行嵌套地理形状查询?文档中常见的地理形状查询示例(可以跳过“bool”块):
嵌套查询的示例是:
现在如何组合它们?在文档中提到嵌套过滤器已被嵌套查询替换。它表现为“查询上下文”中的查询和“过滤上下文”中的过滤器。
如果我尝试查询与该点相交:
即使关系“不相交”,我仍然会取回文档,所以它不正确。我尝试了不同的组合,使用“bool”和“filter”等,但查询被忽略,返回整个索引。也许这种类型的映射是不可能的?
显然我在这里遗漏了一些东西。有人可以帮我解决这个问题吗?任何帮助是极大的赞赏。
elasticsearch - Elasticsearch 将动态映射的位置数据重新索引到 geoshape
我将一些数据记录到 Elasticsearch。但是我的模板效果不佳,并且我的位置数据映射为动态的。我想用查询脚本重新索引所有数据。如何将位置数据转换为 geoshape?
样本数据:
type
字段映射text
和coordinates
映射float
。
test3
索引放置映射请求:
我的重新索引脚本(已编辑):
弹性搜索响应:
结果为curl -XGET localhost:9200/test3