要获得与亚马逊 Timestream 类似的功能 LiveAnalytics,可以考虑适用于 InfluxDB 的亚马逊 Timestream。适用于 InfluxDB 的 Amazon Timestream 提供简化的数据摄取和个位数毫秒级的查询响应时间,以实现实时分析。点击此处了解更多信息。
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Timestream for InfluxDB 3 中数据库集群的参数组
数据库参数指定数据库的配置方式。您可以通过将数据库实例与参数组进行关联以管理数据库配置。
适用于 InfluxDB 的 Amazon Timestream 使用默认设置定义参数组。您还可以使用自定义设置定义您自己的参数组。核心版和企业版的参数组虽相似,但并不完全相同,亦不可互换。
对于 InfluxDB 3,集群配置通过参数组进行管理。这些参数组包含用于确定 InfluxDB 3 集群运行方式的引擎配置值。
参数组特征
-
不可变性:参数组一经创建即不可改变。参数创建后即无法修改。
-
克隆:可通过克隆现有参数组并在克隆过程中修改参数,创建新的参数组。这是 Amazon Web Services 管理控制台 唯一的功能。
-
删除:无法删除参数组。
-
默认组:适用于 InfluxDB 的 Timestream 提供默认参数组,其中包含已针对常见使用案例进行优化的预置设置。
集群配置的关键参数
InfluxDB 3 的参数组可让您配置集群的各个方面,包括:
-
引擎类型(Influx DBV2、Influx C DBV3 ore、In DBV3 flux Enterpr
-
InfluxDB 3 企业版参数
-
服务定义的参数组
-
查询并发限制
-
查询的内存分配
-
存储缓存设置
-
HTTP 超时配置
-
日志级别和详细程度
-
压缩设置(企业版)
创建新集群时,必须将该集群与参数组相关联。这种关联决定集群的运行特性。
通用参数(核心版和企业版均可用)
| 参数 | 描述 | 范围/格式 |
|---|---|---|
| 查询配置 | ||
queryFileLimit
|
最大查询文件数 | 0-1024 |
queryLogSize
|
查询日志的大小 | 1-10000 |
logFilter
|
日志筛选配置 | 最多 1024 个字符。 |
logFormat
|
日志格式 | “完全” |
| DataFusion 引擎 | ||
dataFusionNumThreads
|
DataFusion 线程数 | 1-2048 |
dataFusionRuntimeType
|
运行时执行模型 | 当前线程、多线程、 multi-thread-alt |
dataFusionMaxParquetFanout
|
Parquet 文件最大扇出量 | 1-1000000 |
dataFusionUseCachedParquetLoader
|
启用 Parquet 加载程序缓存 | 布尔值 |
| 内存管理 | ||
bufferMemLimitMb
|
缓冲区内存限制(以 MB 为单位) | 1024-16777216000 |
execMemPoolBytes
|
执行内存池大小 | 百分比或绝对值 |
parquetMemCacheSize
|
Parquet 内存缓存大小 | 百分比或绝对值 |
forceSnapshotMemThreshold
|
强制快照的内存阈值 | 百分比或绝对值 |
| WAL 配置 | ||
walSnapshotSize
|
WAL 快照大小 | 1-10000 |
walMaxWriteBufferSize
|
最大 WAL 写入缓冲区大小 | 1-1000000 |
snapshottedWalFilesToKeep
|
要保留快照的 WAL 文件数 | 0-10000 |
walReplayConcurrencyLimit
|
WAL 重播并发限制 | 1-100 |
| 缓存设置 | ||
lastCacheEvictionInterval
|
最后一个值缓存驱逐间隔 | Duration |
distinctCacheEvictionInterval
|
不同值缓存驱逐间隔 | Duration |
tableIndexCacheMaxEntries
|
最大表索引缓存条目数 | 1-1000 |
parquetMemCachePrunePercentage
|
Parquet 缓存修剪百分比 | 0-1 |
| HTTP 配置 | ||
maxHttpRequestSize
|
最大 HTTP 请求大小 | 1024-16777216 |
| 保留和删除 | ||
retentionCheckInterval
|
保留策略检查间隔 | Duration |
deleteGracePeriod
|
删除的宽限期 | Duration |
hardDeleteDefaultDuration
|
默认硬删除时长 | Duration |
仅限企业版的参数
| 参数 | 描述 | 范围/格式 |
|---|---|---|
| 节点配置 | ||
ingestQueryInstances
|
writer/reader 节点数量 | 1-2(必填) |
queryOnlyInstances
|
专用读取器节点的数量 | 0-1(必填) |
dedicatedCompactor
|
启用专用的压缩器节点 | 布尔值(必填) |
| 压缩设置 | ||
compactionRowLimit
|
压缩的行限制 | 1-100000000 |
compactionMaxNumFilesPerPlan
|
每个压缩计划的最大文件数 | 1-10000 |
compactionGen2Duration
|
第 2 代压缩持续时间 | Duration |
compactionMultipliers
|
压缩等级乘数 | 格式:“n,n,n,n” |
compactionCleanupWait
|
清理前的等待时间 | Duration |
compactionCheckInterval
|
压缩检查间隔 | Duration |
| 缓存配置 | ||
lastValueCacheDisableFromHistory
|
禁用历史数据的 LVC | 布尔值 |
distinctValueCacheDisableFromHistory
|
禁用历史数据的 DVC | 布尔值 |
| 复制 | ||
replicationInterval
|
数据复制间隔 | Duration |
catalogSyncInterval
|
目录同步间隔 | Duration |
管理参数组
管理参数组:
-
创建:使用自定义设置创建新的参数组。
-
关联:将参数组与新的或现有的集群相关联。
-
删除或修改:无法修改或删除参数组。
由于参数组不可改变,因此在创建集群之前请仔细规划配置。如果后续需要更改参数,则需要创建新的参数组并将其与集群相关联,这可能需要重新启动集群。
创建参数组
创建 InfluxDB 3 核心版参数组:
aws timestream-influxdb create-db-parameter-group \ --name "my-influxdb3-core-pg" \ --description "Custom parameter group for InfluxDB 3 Core" \ --parameters '{ "InfluxDBv3Core": { "queryFileLimit": 512, "dataFusionNumThreads": 16, "bufferMemLimitMb": 8192, "maxHttpRequestSize": 8388608 } }'
创建 InfluxDB 3 企业版参数组(3 节点配置):
aws timestream-influxdb create-db-parameter-group \ --name "my-influxdb3-enterprise-pg" \ --description "Custom parameter group for 3-node InfluxDB 3 Enterprise cluster" \ --parameters '{ "InfluxDBv3Enterprise": { "ingestQueryInstances": 2, "queryOnlyInstances": 0, "dedicatedCompactor": true, "compactionRowLimit": 1000000, "compactionCheckInterval": "30m", "dataFusionNumThreads": 32, "bufferMemLimitMb": 16384 } }'
创建 InfluxDB 3 企业版参数组(单节点配置):
aws timestream-influxdb create-db-parameter-group \ --name "my-influxdb3-enterprise-single-pg" \ --description "Custom parameter group for single-node InfluxDB 3 Enterprise" \ --parameters '{ "InfluxDBv3Enterprise": { "ingestQueryInstances": 1, "queryOnlyInstances": 0, "dedicatedCompactor": false, "dataFusionNumThreads": 16 } }'
使用服务定义的参数组
使用默认的核心版参数组创建集群:
aws timestream-influxdb create-db-cluster \ --name "my-core-cluster" \ --db-parameter-group-identifier "InfluxDBv3Core" \ --vpc-subnet-ids subnet-12345 subnet-67890 \ --vpc-security-group-ids sg-abcdef \ --db-instance-type db.influxIOIncluded.large \
使用默认的企业版参数组(3 节点)创建集群:
aws timestream-influxdb create-db-cluster \ --name "my-enterprise-cluster" \ --db-parameter-group-identifier "InfluxDBv3Enterprise" \ --vpc-subnet-ids subnet-12345 subnet-67890 \ --vpc-security-group-ids sg-abcdef \ --db-instance-type db.influxIOIncluded.xlarge \
使用单节点企业版参数组创建集群:
aws timestream-influxdb create-db-cluster \ --name "my-enterprise-single" \ --db-parameter-group-identifier "InfluxDBv3Enterprise1Node" \ --vpc-subnet-ids subnet-12345 subnet-67890 \ --vpc-security-group-ids sg-abcdef \ --db-instance-type db.influxIOIncluded.large \
列出并描述参数组
列出所有参数组:
aws timestream-influxdb list-db-parameter-groups
描述特定的参数组:
aws timestream-influxdb get-db-parameter-group \ --identifier "my-influxdb3-enterprise-pg"
服务定义的参数组参考
适用于 InfluxDB 的 Amazon Timestream 提供三个服务定义的参数组:
-
Influx C DBv3 ore:单节点 InfluxDB 3 Core 集群的默认配置。
-
Influx En DBv3 ter prise:3 节点 InfluxDB 3 Enterprise 集群(2 个 writer/reader 节点 + 1 个专用压缩机)的默认配置。
-
Influx DBv3 Enterprise1Node:单节点 InfluxDB 3 Enterprise 集群的默认配置(没有专用的压缩机)。
这些服务定义的参数组不可改变,可直接使用,也可作为模板,用于通过 --source-db-parameter-group-id 选项创建自定义参数组。