问题标签 [elasticsearch-mongo-river]

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 回答
565 浏览

mongodb - ElasticSearch 自动完成返回 0 次点击

我正在尝试为我们在 MongoDB 上运行的数据库构建一个自动完成功能。我们需要提供自动完成功能,让用户在输入搜索框时通过提供建议来完成他们的查询。

我收集了articles来自各种来源的集合,其中包含以下字段:

我浏览了Clinton Gormley 的视频。从 37:00 到 42:00 分钟,Gormley 描述了一个使用edgeNGram. 另外,我提到这个问题是为了认识到两者几乎是一样的,只是映射不同。

所以基于这些经验,我构建了几乎相同的设置和映射,然后恢复articles集合以确保它被 ElasticSearch 索引

索引方案如下:

但是当我运行搜索查询时,我无法获得任何点击!

谁能解释一下映射查询或设置有什么问题?我已经阅读 ElasticSearch 文档超过 7 天了,但似乎没有比全文搜索更多的东西了!

  • ElastiSearch 版本:0.90.10
  • MongoDB版本:v2.4.9
  • 使用_river
  • Ubuntu 12.04 64 位

更新 我意识到在应用以前的设置后映射被搞砸了:

应用设置后,分析器和过滤器实际上映射到文档中,而原始title字段根本不受影响!这正常吗??我想这解释了为什么查询不匹配。根本没有title.autocomplete领域或title.title领域。

那么我现在应该如何进行呢?

0 投票
1 回答
740 浏览

mongodb - elasticsearch: special behaviour of _id field?

I have some twitter data I want to work with. I want to be able to search for a name. When trying to generate ngrams of the 'name' and '_id' I run into some troubles.

first, I created the analyzers:

then I defined my mappings:

and inserted some test data:

querying by name gets me the expected results:

but querying on the id gives me no results:

I also tested to make _id a multi field like I did with name. But that didn't work either.

is _id behaving differently than other fields? Or am I doing something wrong here?

edit: using elasticsearch v1.1.2 and pulling the data from mongodb with a river plugin.

Thanks for your Help

Mirko

0 投票
1 回答
4554 浏览

elasticsearch - 排序在弹性搜索中不起作用

我正在使用弹性搜索创建索引,并希望能够对“字段”country_en 进行排序(我可能想稍后添加另一个字段)。但是排序结果不正确。

降序将返回

  • 捷克共和国
  • 德国
  • 法国
  • 芬兰
  • 捷克共和国
  • 捷克共和国
  • 德国
  • 英国

当我升序排序时,顺序再次不同,但不是字母表。

我给创建索引的命令是:

搜索是通过弹性搜索 PHP 库完成的。该命令是一个数组,但我使用 PHP json_encode 将其转换为 JSON。

正在索引的数据

0 投票
2 回答
918 浏览

mongodb - 来自 Mongo 的 ElasticSearch 河弄乱了字段映射

我正在使用 Mongo、Elastic Search 和这条河插件:https ://github.com/richardwilly98/elasticsearch-river-mongodb

我已经成功地设置了所有东西,当更新 Mongo 时,河流会保持 ES 数据的更新,但是河流会直接将 Mongo 文档中的所有属性复制到 ES 中,但我只想要这些记录的一小部分。例如,如果一个 Mongo 文档有 30 个属性,所有这些属性都被放入 ES 而不是只有我想要的 5 个。我认为问题出在映射上,我已经关注了几个文档和另一个 Stack Overflow 线程(curl -X POST -d @mapping.json + mapping not created),但它仍然不适合我。这是我正在做的事情:

我正在创建我的索引:

索引.json:

然后运行:

有了这些数据:

然后最终创建河流:

河流.json:

毕竟,河流在那个 ES 中工作是填充的,但它现在是 Mongo 的逐字副本,我需要修改映射,但它只是没有生效。我错过了什么?

这就是我的地图在河流流过之后的样子......与我想要的样子完全不同。

ES映射

在此处输入图像描述

0 投票
1 回答
257 浏览

mongodb - elasticsearch-mongo-river 如何更改数据字段

我使用 mongodb 将登录数据存储为一个集合,例如:

// userA 登录模块 mA:

// userA 也登录模块 mB:

// userB 登录模块 mB:

然后使用map-reduce框架统计每个用户每天多少次结果如下: // 计数为2,因为userA登录了mA和mB

// 计数为 1,因为 userB 登录 mB

问题是如何将减少的结果移动到弹性搜索?我希望 ES 中的数据显示为:

如何更改嵌套数据?

我使用以下命令:

但是导入的数据不符合我的要求,如下图:

0 投票
1 回答
498 浏览

elasticsearch - 是否可以在弹性搜索中使用单个 mongo-river 元导入多个 mongo 集合?

我正在尝试将多个集合从 mongodb 导入到 elasticsearch 并加入它们,可以说如果加入是不可能的,至少我希望使用单个河流元从一些 mongo 集合到河流到弹性搜索的特定字段?

尝试低于 meta ,不起作用。

探索 mongo,需要帮助吗?

0 投票
0 回答
601 浏览

elasticsearch - ElasticSearch mongo 总是 0 次点击

我试图让 ElasticSearch 在我的 Mongodb 服务器上运行,一切看起来都很好,但我所做的每个查询都返回 0 次点击。总是。

我的安装和配置日志:

  1. 安装了MongoDB 2.6.4

启动并运行。这里没有问题。我在“产品”集合中有 7000 种产品。

.2 创建副本集。

用 Mongo shell 上的 rs.status() 确认它已创建并且它是主要副本 使用 resplSet = rs0 oplogSize=100 更改了 mongod.conf

.3. 重新启动 MongoDB

.4. 启动副本集

在 mongo shell rs.initiate() 上。一切都很好。

.5. 安装 ElasticSearch 1.3.2

.6. 安装的映射器插件

.7. 安装的 River 插件

.8. 创建索引

它返回:

- - - - 编辑 - - - - -

8.5 恢复数据库

我没有这样做。创建索引后,我使用 mongorestore 恢复我的数据库,这就是我得到的:

所以我从这里了解到我的索引是创建并链接到数据库的

- - - - 编辑 - - - - -

.9. 创建简单查询

总是返回:

- - - - - - - - 编辑 - - - - - - - - - -

编辑后,这是我得到的:

所以现在我得到了点击,但是索引本身。我期待从我的数据库中获取所有产品。我开始认为我根本不明白 elasticsearch 的作用。有什么线索吗??

- - - - - - - - 编辑 - - - - - - - - - -

我不知道我在这里错过了什么。请问,有什么建议吗?

- - - - - - - - 编辑 - - - - - - - - - -

看起来是版本问题。我必须将 ES 降级到 1.2.2(我使用的是 1.3.2)。“解决”

0 投票
1 回答
156 浏览

elasticsearch - 日期后的 Elasticsearch MongoDB 河流导入

是否可以使用 elasticsearch 和 mongodb river 导入在指定日期之后创建的文档(文档包括时间戳)?

0 投票
0 回答
167 浏览

mongodb - mongodb 中的更新未在 elasticsearch 中推送

我正在使用弹性搜索和 mongodb。一周前设置河流。今天在搜索记录时,只需检查弹性搜索索引没有得到更新或修改,因为 mongodb 中的记录每天都在添加。

我正在使用以下几行来创建河流

0 投票
0 回答
316 浏览

java - 使用java在弹性搜索中创建索引创建MongoDB河

使用 Java API 在 Elasticsearch 中创建 MongoDB River

如何为上述代码创建源代码。我需要在 elasticsearch 中创建 mongodb 河,我可以使用 curl 命令进行搜索,但需要帮助来创建索引和搜索表单 java 应用程序