我有一个文章列表,每个文章都有一个数组属性,列出了其中提到的各个人:
_id: {
$oid: "52b632a9e4f2ba13c82ccd23"
},
providerName: "The Guardian",
url: "http://feeds.theguardian.com/c/34708/f/663860/s/3516cebc/sc/38/l/0L0Stheguardian0N0Cmusic0C20A130Cdec0C220Cwaterboys0Efishermans0Eblues0Etour0Ehammersmith/story01.htm",
subject: "The Waterboys – review",
class_artist: [
"paul mccartney"
]
Run Code Online (Sandbox Code Playgroud)
我一直在努力(不成功)class_artist根据他们在过去7天内被标记的文章数量来获取所有个体艺术家的列表().
我已经达到了:
var date = new Date();
date.setDate(date.getDate() - 7);
db.articles.group({
key: { class_artist: 1 },
cond: { class_date: { $gt: date } },
reduce: function ( curr, result ) { result.cnt++; },
initial: { cnt : 0 }
}).sort({cnt: -1});
Run Code Online (Sandbox Code Playgroud)
但不幸的是,它并不是基于单个数组值来计算它们,而是基于数组合成(即艺术家列表).
我尝试使用该$unwind功能,但无法使其工作.
我查看了Google PubSub的文档,并尝试查看Google Cloud Monitoring,但找不到任何方法来确定我的主题中的队列大小.
由于我计划使用PubSub进行分析,因此监控队列数非常重要,因此我可以扩大/减少用户数.
我错过了什么?
我正在尝试使用Google Apps脚本自动执行每日汇总流程.我们的想法是在一个数据集的几个表上运行,并将结果保存到第二个数据集的表中.我的用户对两个相关数据集都有权限.
我的请求如下
var request = {
"maxResults": 10000,
"useQueryCache": false,
"destinationTable": {
"projectId": "project_name_obfuscated",
"datasetId": "project_114151_shared",
"tableId": "test123"
},
"writeDisposition": "WRITE_TRUNCATE",
"createDisposition": "CREATE_IF_NEEDED",
"allowLargeResults": true,
"query": "query syntax here"
};
var queryResults = BigQuery.Jobs.query(request, "project_name_obfuscated");
Run Code Online (Sandbox Code Playgroud)
(出于保密原因,我对项目的名称和查询本身进行了模糊处理).
查询实际运行正常,但是,它没有保存到我定义的指定项目/数据集/表中.
在BQ用户界面中,我看到的内容如下:
Job ID: project_name_obfuscated:job_NhkQpi110p3i5yoOO7nzXp3tTKY
Start Time: 5:47pm, 20 Oct 2014
End Time: 5:47pm, 20 Oct 2014
Bytes Processed: 0 B
Destination Table: project_name_obfuscated:_138c3340e691065e8db0b55781b5a41c6b4bcd49.anonev_SOiiRC10lfetj000kcj4rmXNc5E
Run Code Online (Sandbox Code Playgroud)
我有什么想法我做错了吗?
mongodb ×1