我有一个 python 脚本女巫的问题,我用它来将大型集合聚合成更小的部分,并让它们按时间戳分组。
map = Code("function(number) {"
"emit({"
"ts : new Date(new Date((this.ts - (this.ts % (60 * number))) * 1000).setSeconds(0))"
"}, 1);"
"}")
reduce = Code("function(key, vals) {"
"var sum = 0;"
"for (var i in vals) {"
"sum += vals[i]"
"}"
"return sum;"
"}")
如您所见,这是一个非常简单的 MapReduce,时间戳 (ts) 应该按给定的分钟数分组。我在这里http://jsfiddle.net/QgMzK/1/测试了 Javascript ,它似乎工作正常。但是当我在 Python 中运行它时,所有时间戳都变为 ISODate("1970-01-01T00:00:00Z")。
有任何想法吗?