Azure 流分析不提供 DocumentDB 输出接收器

标签 azure azure-cosmosdb azure-stream-analytics

我正在尝试将 Azure 流分析与 DocumentDB 集成并将其用作输出接收器。问题是,当处理作业运行时,DocDB 中没有创建任何文档。我尝试测试我的查询,甚至尝试将输出镜像到存储帐户。存储中正在创建包含所有值的 json 文件,但 DocDB 保持为空。

这是我的查询:

WITH Res1 AS ( SELECT id,
    concat(
    cast( datepart(yyyy,timestamp) as nvarchar(max)),
    '-',
    cast( datepart(mm,timestamp) as nvarchar(max)),
    '-',
    cast( datepart(dd,timestamp) as nvarchar(max))) date, temp, humidity, distance, timestamp
FROM
    iothub Timestamp By timestamp)

Select *  into docdboutput FROM Res1
Select *  into test FROM Res1

我确实将 documentDB 输出正确设置为现有集合。我还尝试提供或不提供文档 id 参数,但这两个选项都不起作用。我在创建 DocDB 数据库和集合时使用日期字段作为分区键。

我也尝试过手动文档上传。我已从存储帐户中创建的 json 文件中复制了行。我创建了包含这一记录的单独 json 文件,并通过门户手动将其上传到 DocumentDB 集合。它成功了。以下是输出到存储文件的一行的示例:

{"id":"8ace6228-a2e1-434d-a5f3-c2c2f15da309","date":"2017-2-10","temp":21.0,"humidity":20.0,"distance":0,"timestamp":"2017-02-10T20:47:54.3716407Z"}

如果我的查询有问题,请任何人给我提供建议,或者引导我如何进一步调查和诊断。

最佳答案

您是否有机会使用具有 <=10K RU 的集合,并且在 DocDb 中定义了分区键(也称为单分区集合)?

存在一个持续存在的缺陷,该缺陷会阻止输出到单个分区集合。这应该在下周末之前解决。此时您的解决方法是尝试使用不同的集合 - a) 具有 >10K RU(在 DocDB 中定义分区键) b) 具有 <=10K RU(在 DocDB/ASA 中没有定义分区键)

希望有帮助!

关于Azure 流分析不提供 DocumentDB 输出接收器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42168652/

相关文章:

node.js - Azure Function Runtime 版本 : 2. 0.11888.0(测试版)变得无法连接到 cosmosDB

triggers - DocumentDB 为什么无法从 Azure 门户触发触发器?

azure - 是否可以在ARM模板中创建documentDB数据库和帐户

c# - DocumentDB STARTSWITH 无法在 .NET 上运行

c# - 使用 Windows Azure DiagnosticsMonitor 时,log4net traceappender 仅记录级别为 'verbose' 的消息

azure - 等待服务准备就绪 (Service Fabric)

asp.net - 在上传到 Azure Blob 存储之前调整图像大小

azure - Power BI 不支持 DocumentDB 分区集合吗?

azure - 无法连接 CosmosDB 作为流分析输出

azure - 更新字段中的流分析问题