我们正在构建一个基于 Azure 的数据平台,并使用数据工厂进行 ETL 和 Cosmos DB 来维护执行日志。
我们能够从 Cosmos DB 集合中读取数据,但在将加载状态写回其中时出现错误。这是我们得到的错误:
“Sink”侧发生故障。
ErrorCode=CosmosDbSqlApiOperationFailed,'Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message=CosmosDbSqlApi operation Failed. ErrorMessage: Response status code does not indicate success: -1 (-1); Substatus: 0; ActivityId: ; Reason: ();.,Source=Microsoft.DataTransfer.ClientLibrary.CosmosDbSqlApiV3,''Type=Microsoft.Azure.Cosmos.CosmosException,Message=Response status code does not indicate success: -1 (-1); Substatus: 0; ActivityId: ; Reason: ();,Source=Microsoft.Azure.Cosmos.Client,'
没有描述失败的实际原因。
我们的 Cosmos DB 配置细节:
我将不胜感激任何意见,因为这正在成为我们的一大障碍。
蒂亚
ErrorMessage:响应状态码不表示成功:-1 (-1)
上述错误主要是由于
source
或sink
侧连接失败造成的。检查是否连接成功。请按照以下方法将数据写入 Azure Cosmos DB。
创建链接服务,如下所示。 AzureSqlDatabase1 是您要读取数据的位置
Source
,CosmosDbNoSql1 是您要写入数据的位置 Sink
。
以下是
AzureSqlDatabase1
中存储的示例数据:
创建管道并在
source
和 sink
中填写详细信息,然后在接收器中写入行为中选择 Insert
。
输出:
Azure Cosmos DB 中保存的数据:
[
{
"Id": 1,
"Name": "Sai",
"Age": 32,
"id": "0d4772f7-3061-4640-b51d-88331ff3b3bb"
},
{
"Id": 2,
"Name": "Pavan",
"Age": 22,
"id": "d52a0466-207d-4345-8c09-678fbf35dab3"
},
{
"Id": 3,
"Name": "Balaji",
"Age": 24,
"id": "23060d7b-7847-48c6-8ee4-70f483c8ebf6"
}
]
有关更多信息,请参阅此文档。