跳转至

RocksDB 统计数据

NebulaGraph 使用 RocksDB 作为底层存储,本文介绍如何收集和展示 NebulaGraph 的 RocksDB 统计信息。

启用 RocksDB

RocksDB 统计功能默认关闭,启动 RocksDB 统计功能,你需要:

  1. 修改 nebula-storaged.conf 文件中 --enable_rocksdb_statistics 参数为 true。配置默认文件目录为 /use/local/nebula/etc

  2. 重启服务使修改生效。

获取 RocksDB 统计信息

用户可以使用存储服务中的内置 HTTP 服务来获取以下类型的统计信息,且支持返回 JSON 格式的结果:

  • 所有统计信息。
  • 指定条目的信息。

示例

使用以下命令获取所有 RocksDB 统计信息:

curl -L "http://${storage_ip}:${port}/rocksdb_stats"

例如:

curl -L "http://172.28.2.1:19779/rocksdb_stats"

rocksdb.blobdb.blob.file.bytes.read=0
rocksdb.blobdb.blob.file.bytes.written=0
rocksdb.blobdb.blob.file.bytes.synced=0
...

使用以下命令获取部分 RocksDB 统计信息:

curl -L "http://${storage_ip}:${port}/rocksdb_stats?stats=${stats_name}"

例如使用以下语句获取 rocksdb.bytes.readrocksdb.block.cache.add的信息。

curl -L "http://172.28.2.1:19779/rocksdb_stats?stats=rocksdb.bytes.read,rocksdb.block.cache.add"

rocksdb.block.cache.add=14
rocksdb.bytes.read=1632

使用以下命令获取部分 JSON 格式的 RocksDB 统计信息:

curl -L "http://${storage_ip}:${port}/rocksdb_stats?stats=${stats_name}&format=json"

例如使用以下语句获取 rocksdb.bytes.readrocksdb.block.cache.add的统计信息并返回 JSON 的格式数据。

curl -L "http://172.28.2.1:19779/rocksdb_stats?stats=rocksdb.bytes.read,rocksdb.block.cache.add&format=json"

[
  {
    "rocksdb.block.cache.add": 1
  },
  {
    "rocksdb.bytes.read": 160
  }
]


最后更新: September 4, 2023