我在Oracle中有一個記錄用戶事件的表。該用戶可能有很多事件。從這些事件中,我正在計算一個公式的聲望。我的問題是,在計算和返回數據時,這是做什麼最好的方法。使用視圖並使用SQL,通過獲取所有事件並計算它(與此相關的問題是當您有用戶列表並需要計算所有用戶的信譽)或其他內容時,通過代碼執行此操作。喜歡聽你的想法。聲譽公式 - 最佳方法
Comments * (.1) +
Blog Posts * (.3) +
Blog Posts Ratings * (.1) +
Followers * (.1) +
Following * (.1) +
Badges * (.2) +
Connections * (.1)
= 100%
一個例子
Comments:
This parameter is based on the average comments per post.
• Max: 20
• Formula: AVE(#)/max * 100 = 100%
• Example: 5 /10 * 100 = 50%
最大是最大數量得到所有的百分比。希望這是有道理的。
我們正在計算訪問,所以所有獨特的訪問/成員的日期是另一個。該表包含一個事件名稱和一些元數據,並與該用戶綁定。聲譽只是使用這些事件來制定最高100%的聲譽。
85% reputation - Joe AuthorUser been a member for 3 years. He has:
• written 18 blog posts
o 2 in the past month
• commented an average of 115 times per month
• 3,000 followers
• following 2,000 people
• received an average like rating of 325 per post
• he's earned, over the past 3 years:
o 100 level 1 badges
o 50 level 2 badges
• he's connected his:
o FB account
o Twitter account
嘗試提供更多規範,如數據模型,信譽計算的複雜性... – 2011-03-14 20:15:15
數據量也是 – cagcowboy 2011-03-14 20:19:18
這些信息是否足夠? – 2011-03-14 20:40:21