InfluxDB 3 Core 配置选项
InfluxDB 3 Core 处于公开 Alpha 阶段
InfluxDB 3 Core 处于公开 alpha 阶段,可用于测试和反馈,但不适用于生产环境。产品和本文档均在开发中。我们欢迎并鼓励您提供关于 alpha 体验的输入,并邀请您加入我们的公共频道以获取更新和分享反馈。
InfluxDB 3 Core 允许您使用 influxdb3 serve
命令选项或设置环境变量来自定义服务器配置。
配置您的服务器
使用命令选项或环境变量将配置选项传递给 influxdb serve
服务器。命令选项优先于环境变量。
influxdb3 serve 命令选项示例
influxdb3 serve \
--object-store file \
--data-dir ~/.influxdb3 \
--node-id my-host \
--log-filter info \
--max-http-request-size 20971520 \
--aws-allow-http
环境变量示例
export INFLUXDB3_OBJECT_STORE=file
export INFLUXDB3_DB_DIR=~/.influxdb3
export INFLUXDB3_WRITER_IDENTIFIER_PREFIX=my-host
export LOG_FILTER=info
export INFLUXDB3_MAX_HTTP_REQUEST_SIZE=20971520
export AWS_ALLOW_HTTP=true
influxdb3 serve
服务器配置选项
- 通用
- AWS
- Google 云服务
- Microsoft Azure
- 对象存储
- 日志
- 追踪
- DataFusion
- datafusion-num-threads
- datafusion-runtime-type
- datafusion-runtime-disable-lifo-slot
- datafusion-runtime-event-interval
- datafusion-runtime-global-queue-interval
- datafusion-runtime-max-blocking-threads
- datafusion-runtime-max-io-events-per-tick
- datafusion-runtime-thread-keep-alive
- datafusion-runtime-thread-priority
- datafusion-max-parquet-fanout
- datafusion-use-cached-parquet-loader
- datafusion-config
- HTTP
- 内存
- 预写式日志 (WAL)
- 压缩
- 缓存
- 处理引擎
通用
对象存储
指定用于存储 Parquet 文件的对象存储。此选项支持以下值
memory
(默认)memory-throttled
file
s3
google
azure
influxdb3 serve 选项 | 环境变量 |
---|---|
--object-store | INFLUXDB3_OBJECT_STORE |
数据目录
定义 InfluxDB 3 Core 用于在本地存储文件的位置。
influxdb3 serve 选项 | 环境变量 |
---|---|
--data-dir | INFLUXDB3_DB_DIR |
节点 ID
指定用作所有对象存储文件路径前缀的节点标识符。对于共享相同对象存储配置(例如,相同的存储桶)的任何主机,此标识符应是唯一的。
influxdb3 serve 选项 | 环境变量 |
---|---|
--node-id | INFLUXDB3_NODE_IDENTIFIER_PREFIX |
查询文件限制
限制查询可以访问的 Parquet 文件数量。
默认值: 432
使用默认的 432
设置和默认的 gen1-duration
设置 10 分钟,查询可以访问最多 72 小时的数据,但可能会更少,具体取决于给定 10 分钟时间块的所有数据是否在同一期间被摄取。
您可以增加此限制以允许查询更多文件,但请注意以下副作用
- 读取更多 Parquet 文件的查询的性能下降
- 内存使用量增加
- 您的系统可能由于内存不足 (OOM) 错误而终止
influxdb3
进程 - 如果使用对象存储来存储数据,则会产生许多 GET 请求来访问数据(每个文件最多 2 个)
我们建议保持默认设置并查询较小的时间范围。如果您需要查询更长的时间范围或在访问一小时或更多数据的任何查询上获得更快的查询性能,InfluxDB 3 Enterprise 通过压缩和重新排列 Parquet 文件来优化数据存储,从而实现更快的查询性能。
influxdb3 serve 选项 | 环境变量 |
---|---|
--query-file-limit | INFLUXDB3_QUERY_FILE_LIMIT |
AWS
- aws-access-key-id
- aws-secret-access-key
- aws-default-region
- aws-endpoint
- aws-session-token
- aws-allow-http
- aws-skip-signature
aws-access-key-id
当使用 Amazon S3 作为对象存储时,将其设置为具有从指定的 S3 存储桶读取和写入权限的访问密钥。
influxdb3 serve 选项 | 环境变量 |
---|---|
--aws-access-key-id | AWS_ACCESS_KEY_ID |
aws-secret-access-key
当使用 Amazon S3 作为对象存储时,将其设置为与指定的访问密钥 ID 关联的密钥。
influxdb3 serve 选项 | 环境变量 |
---|---|
--aws-secret-access-key | AWS_SECRET_ACCESS_KEY |
aws-default-region
当使用 Amazon S3 作为对象存储时,如果与回退值不同,则将其设置为与指定存储桶关联的区域。
默认值: us-east-1
influxdb3 serve 选项 | 环境变量 |
---|---|
--aws-default-region | AWS_DEFAULT_REGION |
aws-endpoint
当使用 Amazon S3 兼容性存储服务时,将其设置为端点。
influxdb3 serve 选项 | 环境变量 |
---|---|
--aws-endpoint | AWS_ENDPOINT |
aws-session-token
当使用 Amazon S3 作为对象存储时,将其设置为会话令牌。当使用联合登录或 SSO 并通过 UI 获取凭据时,这非常方便。
influxdb3 serve 选项 | 环境变量 |
---|---|
--aws-session-token | AWS_SESSION_TOKEN |
aws-allow-http
允许与 AWS 建立未加密的 HTTP 连接。
influxdb3 serve 选项 | 环境变量 |
---|---|
--aws-allow-http | AWS_ALLOW_HTTP |
aws-skip-signature
如果启用,S3 对象存储将不会获取凭据,也不会签署请求。
influxdb3 serve 选项 | 环境变量 |
---|---|
--aws-skip-signature | AWS_SKIP_SIGNATURE |
Google 云服务
google-service-account
当使用 Google Cloud Storage 作为对象存储时,将其设置为包含 Google 凭据的 JSON 文件的路径。
influxdb3 serve 选项 | 环境变量 |
---|---|
--google-service-account | GOOGLE_SERVICE_ACCOUNT |
Microsoft Azure
azure-storage-account
当使用 Microsoft Azure 作为对象存储时,将其设置为导航到 所有服务 > 存储帐户 > [名称]
时看到的名称。
influxdb3 serve 选项 | 环境变量 |
---|---|
--azure-storage-account | AZURE_STORAGE_ACCOUNT |
azure-storage-access-key
当使用 Microsoft Azure 作为对象存储时,将其设置为存储帐户的 设置 > 访问密钥 中的密钥值之一。
influxdb3 serve 选项 | 环境变量 |
---|---|
--azure-storage-access-key | AZURE_STORAGE_ACCESS_KEY |
对象存储
存储桶
设置要使用的对象存储桶的名称。还必须将 --object-store
设置为云对象存储,此选项才能生效。
influxdb3 serve 选项 | 环境变量 |
---|---|
--bucket | INFLUXDB3_BUCKET |
对象存储连接限制
当使用基于网络的对象存储时,将连接数限制为此值。
默认值: 16
influxdb3 serve 选项 | 环境变量 |
---|---|
--object-store-connection-limit | OBJECT_STORE_CONNECTION_LIMIT |
对象存储仅限 HTTP/2
强制对基于网络的对象存储使用 HTTP/2 连接。
influxdb3 serve 选项 | 环境变量 |
---|---|
--object-store-http2-only | OBJECT_STORE_HTTP2_ONLY |
对象存储 HTTP/2 最大帧大小
设置 HTTP/2 连接的最大帧大小(以字节/八位字节为单位)。
influxdb3 serve 选项 | 环境变量 |
---|---|
--object-store-http2-max-frame-size | OBJECT_STORE_HTTP2_MAX_FRAME_SIZE |
对象存储最大重试次数
定义重试请求的最大次数。
influxdb3 serve 选项 | 环境变量 |
---|---|
--object-store-max-retries | OBJECT_STORE_MAX_RETRIES |
对象存储重试超时
指定从初始请求开始的最长时间,超过此时间后将不再尝试重试。
influxdb3 serve 选项 | 环境变量 |
---|---|
--object-store-retry-timeout | OBJECT_STORE_RETRY_TIMEOUT |
对象存储缓存端点
设置与 S3 兼容的、启用 HTTP/2 的对象存储缓存的端点。
influxdb3 serve 选项 | 环境变量 |
---|---|
--object-store-cache-endpoint | OBJECT_STORE_CACHE_ENDPOINT |
日志
日志过滤器
设置日志的过滤器指令。
influxdb3 serve 选项 | 环境变量 |
---|---|
--log-filter | LOG_FILTER |
日志目标
指定日志的目标位置。
默认值: stdout
influxdb3 serve 选项 | 环境变量 |
---|---|
--log-destination | LOG_DESTINATION |
日志格式
定义日志的消息格式。
此选项支持以下值
full
(默认)
默认值: full
influxdb3 serve 选项 | 环境变量 |
---|---|
--log-format | LOG_FORMAT |
查询日志大小
定义查询日志的大小。在此数量的查询之前,日志中会保留最多此数量的查询,然后较旧的查询将被清除,为新查询腾出空间。
默认值: 1000
influxdb3 serve 选项 | 环境变量 |
---|---|
--query-log-size | INFLUXDB3_QUERY_LOG_SIZE |
追踪
- 追踪导出器
- traces-exporter-jaeger-agent-host
- traces-exporter-jaeger-agent-port
- traces-exporter-jaeger-service-name
- traces-exporter-jaeger-trace-context-header-name
- traces-jaeger-debug-name
- traces-jaeger-tags
- traces-jaeger-max-msgs-per-second
追踪导出器
设置追踪导出器的类型。
默认值: none
influxdb3 serve 选项 | 环境变量 |
---|---|
--traces-exporter | TRACES_EXPORTER |
traces-exporter-jaeger-agent-host
指定 Jaeger 代理网络主机名以进行追踪。
默认值: 0.0.0.0
influxdb3 serve 选项 | 环境变量 |
---|---|
--traces-exporter-jaeger-agent-host | TRACES_EXPORTER_JAEGER_AGENT_HOST |
traces-exporter-jaeger-agent-port
定义 Jaeger 代理网络端口以进行追踪。
默认值: 6831
influxdb3 serve 选项 | 环境变量 |
---|---|
--traces-exporter-jaeger-agent-port | TRACES_EXPORTER_JAEGER_AGENT_PORT |
traces-exporter-jaeger-service-name
设置 Jaeger 服务名称以进行追踪。
默认值: iox-conductor
influxdb3 serve 选项 | 环境变量 |
---|---|
--traces-exporter-jaeger-service-name | TRACES_EXPORTER_JAEGER_SERVICE_NAME |
traces-exporter-jaeger-trace-context-header-name
指定用于传递追踪上下文的标头名称。
默认值: uber-trace-id
influxdb3 serve 选项 | 环境变量 |
---|---|
--traces-exporter-jaeger-trace-context-header-name | TRACES_EXPORTER_JAEGER_TRACE_CONTEXT_HEADER_NAME |
traces-jaeger-debug-name
指定用于在追踪中强制采样的标头名称。
默认值: jaeger-debug-id
influxdb3 serve 选项 | 环境变量 |
---|---|
--traces-jaeger-debug-name | TRACES_EXPORTER_JAEGER_DEBUG_NAME |
traces-jaeger-tags
定义一组 key=value
对,用于注释追踪 span。
influxdb3 serve 选项 | 环境变量 |
---|---|
--traces-jaeger-tags | TRACES_EXPORTER_JAEGER_TAGS |
traces-jaeger-max-msgs-per-second
指定每秒发送到 Jaeger 服务消息的最大数量。
默认值: 1000
influxdb3 serve 选项 | 环境变量 |
---|---|
--traces-jaeger-max-msgs-per-second | TRACES_JAEGER_MAX_MSGS_PER_SECOND |
DataFusion
- datafusion-num-threads
- datafusion-runtime-type
- datafusion-runtime-disable-lifo-slot
- datafusion-runtime-event-interval
- datafusion-runtime-global-queue-interval
- datafusion-runtime-max-blocking-threads
- datafusion-runtime-max-io-events-per-tick
- datafusion-runtime-thread-keep-alive
- datafusion-runtime-thread-priority
- datafusion-max-parquet-fanout
- datafusion-use-cached-parquet-loader
- datafusion-config
datafusion-num-threads
设置要使用的 DataFusion 运行时线程的最大数量。
influxdb3 serve 选项 | 环境变量 |
---|---|
--datafusion-num-threads | INFLUXDB3_DATAFUSION_NUM_THREADS |
datafusion-runtime-type
指定 DataFusion tokio 运行时类型。
此选项支持以下值
current-thread
multi-thread
(默认)multi-thread-alt
默认值: multi-thread
influxdb3 serve 选项 | 环境变量 |
---|---|
--datafusion-runtime-type | INFLUXDB3_DATAFUSION_RUNTIME_TYPE |
datafusion-runtime-disable-lifo-slot
禁用 DataFusion 运行时的 LIFO 插槽。
此选项支持以下值
true
false
influxdb3 serve 选项 | 环境变量 |
---|---|
--datafusion-runtime-disable-lifo-slot | INFLUXDB3_DATAFUSION_RUNTIME_DISABLE_LIFO_SLOT |
datafusion-runtime-event-interval
设置 DataFusion tokio 运行时的调度程序在轮询外部事件(例如:计时器、I/O)之前经过的调度程序滴答数。
influxdb3 serve 选项 | 环境变量 |
---|---|
--datafusion-runtime-event-interval | INFLUXDB3_DATAFUSION_RUNTIME_EVENT_INTERVAL |
datafusion-runtime-global-queue-interval
设置 DataFusion 运行时的调度程序在轮询全局任务队列之前经过的调度程序滴答数。
influxdb3 serve 选项 | 环境变量 |
---|---|
--datafusion-runtime-global-queue-interval | INFLUXDB3_DATAFUSION_RUNTIME_GLOBAL_QUEUE_INTERVAL |
datafusion-runtime-max-blocking-threads
指定 DataFusion 运行时生成的附加线程的限制。
influxdb3 serve 选项 | 环境变量 |
---|---|
--datafusion-runtime-max-blocking-threads | INFLUXDB3_DATAFUSION_RUNTIME_MAX_BLOCKING_THREADS |
datafusion-runtime-max-io-events-per-tick
配置 tokio DataFusion 运行时每个滴答处理的最大事件数。
influxdb3 serve 选项 | 环境变量 |
---|---|
--datafusion-runtime-max-io-events-per-tick | INFLUXDB3_DATAFUSION_RUNTIME_MAX_IO_EVENTS_PER_TICK |
datafusion-runtime-thread-keep-alive
为 tokio DataFusion 运行时的阻塞池中的线程设置自定义超时。
influxdb3 serve 选项 | 环境变量 |
---|---|
--datafusion-runtime-thread-keep-alive | INFLUXDB3_DATAFUSION_RUNTIME_THREAD_KEEP_ALIVE |
datafusion-runtime-thread-priority
为 tokio DataFusion 运行时工作线程设置线程优先级。
默认值: 10
influxdb3 serve 选项 | 环境变量 |
---|---|
--datafusion-runtime-thread-priority | INFLUXDB3_DATAFUSION_RUNTIME_THREAD_PRIORITY |
datafusion-max-parquet-fanout
当排序方式需要多个 parquet 文件时(例如,重复数据删除),指定最大扇出。
默认值: 1000
influxdb3 serve 选项 | 环境变量 |
---|---|
--datafusion-max-parquet-fanout | INFLUXDB3_DATAFUSION_MAX_PARQUET_FANOUT |
datafusion-use-cached-parquet-loader
从对象存储读取 parquet 文件时,使用缓存的 parquet 加载器。
influxdb3 serve 选项 | 环境变量 |
---|---|
--datafusion-use-cached-parquet-loader | INFLUXDB3_DATAFUSION_USE_CACHED_PARQUET_LOADER |
datafusion-config
以逗号分隔的 key:value
对列表形式向 DataFusion 提供自定义配置。
influxdb3 serve 选项 | 环境变量 |
---|---|
--datafusion-config | INFLUXDB3_DATAFUSION_CONFIG |
HTTP
最大 HTTP 请求大小
指定 HTTP 请求的最大大小。
默认值: 10485760
influxdb3 serve 选项 | 环境变量 |
---|---|
--max-http-request-size | INFLUXDB3_MAX_HTTP_REQUEST_SIZE |
http-bind
定义 InfluxDB 提供 HTTP API 请求的地址。
默认值: 0.0.0.0:8181
influxdb3 serve 选项 | 环境变量 |
---|---|
--http-bind | INFLUXDB3_HTTP_BIND_ADDR |
bearer-token
指定为请求设置的 bearer token。
influxdb3 serve 选项 | 环境变量 |
---|---|
--bearer-token | INFLUXDB3_BEARER_TOKEN |
内存
ram-pool-data-bytes
指定用于存储数据的 RAM 缓存的大小,以字节为单位。
默认值: 1073741824
influxdb3 serve 选项 | 环境变量 |
---|---|
--ram-pool-data-bytes | INFLUXDB3_RAM_POOL_DATA_BYTES |
exec-mem-pool-bytes
指定查询执行期间使用的内存池的大小,以字节为单位。
默认值: 8589934592
influxdb3 serve 选项 | 环境变量 |
---|---|
--exec-mem-pool-bytes | INFLUXDB3_EXEC_MEM_POOL_BYTES |
buffer-mem-limit-mb
指定缓冲数据的 MB 大小限制。如果超出此限制,服务器将强制执行快照。
默认值: 5000
influxdb3 serve 选项 | 环境变量 |
---|---|
--buffer-mem-limit-mb | INFLUXDB3_BUFFER_MEM_LIMIT_MB |
force-snapshot-mem-threshold
指定内部内存缓冲区的阈值。支持百分比(可用内存的一部分)或绝对值(总字节数)——例如:70%
或 100000
。
默认值: 70%
influxdb3 serve 选项 | 环境变量 |
---|---|
--force-snapshot-mem-threshold | INFLUXDB3_FORCE_SNAPSHOT_MEM_THRESHOLD |
预写式日志 (WAL)
wal-flush-interval
指定将缓冲数据刷新到 WAL 文件的间隔。等待 WAL 确认的写入最多需要此间隔才能完成。
默认值: 1s
influxdb3 serve 选项 | 环境变量 |
---|---|
--wal-flush-interval | INFLUXDB3_WAL_FLUSH_INTERVAL |
wal-snapshot-size
定义在快照中尝试删除的 WAL 文件数量。此数量乘以间隔确定快照的频率。
默认值: 600
influxdb3 serve 选项 | 环境变量 |
---|---|
--wal-snapshot-size | INFLUXDB3_WAL_SNAPSHOT_SIZE |
wal-max-write-buffer-size
指定在必须执行并成功刷新之前可以缓冲的最大写入请求数。
默认值: 100000
influxdb3 serve 选项 | 环境变量 |
---|---|
--wal-max-write-buffer-size | INFLUXDB3_WAL_MAX_WRITE_BUFFER_SIZE |
snapshotted-wal-files-to-keep
指定要在对象存储中保留的快照 WAL 文件数。刷新 WAL 文件不会立即清除 WAL 文件;当快照 WAL 文件的数量超过此数量时,它们将被删除。
默认值: 300
influxdb3 serve 选项 | 环境变量 |
---|---|
--snapshotted-wal-files-to-keep | INFLUXDB3_NUM_WAL_FILES_TO_KEEP |
压缩
gen1-duration
指定 Parquet 文件排列成的持续时间。数据时间戳将每一行放入此持续时间的文件中。支持的持续时间为 1m
、5m
和 10m
。这些文件被称为“第 1 代”文件,InfluxDB 3 Enterprise 中的压缩器可以将它们合并为更大的代。
默认值: 10m
influxdb3 serve 选项 | 环境变量 |
---|---|
--gen1-duration | INFLUXDB3_GEN1_DURATION |
缓存
- preemptive-cache-age
- parquet-mem-cache-size-mb
- parquet-mem-cache-prune-percentage
- parquet-mem-cache-prune-interval
- disable-parquet-mem-cache
- last-cache-eviction-interval
- distinct-cache-eviction-interval
preemptive-cache-age
指定在压缩期间预取到 Parquet 缓存中的间隔。
默认值: 3d
influxdb3 serve 选项 | 环境变量 |
---|---|
--preemptive-cache-age | INFLUXDB3_PREEMPTIVE_CACHE_AGE |
parquet-mem-cache-size-mb
定义内存中 Parquet 缓存的大小,以兆字节 (MB) 为单位。
默认值: 1000
influxdb3 serve 选项 | 环境变量 |
---|---|
--parquet-mem-cache-size-mb | INFLUXDB3_PARQUET_MEM_CACHE_SIZE_MB |
parquet-mem-cache-prune-percentage
指定在内存中 Parquet 缓存上的 prune 操作期间要 prune 的条目百分比。
默认值: 0.1
influxdb3 serve 选项 | 环境变量 |
---|---|
--parquet-mem-cache-prune-percentage | INFLUXDB3_PARQUET_MEM_CACHE_PRUNE_PERCENTAGE |
parquet-mem-cache-prune-interval
设置检查内存中 Parquet 缓存是否需要 prune 的间隔。
默认值: 1s
influxdb3 serve 选项 | 环境变量 |
---|---|
--parquet-mem-cache-prune-interval | INFLUXDB3_PARQUET_MEM_CACHE_PRUNE_INTERVAL |
disable-parquet-mem-cache
禁用内存中 Parquet 缓存。默认情况下,缓存处于启用状态。
influxdb3 serve 选项 | 环境变量 |
---|---|
--disable-parquet-mem-cache | INFLUXDB3_DISABLE_PARQUET_MEM_CACHE |
last-cache-eviction-interval
指定从 Last-N-Value 缓存中驱逐过期条目的间隔,以人类可读的时间表示——例如:20s
、1m
、1h
。
默认值: 10s
influxdb3 serve 选项 | 环境变量 |
---|---|
--last-cache-eviction-interval | INFLUXDB3_LAST_CACHE_EVICTION_INTERVAL |
distinct-cache-eviction-interval
指定从 distinct value 缓存中驱逐过期条目的间隔,以人类可读的时间表示——例如:20s
、1m
、1h
。
默认值: 10s
influxdb3 serve 选项 | 环境变量 |
---|---|
--distinct-cache-eviction-interval | INFLUXDB3_DISTINCT_CACHE_EVICTION_INTERVAL |
处理引擎
插件目录
指定包含 Python 插件及其测试文件的本地目录。
influxdb3 serve 选项 | 环境变量 |
---|---|
--plugin-dir | INFLUXDB3_PLUGIN_DIR |
虚拟环境位置
指定处理引擎使用的 Python 虚拟环境的位置。
influxdb3 serve 选项 | 环境变量 |
---|---|
--virtual-env-location | VIRTUAL_ENV_LOCATION |
包管理器
指定处理引擎使用的 Python 包管理器。
默认值: 10s
influxdb3 serve 选项 | 环境变量 |
---|---|
--package-manager | PACKAGE_MANAGER |
此页是否对您有帮助?
感谢您的反馈!
支持和反馈
感谢您成为我们社区的一份子!我们欢迎并鼓励您提供关于 InfluxDB 3 Core 和本文档的反馈和错误报告。要获得支持,请使用以下资源
拥有年度或支持合同的客户可以联系 InfluxData 支持。