确定存储在 DocumentDB 中的 JSON 文档的大小

Determining size of a JSON document stored in DocumentDB

我正在为 DocumentDB 上的多租户应用程序 运行 开发分区策略。

由于每个集合只允许 10GB 的存储空间,我试图计算我的每个租户可以存储多少文档,这样我就可以得出我可以放入一个集合中的租户数量。

我有一个示例 Json 文档,它表示租户可以存储的通用文档。在 Azure 门户上使用文档资源管理器不会告诉我其中一个文档在磁盘上的大小(只是使用百分比的一般图表)。

我也在使用 DocumentDB Studio,但无法确定其中的文档大小。我可以在本地使用记事本,但根据我的编码设置(ANSI、等等),我得到了不同的结果。

我的问题是:

是否有准确的方法来确定 Json 文件将存储在 DocumentDB 中的文件大小,以便我可以正确计算我的应用程序的资源使用情况?

是否还有一种方法可以通过对集合的查询来取回文档或文档组的大小?

是 - 您可以计算文档查询响应的大小,以便包括所有系统属性(例如 _rid、_ts)。您将需要使用 UTF-8 编码来获得正确的大小。

您还需要考虑大约 10% 的额外索引存储成本。