Presto C++ 属性参考¶
本节介绍 Presto C++ 配置属性。
以下并非所有配置和会话属性的完整列表,也不包括任何连接器特定的目录配置属性。有关目录配置属性的信息,请参见 连接器.
协调器属性¶
为了使 Presto 协调器能够使用 Presto C++ 工作器,请按照此代码块中所示的顺序为 Presto 协调器设置以下配置属性。
native-execution-enabled=true
optimizer.optimize-hash-generation=false
regex-library=RE2J
use-alternative-function-signatures=true
experimental.table-writer-merge-operator-enabled=false
这些 Presto 协调器配置属性在此处按字母顺序进行了描述。
experimental.table-writer-merge-operator-enabled
¶
类型:
boolean
默认值:
true
在发送到 TableFinishOperator 之前合并 TableWriter 输出。此属性必须设置为
false
。
native-execution-enabled
¶
类型:
boolean
默认值:
false
由于 Java 工作器和 C++ 工作器底层行为存在差异,运行 Presto C++ 工作器时需要此属性。
optimizer.optimize-hash-generation
¶
类型:
boolean
默认值:
true
运行 Presto C++ 工作器时,将此属性设置为
false
。Velox 不支持优化的哈希生成,而是使用带有自适应运行时优化的哈希表,该表不使用额外的哈希字段。
regex-library
¶
类型:
type
允许的值:
RE2J
默认值:
JONI
Velox 目前只支持 RE2J。
use-alternative-function-signatures
¶
类型:
boolean
默认值:
false
某些聚合函数使用通用的中间类型,这些类型与 Velox 聚合函数中间类型不兼容。一个示例函数是
approx_distinct
,其中间类型为VARBINARY
。此属性为内置聚合函数提供与 Velox 兼容的函数签名。
工作器属性¶
Presto C++ 工作器的配置属性在此处按字母顺序进行了描述。
async-data-cache-enabled
¶
类型:
boolean
默认值:
true
内存中缓存。
query.max-memory-per-node
¶
类型:
integer
默认值:
4GB
每个查询的最大内存使用量。
query-memory-gb
¶
类型:
integer
默认值:
38
指定工作器节点上所有查询可以使用的总内存量(以 GB 为单位)。系统使用(如磁盘溢出和缓存预取)的内存不计入其中。
query-reserved-memory-gb
¶
类型:
integer
默认值:
4
指定工作器节点上为查询保留的总内存量(以 GB 为单位)。如果满足以下两个条件,则查询才能从该保留空间分配内存:1)
query-memory-gb
中的非保留空间已用完;2)尝试获取的内存量小于memory-pool-reserved-capacity
。
runtime-metrics-collection-enabled
¶
类型:
boolean
默认值:
false
启用工作器级指标的收集。
system-memory-gb
¶
类型:
integer
默认值:
40
通过内部内存分配器强制执行的内存分配限制。它包含两个部分:1)由查询使用的内存,如
query-memory-gb
中所指定;2)由系统使用的内存,如磁盘溢出和缓存预取。将
system-memory-gb
设置为部署的可用机器内存。
task.max-drivers-per-task
¶
类型:
integer
默认值:
number of hardware CPUs
每个任务要使用的驱动程序数量。默认为硬件 CPU 数量。