2011-02-03 14 views
1

MongoDB質問:MongoDbの類似アイテム

他のユーザーと同じようなブックマークを検索します。

のは、私がコレクション "UserFavorites" を持っているとしましょうと、各ドキュメントのようなものです: { 'user_idは': 'ジョー'、bookmark_ids:[1,2,3,4,5,6]}

興味の類似点に基づいて、ユーザー「joe」の他のユーザーのお気に入りを提供したいと考えています。

何かのように $ all_bookmarks =ユーザ "joe"に最も類似したブックマークを持つすべての人を検索します。

$ all_bookmarks内から

$ display_bookmarks_to_joe =グループ同じブックマークとスコアを割り当てる(同じ項目が$ all_bookmarksで登場した回数)その後、ジョー・

にトップ20を表示私は、これは簡単な作業ではありませんし、多くを必要と知っていますスキーマ設計。誰もが何か提案をしているのですか、または私が勉強できるURLを持っていますか?

ありがとうございました!

答えて

3

お勧めエンジンは何ですか。

Rubyで1の構築について、ここで素晴らしい記事があります:

http://www.igvita.com/2007/01/15/svd-recommendation-system-in-ruby/

あなたがこのアプローチを使用する場合、あなたはおそらく2次元のデータ構造に素早く検索を実行するためにMongoDBの地理空間インデックスを使用することができます。

+0

完了!わたしは、あなたを愛しています ! – Gotys