【发布时间】:2017-10-15 18:59:50
【问题描述】:
我们要求我们的应用程序在事务中处理最多 20 MB 的传入消息请求。此消息结构良好,具有嵌套对象和数组。我们计划使用 Azure Cosmos DB(文档 DB API)作为我们的数据库。由于 Document DB 的最大文档大小限制为 2 MB,因此我们将消息数据建模为存储在多个文档中。我们尝试使用 Javascript 存储过程将所有这些文档插入事务中,但 SP 对请求大小有大小限制 (2 MB)。
任何人都可以帮助我们如何保存与事务中的 20 MB 消息相关的所有文档(全部保存或不保存)?
我遇到的一种方法是独立保存文档,并编写一个存储过程来识别和删除它们,以防其中一个写入失败。 我想知道这是否是我们方案的最佳可用方法。
编辑:我正在考虑的另一种可能的方法 - 将 20 MB 消息上传到 blob 存储中,然后从 SP 内部访问它以进行拆分和插入。但我找不到从 javascript SP 访问 blob 的方法(SP 中不允许使用 XMLHttpRequest)
【问题讨论】:
-
我会联系 MS 支持。众所周知,它们会在某些情况下禁用按需大小限制
标签: c# .net azure azure-cosmosdb