簡體   English   中英

在 Cosmos DB 中獲取文檔大小

[英]Get document size in Cosmos DB

如何獲取或計算存儲在 Cosmos DB 中的文檔的大小?

這是否已經存儲在文檔中?

如果您獲得(或查詢)文檔,則可以查看返回的標題,特別是x-ms-resource-usage ,它將包含一個documentsSize大小屬性(以 kb 表示文檔的大小)。

在 node/javascript 中,您會撥打如下所示的電話:

client.readDocument(docLink, function (err, doc, headers) {
  ...
})

你想看看headers['x-ms-resource-usage']

這是如何在集合中找到最大文檔的方法。 我在 Azure 的數據資源管理器中使用了兩個查詢

  1. 獲取最大文檔的大小SELECT MAX(a.length) FROM ( SELECT LENGTH(ToString(c)) AS length FROM c ) a

  2. 檢索最大文檔的正文(應將 a.length 值與從前一個查詢返回的長度進行比較SELECT TOP 1 ac FROM ( SELECT LENGTH(ToString(c)) AS length, c FROM c ) a WHERE a.length = 382725

然后在運行第二個查詢時,您可以查看 Query Stats 選項卡以查看文檔的確切大小。

根據我的經驗,在azure cosmosdb創建的所有資源都會自動生成以下屬性:

_rid

_etag

_ts

_self

id

您可以從這里找到這些屬性的含義。

此外, index strategy還會占用您的 cosmos db 中的空間。

我在REST API 中搜索 Azure Cosmos DB,但沒有找到直接獲取文檔大小的方法。

但是, cosmosdb的查詢消耗RU而 RU 與文檔大小有關。 您可以參考 本文中提到的列表。

在門戶上搜索文檔時,請檢查RU

在此處輸入圖片說明

你也可以參考這個線程,也許它對你有一些影響。

希望對你有幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM