Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Json 覆盖DocumentDB中的文档_Json_Azure_Azure Stream Analytics_Azure Cosmosdb - Fatal编程技术网

Json 覆盖DocumentDB中的文档

Json 覆盖DocumentDB中的文档,json,azure,azure-stream-analytics,azure-cosmosdb,Json,Azure,Azure Stream Analytics,Azure Cosmosdb,我有一个eventhub/stream analytics/documentdb链,stream analytics作业接受json对象,并按id将其保存在documentdb集合中 如果集合中存在具有相同id的文档,它应该被覆盖,对吗?但这并没有发生 假设我在集合中有此对象: { "id" : "001", "array":[ { "key1" : "value1" }, { "key2" : "value2" },

我有一个eventhub/stream analytics/documentdb链,stream analytics作业接受json对象,并按id将其保存在documentdb集合中

如果集合中存在具有相同id的文档,它应该被覆盖,对吗?但这并没有发生

假设我在集合中有此对象:

 {
  "id" : "001",
  "array":[
     {
      "key1" : "value1"
    },
     {
      "key2" : "value2" 
    },
     {
      "key3" : "value3" 
    {
     ]
}
流作业持久化的新文档是:

{
  "id" : "001",
  "array":[
      {
       "key4" : "value4"
     },
      {
       "key5" : "value5" 
     }
      ]
 }
我在收藏中获得的新文档如下所示:

 {
  "id" : "001",
  "array":[
     {
      "key4" : "value4"
    },
     {
      "key5" : "value5" 
    },
     {
      "key3" : "value3" 
    {
     ]
}
数组不会被覆盖,只会覆盖正在保存的新文档大小内的对象。如果oldarray.size>newarray.size,一些旧数据仍将存在

我想阻止这一切。我想覆盖所有文档并删除所有旧数据。
有办法吗?

请分享保存文档的代码。@GauravMantri在stream analytics中,我使用Json作为输入,Json作为输出,并使用查询修改结构。就像我刚才问的这个问题: