3 回答

TA貢獻(xiàn)1725條經(jīng)驗(yàn) 獲得超8個(gè)贊
我需要獲取 mongo 數(shù)據(jù)庫(kù)集合的大小。
您可以使用collStats命令獲取 MongoDB 集合的各種存儲(chǔ)統(tǒng)計(jì)信息。您可以利用Database.RunCommand通過(guò)MongoDB Go 驅(qū)動(dòng)程序執(zhí)行數(shù)據(jù)庫(kù)命令。例如:
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條與你的問(wèn)題相關(guān)的信息。

TA貢獻(xiàn)2036條經(jīng)驗(yàn) 獲得超8個(gè)贊
有兩種方法可以檢查這一點(diǎn)
與CountDocuments完全相同
count,?err?:=?client.Database("webshop").Collection("products").CountDocuments(context.Background(),?bson.D{})
并使用EstimatedDocumentCount進(jìn)行估計(jì)
count,?err?:=?client.Database("webshop").Collection("products").EstimatedDocumentCount(context.Background())

TA貢獻(xiàn)1875條經(jīng)驗(yàn) 獲得超3個(gè)贊
在 mongodb 中
db.getCollection('collection').find({}).count()
- 3 回答
- 0 關(guān)注
- 220 瀏覽
添加回答
舉報(bào)