【发布时间】:2012-03-13 17:39:33
【问题描述】:
我们有一个算法来比较来自 MongoDB 的 ruby 对象。花费的大部分时间,它获取结果(~1000),为它们分配权重,并将它们与基础对象进行比较。对于 1000 个对象,此过程大约需要 2 秒。之后,我们按重量排序,取前 10 名。
鉴于初始匹配的数量将继续增长,我正在寻找更有效的方法来比较和排序 Ruby 中的匹配。
我知道这有点含糊,但我们假设它们是 User 对象,其中包含有关此人的数据数组,并且我们将它们与单个用户进行比较,以找到最适合该用户的匹配项。
【问题讨论】:
-
你是对的,这完全不清楚。
-
您目前使用的比较过程究竟是什么?
-
比较是在包含每个用户的字符串的数组集之间进行的。基本上找出每个数组共有多少个元素,总共可能有 5 次数组比较。
-
这确实是一个更大的算法问题。
标签: ruby ruby-on-rails-3 mongodb mongomapper