SdbSnapshotOption

指定快照查询参数。

包括指定选择条件、返回字段名、排序情况、快照参数以及对返回结果集的处理等参数。

语法

SdbSnapshotOption[.cond(<cond>)]          [.sel(<sel>)]          [.sort(<sort>)]          [.options(<options>)]          [.skip(<skipNum>)]          [.limit(<retNum>)]

SdbSnapshotOption[.cond(<cond>)][.skip(<skipNum>)][.limit(<retNum>)]

SdbSnapshotOption[.cond(<cond>)].options(<options>)

方法

cond(<cond>)

选择条件。

参数名参数类型描述是否必填
condJson 对象选择条件,只返回 cond 字段指定的节点或分区组的快照信息,为 null 时,返回整个集群的快照信息。

sel(<sel>)

查询返回记录的字段名。

参数名参数类型描述是否必填
selJson 对象选择返回字段名。为 null 时,返回所有的字段名。

Note:

  • sel 参数是一个json结构,如:{字段名:字段值},字段值一般指定为空串。sel中指定的字段名在记录中存在,设置字段值不生效;不存在则返回sel中指定的字段名和字段值。
  • 记录中字段值类型为数组的,我们可以在sel中指定该字段名,用"."操作符加上双引号("")来引用数组元素。

sort(<sort>)

查询返回记录的字段名。

参数名参数类型描述是否必填
sortJson 对象指定结果集按指定字段名排序的情况。字段名的值为1或者-1,如:{"name":1,"age":-1}。1代表升序;-1代表降序。 如果不设定 sort 则表示不对结果集做排序。

options(<options>)

查询返回记录的字段名。

参数名参数类型描述是否必填
optionsJson 对象指定快照参数,因不同快照类型而异,在对应快照类型查看选项及示例。

options选项

参数名参数类型描述是否必填
ModeString指定返回配置的模式。在 run 模式下,显示当前运行时配置信息,在 local 模式下,显示配置文件中配置信息。如 { "Mode": "local" }。默认为 run。
ExpandBool/String是否扩展显示用户未配置的配置项。如 { "Expand": false }。默认为 true。
ShowErrorString指定是否返回错误信息。在 show 模式下,显示错误信息,在 only 模式下,只显示错误信息,不显示其他快照信息,在 ignore 模式下,不显示错误信息。如 { "ShowError: "only" }。默认为 show。
ShowErrorModeString指定返回错误信息的格式。在 aggr 模式下,错误信息聚合为一条记录显示,在 flat 模式下,一个错误节点对应一条记录显示。如 { "ShowErrorMode": "flat" }。默认为 aggr。

Note:

  • Mode 参数和 Expand 参数仅支持配置快照
  • ShowError 参数和 ShowErrorMode 参数只在协调节点执行快照生效。
  • ShowError 参数和 ShowErrorMode 参数仅支持会返回错误信息的快照。
  • 当 ShowError 参数为 ignore 的情况下,ShowErrorMode 参数不起作用。
  • 特别地,当 ShowErrorMode 参数为 flat 的情况下,对系统快照数据库快照不起作用 。

skip(<skipNum>)

查询返回记录的字段名。

参数名参数类型描述是否必填
skipNumint自定义从结果集哪条记录开始返回。默认值为0,表示从第一条记录开始返回。

Note:

如果不设定 skipNum 的内容或者设定 skipNum 的值为0,相当于返回所有的结果集;如果想从结果集的第3条记录开始返回,可设置 skipNum 的值等于2。

limit(<retNum>)

查询返回记录的字段名。

参数名参数类型描述是否必填
retNumint自定义返回结果集的记录条数。默认值为-1,表示返回从skipNum位置开始到结果集结束位置的所有记录。

Note:

如果不设定 retNum 的内容,相当于返回所有的结果集记录。如果想返回结果集的前5条记录,可设置 retNum 的值为5。

返回值

返回自身,类型为 SdbSnapshotOption。

错误

错误码

示例

  • 通过组名或组 ID 查询某个分区组的快照信息,如:
  1. > var option = new SdbSnapshotOption().cond( { GroupName:'data1' } )
  2. > db.snapshot( SDB_SNAP_CONTEXTS, option )
  3. {
  4. "SessionID": "vmsvr1-cent-x64-1:11820:22",
  5. "Contexts": [
  6. {
  7. "ContextID": 11,
  8. "Type": "DUMP",
  9. "Description": "BufferSize:0",
  10. "DataRead": 0,
  11. "IndexRead": 0,
  12. "QueryTimeSpent": 0,
  13. "StartTimestamp": "2013-12-28-16.13.57.864245"
  14. }
  15. ]
  16. }
  17. {
  18. "SessionID": "vmsvr1-cent-x64-1:11840:23",
  19. "Contexts": [
  20. {
  21. "ContextID": 10,
  22. "Type": "DUMP",
  23. "Description": "BufferSize:0",
  24. "DataRead": 0,
  25. "IndexRead": 0,
  26. "QueryTimeSpent": 0,
  27. "StartTimestamp": "2013-12-28-16.13.57.865103"
  28. }
  29. ]
  30. }
  • 通过“组名+主机名+服务名”或“组 ID+节点 ID”查询某个节点的快照信息,如:
  1. > var option = new SdbSnapshotOption().cond( { GroupName: 'data1', HostName: "vmsvr1-cent-x64-1", ServiceName: "11820" } )
  2. > db.snapshot( SDB_SNAP_CONTEXTS, option )
  3. {
  4. "SessionID": "vmsvr1-cent-x64-1:11820:22",
  5. "Contexts": [
  6. {
  7. "ContextID": 11,
  8. "Type": "DUMP",
  9. "Description": "BufferSize:0",
  10. "DataRead": 0,
  11. "IndexRead": 0,
  12. "QueryTimeSpent": 0,
  13. "StartTimestamp": "2013-12-28-16.13.57.864245"
  14. }
  15. ]
  16. }
  • 通过“主机名+服务名”查询某个节点的快照信息,如:
  1. > var option = new SdbSnapshotOption().cond( { HostName: "ubuntu-200-043", ServiceName: "11820" } )
  2. > db.snapshot( SDB_SNAP_CONTEXTS, option )
  3. {
  4. "NodeName": "ubuntu-200-043:11820",
  5. "SessionID": 18,
  6. "Contexts": [
  7. {
  8. "ContextID": 31,
  9. "Type": "DUMP",
  10. "Description": "IsOpened:1,HitEnd:0,BufferSize:0",
  11. "DataRead": 0,
  12. "IndexRead": 0,
  13. "QueryTimeSpent": 0,
  14. "StartTimestamp": "2016-10-27-17.53.45.042061"
  15. }
  16. ]
  17. }
  • 查看数据组 db1 中数据节点 20000 上配置文件中的配置信息并指定快照参数。
  1. > var option = new SdbSnapshotOption().cond( { GroupName:'db1', ServiceName:'20000' } ).options( { "mode": "local", "expand": false } )
  2. > db.snapshot( SDB_SNAP_CONFIGS, option )
  3. {
  4. "NodeName": "ubuntu-zwb:20000",
  5. "dbpath": "/home/equoiadb/20000/",
  6. "ServiceName": "20000",
  7. "diaglevel": 3,
  8. "role": "data",
  9. "catalogaddr": "ubuntu-zwb:30003,ubuntu-zwb:30013,ubuntu-zwb:30023",
  10. "perfstat": "FALSE",
  11. "businessname": "yyy",
  12. "clustername": "xxx"
  13. }
  14. Return 1 row(s).