文档

关于 SequoiaDB

快速入门

快速入门之一键清理

安装

基本操作

数据模型

SQL引擎

FileSystem引擎

S3引擎

系统架构

数据库管理

连接器

驱动

参考手册

SequoiaDB Shell方法

概述

Global

Sdb

SecureSdb

SdbCS

SdbCollection

SdbCursor

SdbQuery

SdbReplicaGroup

SdbNode

SdbDomain

Oma

File

FileContent

Cmd

Remote

Hash

IniFile

Sdbtool

Ssh

System

辅助类型对象

特殊类型对象

操作符

SQL语法

SQL to SequoiaDB 映射表

限制

错误码

故障排除

SAC 管控中心

Web服务

版本信息

analyze()

语法

db.analyze( [options] )

分析集合和索引的数据,并收集统计信息。

参数描述

参数名 参数类型 描述 是否必填
options Json 对象 设定 分析模式指定集合空间 以及 命令位置参数
  1. Options 格式

    属性名 描述 约束 格式
    Mode 进行分析的模式,整数类型,(1-5):
    1:进行抽样分析,生成统计信息
    2:进行全量数据分析,生成统计信息
    3:生成默认的统计信息
    4:加载统计信息到缓存中
    5:清除缓存的统计信息
    默认值为 1
    Mode取 1 - 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"
  2. 统计信息

统计信息的具体描述可以参考统计信息一节。

返回值

无返回值,出错抛异常,并输出错误信息。可以通过 getLastErrObj()getLastErrMsg() 获取错误信息 或 通过 getLastError() 获取错误码。该操作主要的异常如下:

  • SDB_DMS_CS_NOTEXIST(-34) 指定的集合空间不存在。
  • SDB_DMS_NOTEXIST(-23) 指定的集合不存在。
  • SDB_IXM_NOTEXIST(-47) 指定的索引不存在。
  • SDB_INVALIDARG(-6) 指定的参数可能存在冲突,请参考**Options**的约束。

更多错误可以参考常见错误处理指南

版本信息

2.9及以上版本

示例

  1. 对全系统所有集合空间进行统计信息分析和收集

    > db.analyze()
  2. 对指定集合空间"foo"进行统计信息分析和收集

    > db.analyze( { CollectionSpace : "foo" } )
  3. 对指定数据组"group1"进行统计信息分析和收集

    > db.analyze( { GroupName : "group1" } )
  4. 对指定集合"foo.bar"进行统计信息收集,并且指定Sample的数量

    > db.analyze( { Collection : "foo.bar", SampleNum : 1000 } )
  5. 对指定集合"foo.bar"的索引"index"进行统计信息收集

    > db.analyze( { Collection : "foo.bar", Index : "index" } )
  6. 对指定集合"foo.bar"生成清空统计信息缓存

    > db.analyze( { Collection : "foo.bar", Mode : 5 } )
回到顶部