2016-01-20 40 views

回答

2

文件有大小限制。在構建集合的文檔時,每個文檔的每個文檔都有一定的大小。如果您創建的文檔大於最大尺寸,並嘗試將其存儲在收藏夾中,則會收到錯誤消息。

此限制與集合中存儲的最大文檔數量或與您創建的集合數量無關。

編輯4/2017單文檔限制不再是512K。我相信現在是2MB。

+0

David,你知道是否有一種方法可以單獨發送(通過流)大於512K的附件?當我查看文檔時,您可以發送附件創建主體的流。如果你這樣做,它可以大於512K?我知道Azure blob存儲容量高達200GB,我認爲這是支持DocumentDB的附件功能。 –

+0

@LarryMaccherone如果您需要存儲大於512k的對象,將它們直接存儲爲blob,然後在DocumentDB中簡單引用該文件效率更高。 DocumentDB的最大存儲大小是512k,這是沒有辦法的。 –

+0

DocumentDB有兩種方法處理附件 1)作爲託管附件。這是您通過DocumentDB客戶端API傳輸附件內容的位置。它會將其作爲附件存儲在Blob存儲中。 2)作爲鏈接附件。在這裏,不是通過DocumentDB流式傳輸blob內容,而是將內容存儲在任何您喜歡的位置,並將Uri用作DocumentDB附件中的mediaLink屬性。 –

0

您可能要考慮使用BISON(二進制JSON)。它在json.net中受支持。

還有base85

另一種可能的解決方案是拆分您的文件。使用一組子文檔ID創建主文檔

只需將附件數據存儲在子文檔中。

+0

我認爲JSON.net支持BSON,而不是BISON。 BSON的尺寸通常比JSON大。 –