Mapreduce couchdb-获取不同值的总和
我的沙发数据库中有以下数据结构。 我需要获得每天不同的Mapreduce couchdb-获取不同值的总和,mapreduce,couchdb,Mapreduce,Couchdb,我的沙发数据库中有以下数据结构。 我需要获得每天不同的会话的计数。记录还必须按app\u版本进行过滤 我当前的MapReduce如下所示 "dau": { "map": "function(doc) { date = doc.session.timestamp.split("T")[0]; emit([date, doc.app_version, doc.session.session_id], 1);
会话的计数。记录还必须按app\u版本进行过滤
我当前的MapReduce如下所示
"dau": {
"map": "function(doc) {
date = doc.session.timestamp.split("T")[0];
emit([date, doc.app_version, doc.session.session_id], 1);
}",
"reduce": "_count"
}
但是这给了我如下的输出
我需要将其打印为-因为这是每天唯一的session\u id
s的数量
你有什么想法吗
任何帮助都将不胜感激
[
{
"app_version": 2,
"platform": "android",
"session": {
"timestamp": "2014-08-20T00:00:00.000Z",
"session_id": "TOnNIhCNQ31LlkpEPQ7XnN1D",
"ip": "202.150.213.66",
"location": "1.30324,103.5498"
}
},
{
"app_version": 2,
"platform": "android",
"session": {
"timestamp": "2014-08-21T00:00:00.000Z",
"session_id": "TOnNIhCNQ31LlkpEPQ7XnN1D",
"ip": "202.150.213.66",
"location": "1.30324,103.5498"
}
}
{
"app_version": 2,
"platform": "ios",
"session": {
"timestamp": "2014-08-21T00:00:00.000Z",
"session_id": "TOnNIhCNQ31LlkpEPQ7XnN1D",
"ip": "202.150.213.66",
"location": "1.30324,103.5498"
}
},
{
"app_version": 1,
"platform": "ios",
"session": {
"timestamp": "2014-08-21T00:00:00.000Z",
"session_id": "TOnNIhCNQ31LlkpEPQ7XnN1D",
"ip": "202.150.213.66",
"location": "1.30324,103.5498"
}
}
]
将app_版本放在视图的第一位:
emit([doc.app_version, date, doc.session.session_id], 1);
然后用group_level=2进行查询这不会做我需要它做的事情。这将输出[“2014-08-20”,2]3[“2014-08-21”,2]2,这不是我想要的
[
{
"app_version": 2,
"platform": "android",
"session": {
"timestamp": "2014-08-20T00:00:00.000Z",
"session_id": "TOnNIhCNQ31LlkpEPQ7XnN1D",
"ip": "202.150.213.66",
"location": "1.30324,103.5498"
}
},
{
"app_version": 2,
"platform": "android",
"session": {
"timestamp": "2014-08-21T00:00:00.000Z",
"session_id": "TOnNIhCNQ31LlkpEPQ7XnN1D",
"ip": "202.150.213.66",
"location": "1.30324,103.5498"
}
}
{
"app_version": 2,
"platform": "ios",
"session": {
"timestamp": "2014-08-21T00:00:00.000Z",
"session_id": "TOnNIhCNQ31LlkpEPQ7XnN1D",
"ip": "202.150.213.66",
"location": "1.30324,103.5498"
}
},
{
"app_version": 1,
"platform": "ios",
"session": {
"timestamp": "2014-08-21T00:00:00.000Z",
"session_id": "TOnNIhCNQ31LlkpEPQ7XnN1D",
"ip": "202.150.213.66",
"location": "1.30324,103.5498"
}
}
]
emit([doc.app_version, date, doc.session.session_id], 1);