我正在将Azure CosmosDB与SQL api结合使用,并且试图在前端创建一个图形,该图形表示一个月内每个特定日期上载的所有文档。该图最多应为一个月。在下面,我附上了一个模拟我的想法的屏幕截图。在评论中进行一些讨论之后,我还将添加数据模式。
数据消息示例(分区键为 / message / deviceId )
{
"message": {
"deviceId": "device01",
"timestamp": "2018-07-25T08:47:16,094",
"payload": "6c,65,33",
},
"id": "ff670801-de08-422c-be0a-fa67e6324bb8",
"_rid": "75klAPTTTHADAAAAAAAAAA==",
"_self": "dbs/75klAA==/colls/75klAPTTTHA=/docs/75klAPTTTHADAAAAAAAAAA==/",
"_etag": "\"0000bc1d-0000-0000-0000-5c112e5a0000\"",
"_attachments": "attachments/",
"_ts": 1544629850
}
现在我的问题是:获取此类数据的最佳方法是什么?我通常会选择更简单,更快速的函数,但是我认为这种方法实际上是行不通的,因为我需要获取上个月所有的数据,以获取上载次数。这样做也会花费很多时间和金钱。
是否存在另一种收集此类数据的方法?你们会推荐另一种方法吗?如果是这样的话?我不想添加任何其他服务,因为我已经在从事一个相对较大的项目,并且已经熟悉所有这些服务。
编辑:创建某种文档来保留有关当月的所有信息(如天数组)会不是一个好主意?因此查询将只在不在数组内部的日期运行。
非常感谢您的帮助!
答案 0 :(得分:1)
我来自CosmosDB工程团队。根据您的问题,我了解您需要上个月每天更新的文档计数。
您可以通过两种方式执行此操作: