Storage服务配置
Caution
- 不建议修改
local_config
的值为false
。修改后Nebula Graph服务启动后会先尝试从Meta服务获取缓存的配置信息,可能导致集群配置不一致,造成未知风险。 - 不建议修改文档未介绍的配置项,除非已经熟悉源代码并完全了解配置项的作用。
如需使用初始配置文件,从上述两个文件选择其一,删除后缀.default
或.production
,Meta服务才能将其识别为配置文件并从中获取配置信息。
配置文件参数值说明
配置文件内没有设置某个参数表示参数使用的是默认值。文件内只预设了部分参数的值,而且两份初始配置文件内的参数值也略有不同,本文的预设值以nebula-metad.conf.default
文件为准,其中没有的参数则以nebula-storaged.conf.production
文件为准。
Note
Raft Listener的配置和Storage服务配置不同,详情请参见。
如需查看所有的参数及其当前值,参见配置管理。
basics配置
- 在插入时间类型的属性值时,Nebula Graph会根据
timezone_name
设置的时区将该时间值(TIMESTAMP类型例外)转换成相应的UTC时间,因此在查询中返回的时间类型属性值为UTC时间。 timezone_name
参数只用于转换Nebula Graph中存储的数据,Nebula Graph进程中其它时区相关数据,例如日志打印的时间等,仍然使用主机系统默认的时区。
名称 | 预设值 | 说明 |
---|---|---|
log_dir | logs | 存放Storage服务日志的目录,建议和数据保存在不同硬盘。 |
minloglevel | 0 | 最小日志级别,即不会记录低于这个级别的日志。可选值为0 (INFO)、1 (WARNING)、2 (ERROR)、3 (FATAL)。建议在调试时设置为0 ,生产环境中设置为1 。如果设置为4 ,Nebula Graph不会记录任何日志。 |
v | 0 | 日志详细级别,值越大,日志记录越详细。可选值为0 、1 、2 、3 。 |
logbufsecs | 0 | 缓冲日志的最大时间,超时后输出到日志文件。0 表示实时输出。单位:秒。 |
redirect_stdout | true | 是否将标准输出和标准错误重定向到单独的输出文件。 |
stdout_log_file | storaged-stdout.log | 标准输出日志文件名称。 |
stderr_log_file | storaged-stderr.log | 标准错误日志文件名称。 |
stderrthreshold | 2 | 要复制到标准错误中的最小日志级别(minloglevel )。 |
networking配置
Caution
必须在配置文件中使用真实的IP地址。否则某些情况下127.0.0.1/0.0.0.0
无法正确解析。
raft配置
名称 | 预设值 | 说明 |
---|---|---|
raft_heartbeat_interval_secs | 30 | Raft选举超时时间。单位:秒。 |
raft_rpc_timeout_ms | 500 | Raft客户端的远程过程调用(RPC)超时时间。单位:毫秒。 |
wal_ttl | 14400 | Raft WAL的生存时间。单位:秒。 |
misc配置
Caution
下表中的snapshot
与Nebula Graph快照是不同的概念,这里的snapshot
指Raft同步过程中leader上的存量数据。
名称 | 预设值 | 说明 |
---|---|---|
snapshot_part_rate_limit | 8388608 | Raft leader向Raft group中其它成员同步存量数据时的限速。单位:字节/秒。 |
snapshot_batch_size | 1048576 | Raft leader向Raft group中其它成员同步存量数据时每批发送的数据量。单位:字节。 |
rebuild_index_part_rate_limit | 4194304 | 重建索引过程中,Raft leader向Raft group中其它成员同步索引数据时的限速。单位:字节/秒。 |
rebuild_index_batch_size | 1048576 | 重建索引过程中,Raft leader向Raft group中其它成员同步索引数据时每批发送的数据量。单位:字节。 |
rocksdb options配置
rocksdb options配置的格式为{"<option_name>":"<option_value>"}
,多个选项用英文逗号(,)隔开。
rocksdb_db_options
和rocksdb_column_family_options
支持的选项如下:
rocksdb_column_family_options
max_write_buffer_number
level0_file_num_compaction_trigger
level0_slowdown_writes_trigger
level0_stop_writes_trigger
target_file_size_base
target_file_size_multiplier
max_bytes_for_level_base
max_bytes_for_level_multiplier
参数的详细说明请参见。
在每个点出发的查询获取到边时,直接截断。目的是避免超级节点的邻边过多,单个查询占用过多的硬盘和内存。截取前 max_edge_returned_per_vertex
个边,多余的边不返回。该参数作用于全局,不用于单个space。
属性名 | 默认值 | 说明 |
---|---|---|
max_edge_returned_per_vertex | 2147483647 | 每个稠密点,最多返回多少条边,多余的边截断不返回。配置文件默认未设置。 |
Compatibility
Nebula Graph 1.x 中的蓄水池采样方法在 Nebula Graph 2.6.0 不再支持。
数据量大而内存不够时
如果数据量很大但内存不够,则推荐把 storage 配置中的 enable_partitioned_index_filter
设置为 ;但由于缓存了较少的 RocksDB 索引,性能会受影响。