亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何通過 mongo-go-driver 獲取集合的大小

如何通過 mongo-go-driver 獲取集合的大小

Go
SMILET 2023-07-31 15:54:19
我需要獲取 mongo 數據庫集合的大小。該項目是使用mongo-go-driver用 golang 編寫的。
查看完整描述

3 回答

?
qq_遁去的一_1

TA貢獻1725條經驗 獲得超8個贊

我需要獲取 mongo 數據庫集合的大小。

您可以使用collStats命令獲取 MongoDB 集合的各種存儲統計信息。您可以利用Database.RunCommand通過MongoDB Go 驅動程序執行數據庫命令。例如:

db := client.Database("databaseName")


result := db.RunCommand(context.Background(), bson.M{"collStats":"collectionname"})


var document bson.M

err = result.Decode(&document)


if err !=nil {

? ? panic(err)

}


fmt.Printf("Collection size: %v Bytes\n", document["size"])

fmt.Printf("Average object size: %v Bytes\n", document["avgObjSize"])

fmt.Printf("Storage size: %v Bytes\n", document["storageSize"])

fmt.Printf("Total index size: %v Bytes\n", document["totalIndexSize"])

上面的例子只打印了4條與你的問題相關的信息。

查看完整回答
反對 回復 2023-07-31
?
慕桂英3389331

TA貢獻2036條經驗 獲得超8個贊

有兩種方法可以檢查這一點

與CountDocuments完全相同

count,?err?:=?client.Database("webshop").Collection("products").CountDocuments(context.Background(),?bson.D{})

并使用EstimatedDocumentCount進行估計

count,?err?:=?client.Database("webshop").Collection("products").EstimatedDocumentCount(context.Background())



查看完整回答
反對 回復 2023-07-31
?
翻過高山走不出你

TA貢獻1875條經驗 獲得超3個贊

在 mongodb 中

db.getCollection('collection').find({}).count()


查看完整回答
反對 回復 2023-07-31
  • 3 回答
  • 0 關注
  • 203 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號