关于 SequoiaDB
快速入门
安装
基本操作
数据模型
SQL引擎
S3引擎
系统架构
数据库管理
连接器
驱动
参考手册
故障排除
SAC 管控中心
Web服务
版本信息
db.analyze( [options] )
分析集合和索引的数据,并收集统计信息。
参数名 | 参数类型 | 描述 | 是否必填 |
---|---|---|---|
options | Json 对象 | 设定 分析模式、 指定集合空间 以及 命令位置参数 | 否 |
Options 格式
属性名 | 描述 | 约束 | 格式 |
---|---|---|---|
Mode | 进行分析的模式,整数类型,(1-5): 1:进行抽样分析,生成统计信息 2:进行全量数据分析,生成统计信息 3:生成默认的统计信息 4:加载统计信息到缓存中 5:清除缓存的统计信息 默认值为 1 |
Mode取 1 - 3 时,必须在主数据节点上执行Mode取 3 时,需要指定集合全名。此时,生成的统计信息将包含集合及该集合上所有索引的统计信息;如果用户同时指定集合全名和该集合上具体的索引名,生成的统计信息将包含集合及该集合上指定索引的统计信息Mode取 4,5 时,可以在备数据节点上执行 | Mode:1 |
CollectionSpace | 指定需要分析的集合空间名称,字符串类型。默认值为空。 | 不能与Collection同时使用 | CollectionSpace:"foo" |
Collection | 指定需要分析的集合名称,字符串类型。默认值为空。 | 不能与CollecitonSpace同时使用 必须是Collection的全名 |
Collection:"foo.bar" |
Index | 指定需要分析的索引名称,字符串类型。默认值为空。 | 如果指定该参数,需要指定Collection参数 | Index:"index" |
SampleNum | 指定抽样的数据个数,整数类型,范围为 100 - 10000 ,默认值为 200 | 不能与SamplePercent同时使用 | SampleNum:1000 |
SamplePercent | 指定抽样的比例,浮点数类型,范围为:0.0 - 100.0 | 不能与SampleNum同时使用 集合数据个数和比例的乘积为抽样的数据个数,自动调整在 100 - 10000 之间(小于 100 调整为 100,大于 10000 调整为 10000) 缺省则不使用 SamplePercent,而选取 SampleNum 的默认值 200 |
SamplePercent:50 |
Location Elements | 命令位置参数项,详细见 命令位置参数 | GroupName:"db1" |
统计信息
统计信息的具体描述可以参考统计信息一节。
无返回值,出错抛异常,并输出错误信息。可以通过 getLastErrObj() 或 getLastErrMsg() 获取错误信息 或 通过 getLastError() 获取错误码。该操作主要的异常如下:
更多错误可以参考常见错误处理指南 。
2.9及以上版本
对全系统所有集合空间进行统计信息分析和收集
> db.analyze()
对指定集合空间"foo"进行统计信息分析和收集
> db.analyze( { CollectionSpace : "foo" } )
对指定数据组"group1"进行统计信息分析和收集
> db.analyze( { GroupName : "group1" } )
对指定集合"foo.bar"进行统计信息收集,并且指定Sample的数量
> db.analyze( { Collection : "foo.bar", SampleNum : 1000 } )
对指定集合"foo.bar"的索引"index"进行统计信息收集
> db.analyze( { Collection : "foo.bar", Index : "index" } )
对指定集合"foo.bar"生成清空统计信息缓存
> db.analyze( { Collection : "foo.bar", Mode : 5 } )