如何在heroku上托管的rails项目中实现弹性搜索?

时间:2011-05-20 07:34:04

标签: ruby-on-rails heroku elasticsearch

我的计划是在单独的Linux服务器上运行弹性搜索作为Web服务。然后我将直接从我的应用程序调用它来搜索字符串或其他非结构化数据。我不明白的是,这基本上会替换某些对象的数据库,或者在创建对象时,我应该在弹性搜索中索引它的ID,对象类型和标签,以及同时将整个对象保存到我的数据库中?然后我可以调用Web服务来获取对象的ID,然后根据该ID查询我的数据库以检索实际的对象?

这是考虑使用弹性搜索的正确方法吗?

1 个答案:

答案 0 :(得分:3)

您可以通过两种方式使用ElasticSearch:将其用作主存储或用作搜索引擎。 Tire ruby​​gem允许您这样做,请参阅自述文件。

使用ElasticSearch,将它用作数据源更有意义,因为它可以索引和存储任意JSON。您可能希望将数据保存到单独的存储中以进行备份和冗余。