Ruby on rails 如何检索常用元素/单词?

Ruby on rails 如何检索常用元素/单词?,ruby-on-rails,ruby,activerecord,Ruby On Rails,Ruby,Activerecord,我有一个巨大的单词列表(大约50K)存储在一个数据库中(我使用的是activerecord),我想使用它并根据文本块检索匹配的单词 我知道ruby提供了交叉点 t = "this is a sample text, was created for demo" w = ["is","a","was","to","and"] t.split & w #=> ["is", "a", "was"] 但是我怎么能用5万个字呢?这种匹配的频率可能是每天1000次左右。使用全文搜索引擎如何

我有一个巨大的单词列表(大约50K)存储在一个数据库中(我使用的是activerecord),我想使用它并根据文本块检索匹配的单词

我知道ruby提供了交叉点

t = "this is a sample text, was created for demo"
w = ["is","a","was","to","and"] 

t.split & w #=> ["is", "a", "was"]

但是我怎么能用5万个字呢?这种匹配的频率可能是每天1000次左右。

使用全文搜索引擎如何?以下是一些链接:

  • 斯芬克斯搜索引擎的宝石
  • 宝石为Solr搜索引擎

  • 我知道这对你目前的任务来说可能是一种过度的杀伤力,但对于更复杂的变量,它是最合适、最有效的解决方案。

    您应该将该文本放入全局变量或缓存中,这样可以减少重复命中DB的时间,并且可以设置更新后回调,以便在数据库中更新该文本时更新该全局变量或缓存