mirror of
https://github.com/GreptimeTeam/greptimedb.git
synced 2025-12-25 23:49:58 +00:00
* feat: support set timezone in db * chore: fix ci * chore: fix code advice * fix: rename `time_zone` to `timezone`
241 lines
7.5 KiB
TOML
241 lines
7.5 KiB
TOML
# Node running mode, "standalone" or "distributed".
|
|
mode = "standalone"
|
|
# Whether to enable greptimedb telemetry, true by default.
|
|
enable_telemetry = true
|
|
# The default timezone of the server
|
|
# default_timezone = "UTC"
|
|
|
|
# HTTP server options.
|
|
[http]
|
|
# Server address, "127.0.0.1:4000" by default.
|
|
addr = "127.0.0.1:4000"
|
|
# HTTP request timeout, 30s by default.
|
|
timeout = "30s"
|
|
# HTTP request body limit, 64Mb by default.
|
|
# the following units are supported: B, KB, KiB, MB, MiB, GB, GiB, TB, TiB, PB, PiB
|
|
body_limit = "64MB"
|
|
|
|
# gRPC server options.
|
|
[grpc]
|
|
# Server address, "127.0.0.1:4001" by default.
|
|
addr = "127.0.0.1:4001"
|
|
# The number of server worker threads, 8 by default.
|
|
runtime_size = 8
|
|
|
|
# MySQL server options.
|
|
[mysql]
|
|
# Whether to enable
|
|
enable = true
|
|
# Server address, "127.0.0.1:4002" by default.
|
|
addr = "127.0.0.1:4002"
|
|
# The number of server worker threads, 2 by default.
|
|
runtime_size = 2
|
|
|
|
# MySQL server TLS options.
|
|
[mysql.tls]
|
|
# TLS mode, refer to https://www.postgresql.org/docs/current/libpq-ssl.html
|
|
# - "disable" (default value)
|
|
# - "prefer"
|
|
# - "require"
|
|
# - "verify-ca"
|
|
# - "verify-full"
|
|
mode = "disable"
|
|
# Certificate file path.
|
|
cert_path = ""
|
|
# Private key file path.
|
|
key_path = ""
|
|
|
|
# PostgresSQL server options.
|
|
[postgres]
|
|
# Whether to enable
|
|
enable = true
|
|
# Server address, "127.0.0.1:4003" by default.
|
|
addr = "127.0.0.1:4003"
|
|
# The number of server worker threads, 2 by default.
|
|
runtime_size = 2
|
|
|
|
# PostgresSQL server TLS options, see `[mysql_options.tls]` section.
|
|
[postgres.tls]
|
|
# TLS mode.
|
|
mode = "disable"
|
|
# certificate file path.
|
|
cert_path = ""
|
|
# private key file path.
|
|
key_path = ""
|
|
|
|
# OpenTSDB protocol options.
|
|
[opentsdb]
|
|
# Whether to enable
|
|
enable = true
|
|
# OpenTSDB telnet API server address, "127.0.0.1:4242" by default.
|
|
addr = "127.0.0.1:4242"
|
|
# The number of server worker threads, 2 by default.
|
|
runtime_size = 2
|
|
|
|
# InfluxDB protocol options.
|
|
[influxdb]
|
|
# Whether to enable InfluxDB protocol in HTTP API, true by default.
|
|
enable = true
|
|
|
|
# Prometheus remote storage options
|
|
[prom_store]
|
|
# Whether to enable Prometheus remote write and read in HTTP API, true by default.
|
|
enable = true
|
|
|
|
[wal]
|
|
# Available wal providers:
|
|
# - "raft_engine" (default)
|
|
# - "kafka"
|
|
provider = "raft_engine"
|
|
|
|
# There're none raft-engine wal config since meta srv only involves in remote wal currently.
|
|
|
|
# Kafka wal options.
|
|
# The broker endpoints of the Kafka cluster. ["127.0.0.1:9092"] by default.
|
|
# broker_endpoints = ["127.0.0.1:9092"]
|
|
|
|
# Number of topics to be created upon start.
|
|
# num_topics = 64
|
|
# Topic selector type.
|
|
# Available selector types:
|
|
# - "round_robin" (default)
|
|
# selector_type = "round_robin"
|
|
# A Kafka topic is constructed by concatenating `topic_name_prefix` and `topic_id`.
|
|
# topic_name_prefix = "greptimedb_wal_topic"
|
|
# Number of partitions per topic.
|
|
# num_partitions = 1
|
|
# Expected number of replicas of each partition.
|
|
# replication_factor = 1
|
|
|
|
# The maximum log size a kafka batch producer could buffer.
|
|
# max_batch_size = "4MB"
|
|
# The linger duration of a kafka batch producer.
|
|
# linger = "200ms"
|
|
# The maximum amount of time (in milliseconds) to wait for Kafka records to be returned.
|
|
# produce_record_timeout = "100ms"
|
|
# Above which a topic creation operation will be cancelled.
|
|
# create_topic_timeout = "30s"
|
|
|
|
# The initial backoff for kafka clients.
|
|
# backoff_init = "500ms"
|
|
# The maximum backoff for kafka clients.
|
|
# backoff_max = "10s"
|
|
# Exponential backoff rate, i.e. next backoff = base * current backoff.
|
|
# backoff_base = 2
|
|
# Stop reconnecting if the total wait time reaches the deadline. If this config is missing, the reconnecting won't terminate.
|
|
# backoff_deadline = "5mins"
|
|
|
|
# WAL data directory
|
|
# dir = "/tmp/greptimedb/wal"
|
|
# WAL file size in bytes.
|
|
file_size = "256MB"
|
|
# WAL purge threshold.
|
|
purge_threshold = "4GB"
|
|
# WAL purge interval in seconds.
|
|
purge_interval = "10m"
|
|
# WAL read batch size.
|
|
read_batch_size = 128
|
|
# Whether to sync log file after every write.
|
|
sync_write = false
|
|
|
|
# Metadata storage options.
|
|
[metadata_store]
|
|
# Kv file size in bytes.
|
|
file_size = "256MB"
|
|
# Kv purge threshold.
|
|
purge_threshold = "4GB"
|
|
|
|
# Procedure storage options.
|
|
[procedure]
|
|
# Procedure max retry time.
|
|
max_retry_times = 3
|
|
# Initial retry delay of procedures, increases exponentially
|
|
retry_delay = "500ms"
|
|
|
|
# Storage options.
|
|
[storage]
|
|
# The working home directory.
|
|
data_home = "/tmp/greptimedb/"
|
|
# Storage type.
|
|
type = "File"
|
|
# TTL for all tables. Disabled by default.
|
|
# global_ttl = "7d"
|
|
# Cache configuration for object storage such as 'S3' etc.
|
|
# cache_path = "/path/local_cache"
|
|
# The local file cache capacity in bytes.
|
|
# cache_capacity = "256MB"
|
|
|
|
# Custom storage options
|
|
#[[storage.providers]]
|
|
#type = "S3"
|
|
#[[storage.providers]]
|
|
#type = "Gcs"
|
|
|
|
# Mito engine options
|
|
[[region_engine]]
|
|
[region_engine.mito]
|
|
# Number of region workers
|
|
num_workers = 8
|
|
# Request channel size of each worker
|
|
worker_channel_size = 128
|
|
# Max batch size for a worker to handle requests
|
|
worker_request_batch_size = 64
|
|
# Number of meta action updated to trigger a new checkpoint for the manifest
|
|
manifest_checkpoint_distance = 10
|
|
# Whether to compress manifest and checkpoint file by gzip (default false).
|
|
compress_manifest = false
|
|
# Max number of running background jobs
|
|
max_background_jobs = 4
|
|
# Interval to auto flush a region if it has not flushed yet.
|
|
auto_flush_interval = "1h"
|
|
# Global write buffer size for all regions.
|
|
global_write_buffer_size = "1GB"
|
|
# Global write buffer size threshold to reject write requests (default 2G).
|
|
global_write_buffer_reject_size = "2GB"
|
|
# Cache size for SST metadata (default 128MB). Setting it to 0 to disable the cache.
|
|
sst_meta_cache_size = "128MB"
|
|
# Cache size for vectors and arrow arrays (default 512MB). Setting it to 0 to disable the cache.
|
|
vector_cache_size = "512MB"
|
|
# Cache size for pages of SST row groups (default 512MB). Setting it to 0 to disable the cache.
|
|
page_cache_size = "512MB"
|
|
# Buffer size for SST writing.
|
|
sst_write_buffer_size = "8MB"
|
|
# Parallelism to scan a region (default: 1/4 of cpu cores).
|
|
# - 0: using the default value (1/4 of cpu cores).
|
|
# - 1: scan in current thread.
|
|
# - n: scan in parallelism n.
|
|
scan_parallelism = 0
|
|
# Capacity of the channel to send data from parallel scan tasks to the main task (default 32).
|
|
parallel_scan_channel_size = 32
|
|
|
|
# Log options
|
|
# [logging]
|
|
# Specify logs directory.
|
|
# dir = "/tmp/greptimedb/logs"
|
|
# Specify the log level [info | debug | error | warn]
|
|
# level = "info"
|
|
# whether enable tracing, default is false
|
|
# enable_otlp_tracing = false
|
|
# tracing exporter endpoint with format `ip:port`, we use grpc oltp as exporter, default endpoint is `localhost:4317`
|
|
# otlp_endpoint = "localhost:4317"
|
|
# The percentage of tracing will be sampled and exported. Valid range `[0, 1]`, 1 means all traces are sampled, 0 means all traces are not sampled, the default value is 1. ratio > 1 are treated as 1. Fractions < 0 are treated as 0
|
|
# tracing_sample_ratio = 1.0
|
|
# Whether to append logs to stdout. Defaults to true.
|
|
# append_stdout = true
|
|
|
|
# Standalone export the metrics generated by itself
|
|
# encoded to Prometheus remote-write format
|
|
# and send to Prometheus remote-write compatible receiver (e.g. send to `greptimedb` itself)
|
|
# This is only used for `greptimedb` to export its own metrics internally. It's different from prometheus scrape.
|
|
# [export_metrics]
|
|
# whether enable export metrics, default is false
|
|
# enable = false
|
|
# The url of metrics export endpoint, default is `frontend` default HTTP endpoint.
|
|
# endpoint = "127.0.0.1:4000"
|
|
# The database name of exported metrics stores, user needs to specify a valid database
|
|
# db = ""
|
|
# The interval of export metrics
|
|
# write_interval = "30s"
|
|
# HTTP headers of Prometheus remote-write carry
|
|
# headers = {}
|