如何将 mongoDB 与 Solr 一起使用?
是否可以将数据从 mongoDB 复制到 Solr?我正在使用 ruby + sinatra + mongoid。或者我需要通过 rsolr 与 after_create、after_update 等挂钩?
Is it possible to replicate data from mongoDB to Solr? I'm using ruby + sinatra + mongoid. Or i need to make hooks with after_create, after_update and so on through rsolr?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
10gen 引入了 Mongo Connector,它允许将数据推送到 Solr(以及其他)
http:// /blog.mongodb.org/post/29127828146/introducing-mongo-connector
从他们的示例中:
10gen introduced Mongo Connector, which allows to push data into Solr (among others)
http://blog.mongodb.org/post/29127828146/introducing-mongo-connector
From their example:
有些人将 Solr 与 MongoDB 集成,应用程序代码监听 MongoDB 的“oplog”。我建议在应用程序上实现一些与 MongoDB 完全解耦的东西。如果您的应用程序向 MongoDB 插入某些内容,则触发向 Solr 等的插入。
Tailabled 游标可能是一个选项
http://jwage.com/2011/03/16/mongodb-tailable-cursors/
但它们仅适用于上限集合。
Some people integrated Solr with MongoDB with application code listening to the "oplog" of MongoDB. I would recommend implementing something on the application completely decoupled from MongoDB. If you application inserts something into MongoDB then trigger an insertion into Solr etc.
Tailabled cursors might be an option
http://jwage.com/2011/03/16/mongodb-tailable-cursors/
but they only work with capped collections.
我不确定是否为时已晚。 mongo-jdbc 不能与 Apache Solr 的 DIH 一起使用,您需要扩展它。我已经扩展了它,您可以从这里使用它: https://github.com/hrishik/ solr-mongodb-dih
您可以直接与 Apache Solr 一起使用它。在这种情况下,DIH 配置文件将如下所示:
I am not sure whether its too late. The mongo-jdbc would not work with DIH of Apache Solr, you would need to extend it. I have extended it, and you can use it from here: https://github.com/hrishik/solr-mongodb-dih
You can directly use it with Apache Solr. In that case, DIH config file will look something like below:
使用 https://github.com/erh/ 中找到的 JDBC 驱动程序配置数据导入处理程序的 JDBC 风格mongo-jdbc——它支持选择、插入、更新和删除。希望这有帮助!
Configure the JDBC flavour of the data import handler using the JDBC driver found at https://github.com/erh/mongo-jdbc -- it supports select, insert, update, and drop. Hope this helps!