- /**************?The?file?is?executed?per?5?minutes?by?/etc/crontab.*****************/??
 - var?action_count_map?=?function(){??
 - ??emit(this.action,?{action:this.action,?count:1});??
 - }??
 - ??
 - var?action_count_reduce?=?function(key,?values){??
 - ??var?count?=?0;??
 - ??values.forEach(function(value){??
 - ????count?+=?value.count;??
 - ??});??
 - ??return?{action:key,?count?:?count};??
 - }??
 - ??
 - ??
 - db.log.mapReduce(action_count_map,?action_count_reduce,?{query?:?{'action_count'?:?{$ne:1}},out:?{reduce:'action_count'}});??
 - ??
 - db.log.update({'action_count':{$ne:1}},?{$set:{'action_count':1}},?false,?true); ?
 
1. 在map中将每个action访问次数设为1
2. reduce中,统计相同action的访问次数
3. 执行mapReduce。指定了查询为‘action_count’不等于1,也就是没有执行过该统计;将结果存储在‘action_count’集合,并且使用reduce选项表示该结果集作为下次reduce的输入。
4. 在当前所有日志记录设置'action_count'的值为1,表示已经执行过该统计????
?
##############################################################
