Rails 求救啊 ,使用了 Ohm gem, 且 Redis 做 db,怎么做全文索引

ihlayy · 2013年02月20日 · 最后由 as181920 回复于 2013年02月20日 · 4627 次阅读

我现在是用 redis 做 db , 要对 user 之类的 first name 做模糊查询。。

求思路。。

redis-search 0.9.0,说明中写 Ruby, Rails ORM 支持 ActiveRecord 和 Mongoid Redis 2.2+

ORM 用 Ohm 没法用吗

用 Solr 或 Elasticsearch

#1 楼 @huacnlee java 的啊?我看了些您写的 redis-search 那个,我想怎么简单改一下要能用就好了

#2 楼 @ihlayy redis-search 是和 ActiveModel 紧密结合的,如果你用的 OHM 不是基于 ActiveModel 的话,那就不能用。

此外,redis-search 不是正对全文搜索设计的,它只是适用用 200 字以内的文字搜索(比如:标题,姓名,地区,用户名,Email 之类的)

全文搜索你应该用 Solr 或 Elasticsearch

#3 楼 @huacnlee 文字不会很多,也就是用户名,标题,最多是产品描述(这个文字量也不会很大)

但是用 Solr 或 Elasticsearch 需要另外去配置,有一定优点,但同时也增加了,项目(需要互相交互)和部署的复杂性吧。正在看你说的这 2 个东西,谢谢。

还有一个是 ruby 版本的 solr(sunspot) http://sunspot.github.com/

elasticsearch 的 ruby 接口 tire,搜索内容多了建议从 model 提取到 lib

需要 登录 后方可回复, 如果你还没有账号请 注册新账号