文档中心

SequoiaDB 简介

快速入门

安装部署

数据库实例

分布式引擎

SAC 管控中心

SequoiaPerf 性能分析工具

参考手册

常见问题及解答(FAQ)

版本信息

getCollectionStat()

名称

getCollectionStat - 获取集合的统计信息

语法

db.collectionspace.collection.getCollectionStat()

类别

SdbCollection

描述

该函数用于获取当前集合的统计信息。

参数

返回值

函数执行成功时,将返回一个 BSONObj 类型的对象。通过该对象获取集合的统计信息,字段说明如下:

字段名 类型 描述
Collection string 集合名称
InternalV uint32 集合统计信息的版本
StatTimestamp string 集合统计信息的统计时间
IsDefault boolean 集合统计信息是否为默认值
IsExpired boolean 集合统计信息是否过期,默认为 false
AvgNumFields uint64 集合内记录的平均字段个数,默认值为 10
SampleRecords uint64 集合内进行抽样的记录个数,默认值为 200
TotalRecords uint64 集合内记录总数,默认值为 200
TotalDataPages uint64 集合内数据页总数,默认值为 1
TotalDataSize uint64 集合内数据总大小,默认值为 80000,单位为字节

函数执行失败时,将抛异常并输出错误信息。

错误

getCollectionStat() 函数常见异常如下:

错误码 错误名 报错原因 解决办法
-377 SDB_MAINCL_NOIDX_NOSUB 所操作的主集合未挂载子集合 通过 attachCL() 在该主集合上挂载任意子集合

当异常抛出时,可以通过 getLastErrMsg() 获取错误信息或通过 getLastError() 获取错误码。更多错误处理可以参考常见错误处理指南

版本

v3.6.1 及以上版本

示例

获取集合 sample.employee 的统计信息

> db.sample.employee.getCollectionStat()

输出结果如下:

{
  "Collection": "sample.employee",
  "InternalV": 1,
  "StatTimestamp": "2022-11-07-20.29.43.739000",
  "IsDefault": false,
  "IsExpired": false,
  "AvgNumFields": 10,
  "SampleRecords": 1000,
  "TotalRecords": 1000,
  "TotalDataPages": 22,
  "TotalDataSize": 30000
}

Note

当字段 IsDefault 显示为 true 时,表示未查询到对应集合的统计信息。用户需手动执行 analyze() 更新集合的统计信息后,再进行统计信息的获取操作。

回到顶部