我想在我将它返回到只填充计算的数据之前减少我拥有的数据量并对其进行预处理。 作为简单示例我有以下一系列的数据,在小时的给定时间表示值:分钟如何恰当地使用couchdb来正确地链接mapreduce函数或组
var testdata = [ //
{_id: '01', timestamp: [01, 10], value: 100},
{_id: '02', timestamp: [01, 20], value: 101},
{_id: '03', timestamp: [01, 30], value: 102},
{_id: '04', timestamp: [02, 10], value: 103},
{_id: '05', timestamp: [02, 20], value: 104},
{_id: '06', timestamp: [02, 30], value: 105},
{_id: '07', timestamp: [03, 10], value: 106},
{_id: '08', timestamp: [03, 20], value: 107},
{_id: '09', timestamp: [03, 30], value: 108},
{_id: '10', timestamp: [03, 40], value: 109},
{_id: '11', timestamp: [04, 10], value: 110},
{_id: '12', timestamp: [04, 20], value: 111}
];
所以在最低分组我想有值的detla,意思是:
key: 01 value: 100; // 100 - 0 = 100
key: 02 value: 1; // 101-100=1
key: 03 value: 1; // 102-101=1
key: 04 value: 1; // 103-102=1
key: 05 value: 1; // 104-103=1
key: 06 value: 1; //...
key: 07 value: 1; //...
key: 08 value: 1; //...
key: 09 value: 1; //...
key: 10 value: 1; //...
key: 11 value: 1; //...
key: 12 value: 1; //...
我已经不知道如何在couchdb中实现这一点。由于没有更深层次的数据,没有什么可以分组,因此“减少”。
下一步将是在h组,这意味着,从之前
key: 01 value: 102; // 100+1+1=102
key: 02 value: 3; // 1+1+1=3
key: 03 value: 4; // 1+1+1+1=4
key: 04 value: 2; // 1+1=2
最后综合这些结果一整天的结果将是
key : 01, value: 111;
所以我的问题是,它实际上可以在couchdb中完成这种任务,或者我应该简单地返回绝对值并在客户端执行我的计算以显示图表?