盆景自动索引

时间:2015-06-15 10:03:47

标签: mongodb heroku express elasticsearch bonsai-elasticsearch

我使用MongoDb进行存储,使用快速的Heroku托管应用程序。

我想通过Bonsai Heroku插件使用ElasticSearch为一些MongoDb集合提供搜索功能。

但是,根据Bonsai faq,不支持Elasticsearch River插件。

如果我不能使用elasticsearch-river-mongodb,如何使用自定义映射在Bonsai上自动重新索引我的MongoDb集合(当创建/更新/删除MongoDb文档时)?

1 个答案:

答案 0 :(得分:0)

以下是盆景支持的答案:

- You could always set up a script with a curl command to index the MongoDB collections, then use cron to run the script at regular intervals.
- You could also use an Elasticsearch client to index collections in some cases.

所以我制作了一个受Elaster启发的 reindex 脚本,它可以:

  • 可以node-cron;

  • 定期调用
  • 或在事件检测后按需调用;触发我使用mongo-oplog的事件,如下所示:

    oplog.on('insert', function (doc) {
      reindex();
    });