问题标签 [bonsai-elasticsearch]
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.
django - Bonsai ElasticSearch + Heroku + Python - 同义词文件的位置
我正在使用 bonsai.io 并希望将 elasticsearch 指向我的同义词文件。
我将 wn_s.pl 保存在 heroku 上的一个文件夹中,django 应用程序可以看到该文件:
但是当我使用过滤器创建索引时:
我得到的错误是:
我应该如何解决它?
谢谢
ruby-on-rails - Heroku Bonsai 与 gem 'bonsai-elasticsearch-rails' 仍在寻找端口 9200
我按照 Heroku 的说明设置 Bonsai Elasticsearch:
https://devcenter.heroku.com/articles/bonsai
所有这些都在我的 Gemfile 中:
但是,当我运行时仍然出现以下连接错误时:
Elasticsearch 在本地工作,我无法让它在 Heroku 上工作。
我的模型是:
我有一个 rake 文件:lib/tasks/elasticsearch.rake
我也在使用 Devise,但我认为它不会影响这一点。在 Rails 4.1、Ruby 2.1.2 上。
有什么建议么?
** 编辑 **
我取出了 bonsai-elasticsearch-rails gem 并添加了:config/initializers/bonsai.rb
在寻找端口 9200 时仍然遇到相同的错误
** 编辑 2 **
使用相同的错误:
ruby-on-rails - 我是否使用了正确的弹性搜索查询?
使用elastsearch-rails gem,目前我有:
我注意到,通过进行多重匹配/交叉字段搜索,如果我搜索在 Employee 数据库列中只出现一次的术语(例如,“John”只会出现在 first_name 中,而不出现在 job_description 或 job_title 中),那么我没有结果。如果一个术语(比如“律师”之类的职位出现在多个字段中,例如 job_description 和 job_title),我会返回结果。为什么是这样?这似乎违反直觉。
ruby-on-rails - URI::InvalidURIError:http 方案不接受注册表部分::9200(或错误的主机名?)
我正在使用 Elasticsearch / SearchKick / Bonsai 在 Heroku 的生产环境中设置搜索。这在本地工作得很好,但是我在 Heroku 上索引我的对象时遇到了麻烦。
在 config/initializers/bonsai.rb
在 lib/tasks/elasticsearch.rb
在用户.rb
宝石文件
我跑了:heroku config:add BONSAI_URL=mybonsaiurl
但是,当我尝试使用以下命令重新索引时: heroku run rake searchkick:reindex CLASS=User 我得到: URI::InvalidURIError: 该方案 http 不接受注册表部分: :9200 (或错误的主机名?)
或者当我这样做时:用户。弹性搜索.create_index!力:真我得到:用户。elasticsearch .create_index !:找不到命令
似乎 SearchKick 或默认设置为 9200,但我不确定如何更改它,或者它是否应该查找我的应用程序 URL 或盆景 URL——我真的迷路了,似乎在某个地方错过了一步?
谢谢你的帮助!
elasticsearch - 使用更新脚本时出现 ElasticsearchIllegalArgumentException
我在 Heroku 上使用 Bonsai Elastic Search,我有一个文件如下:
我正在尝试像这样更新计数器(根据http://www.elasticsearch.org/guide/en/elasticsearch/reference/0.90/docs-update.html):
但我收到以下错误:
python - 使用 ElasticSearch/Django Haystack 的个人用户自定义搜索引擎
我们正在编写一个 django 应用程序,该应用程序允许用户在他们之间发送私人消息,以及向组发送消息,并且正在寻求实现每个用户定制的搜索功能,以便每个用户都可以搜索和查看消息他们收到了。
我们如何提供为每个用户定制的搜索体验?有些消息是作为组的一部分发送给数千个用户的线程的一部分,而其他消息可能是在 2 个用户之间发送的私人消息,甚至其他消息可能是“待定”消息,等待审核。
我们是否对过滤器进行硬编码,以确定用户是否可以在我们发送到 ElasticSearch 的每个查询中查看消息,或者如果消息发送到有 1000 个成员的组,我是否将 1000 个相同的文档添加到 ElasticSearch,唯一改变的是接受者?
更新
所以这里有一条单独的消息,它的序列化形式是序列化的:
用户应该能够搜索:
- 他们是“发件人”的所有消息
- 其 GUID 位于“收件人”区域的所有邮件(并且“类型”为“直接”)
- 发送到他们所属的组 ID 的所有消息都不是待处理的(尽管它们可能是 100 个组的成员,所以它可能是 [10,14,15,18,25,44,50,60, 75,80,81,82,83,...])
在 SQL 中SELECT * FROM messages WHERE text contains 'query here' AND (sender.guid = 'my-guid' OR recipient.guid = 'my-guid' OR (group_id in [10,14,15,18,25,44,50,60,75,80,81,82,83,...] AND pending != True))
ruby-on-rails - Elasticsearch 和 Bonsai:Heroku 上的 IndexMissingException,在本地运行良好
构建我的第一个 Rails 应用程序并在让 Elasticsearch 在 Heroku 上运行时遇到问题。
本地作品完美。
在 Heroku 上,我可以打开搜索页面,但是当我尝试执行搜索时,出现以下错误:
Heroku 日志显示:
宝石:
搜索控制器:
搜索视图:
任何建议将不胜感激!
mongodb - 盆景自动分度
我使用 MongoDb 和一个快速的 Heroku 托管应用程序进行存储。
我想通过Bonsai Heroku 插件使用 ElasticSearch 为一些 MongoDb 集合提供搜索功能。
但是,根据Bonsai faq,不支持 Elasticsearch River 插件。
如果我不能使用elasticsearch-river-mongodb ,如何使用自定义映射在 Bonsai 上自动重新索引我的 MongoDb 集合(当创建/更新/删除 MongoDb 文档时) ?
ruby-on-rails-4 - 盆景-elasticsearch-rails - 不能要求“elasticsearch/rails/tasks/import”
当我运行时:
终端的响应是:
该错误似乎源于此 require 语句lib/tasks/elasticsearch.rake
我检查过我所有的elastic-*
gem 都是最新版本:elasticsearch-rails 和 elasticsearch-model 为 0.1.7,bonsai-elasticsearch-rails 为 0.0.4,但我确实注意到这里https://rubygems.org/ gems/bonsai-elasticsearch-rails bonsai-elastic-search rails 依赖于 bundler 1.5 而 Heroku 使用的是 1.9.7,据我所知,这是不可能改变的。这会是问题的症结所在吗?
当我尝试部署时,我的日志中也有类似的错误
elasticsearch - 命名查询在盆景中不起作用(不返回matched_queries)
当我在 Bonsai 托管的 elasticsearch 上运行它时,我似乎无法让该"_name"
参数在我的查询中工作(在 Searchly 服务上也发生了同样的情况)。有没有人有同样的问题?
这个确切的查询在我的本地弹性搜索中有效,它返回内部带有“test”的“matched_queries”。但是,一旦我将 URL 切换到托管服务,它就不会: