要获得与亚马逊 Timestream 类似的功能 LiveAnalytics,可以考虑适用于 InfluxDB 的亚马逊 Timestream。适用于 InfluxDB 的 Amazon Timestream 提供简化的数据摄取和个位数毫秒级的查询响应时间,以实现实时分析。点击此处了解更多信息。
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
num-datafusion-threads
| 默认 | 系统逻辑内核数(v 数CPUs) |
| 允许的值 | 整数:1 — 2,048 |
| 类别 | 查询执行 |
详细说明:
此参数设置 DataFusion 查询引擎用于并行查询执行的工作线程数。每个线程都可以独立处理查询分区,从而在单个查询中以及多个并发查询之间实现并行处理。这是对查询性能最有影响力的参数之一。
影响:
太低:查询按顺序执行或以最小的并行度执行,从而导致查询延迟时间过长,对于扫描大型数据集的分析查询尤其如此。CPU 资源仍未得到充分利用。
过高:线程争用过多、上下文切换开销和潜在的内存压力。争夺 CPU 时间的线程实际上会降低性能。还会减少可用于摄取和 WAL 操作的资源。
最佳:设置为可用 v 的数量CPUs。 如果您使用的是只读节点,则可以为每个 vCPU 分配多个线程,但我们建议根据真实世界的查询配置文件和负载进行广泛测试。
按实例大小划分的建议:
| 实例类型 | v CPUs | 建议值 | 理由 |
|---|---|---|---|
| db.influx.medium | 1 | 1 | 单个 vCPU — 不可能实现并行性 |
| db.influx.large | 2 | 2 | 同时使用 v CPUs |
| db.influx.xlarge | 4 | 4 | 匹配 vCPU 数量 |
| db.influx.2xlarge | 8 | 8 | 匹配 vCPU 数量 |
| db.influx.4xlarge | 16 | 16 | 匹配 vCPU 数量 |
| db.influx.8xlarge | 32 | 32 | 匹配 vCPU 数量 |
| db.influx.12xlarge | 48 | 48 | 匹配 vCPU 数量 |
| db.influx.16xlarge | 64 | 64 | 匹配 vCPU 数量 |
| db.influx.24xlarge | 96 | 96 | 匹配 vCPU 数量 |