内置资源池配置

要查看内置资源池的当前和默认配置,请分别查询系统表 RESOURCE_POOLS 和 RESOURCE_POOL_DEFAULTS。 以下部分提供了这些信息,并指出了哪些内置池参数可以使用 ALTER RESOURCE POOL 进行修改:

GENERAL

BLOBDATA

参数

设置

MEMORYSIZE 空/不能设置
MAXMEMORYSIZE

供所有资源池使用的最大内存,为以下之一:

MAXMEMORYSIZE { 'integer%'

'integer{K|M|G|T}' }

例如,如果您的节点有 64GB 内存,则将 MAXMEMORYSIZE 设置为 50% 会分配一半的可用内存。因此,所有资源池可用的最大内存量为 32GB。

默认值: 95%

MAXQUERYMEMORYSIZE

此池为处理任何查询分配的最大内存量:

MAXQUERYMEMORYSIZE { 'integer%'

'integer{K|M|G|T}' }

EXECUTIONPARALLELISM 默认值: AUTO
PRIORITY 默认值: 0
RUNTIMEPRIORITY 默认值:
RUNTIMEPRIORITYTHRESHOLD 默认值: 2
QUEUETIMEOUT 默认值: 00:05(分钟)
RUNTIMECAP

通过设置池中的查询可以执行的最大时间,可以防止查询失控。如果查询超出此设置,它会尝试级联到辅助池。

RUNTIMECAP { 'interval' | NONE }
  • interval:设置为 1 分钟或 100 秒的时间间隔,不应超过 1 年。

  • NONE (默认值):在此池中运行的查询没有时间限制。

PLANNEDCONCURRENCY

您希望对资源池运行的并发查询数,此整数 ≥ 4。如果设置为 AUTO(默认),Vertica 会在查询运行时自动设置 PLANNEDCONCURRENCY,选择这两个值中较小的值:

  • 核心数

  • 内存/2GB

默认值: AUTO

MAXCONCURRENCY

默认值: Empty

SINGLEINITIATOR

默认值: False。

CPUAFFINITYSET 默认值: Empty
CPUAFFINITYMODE 默认值: ANY
CASCADETO 默认值: Empty

DBD

JVM

METADATA

RECOVERY

参数

默认设置

MEMORYSIZE 0%
MAXMEMORYSIZE

通过从 GENERAL 池中借用内存,资源池可以增加的每个节点的最大大小:

MAXMEMORYSIZE {
  'integer%'
'integer{K|M|G|T}'

NONE }

  • integer%:占总内存的百分比

  • integer{K|M|G|T}:以千字节、兆字节、千兆字节或太字节为单位的内存量

  • NONE (默认值):无限制,池可以从 GENERAL 池中借用任意数量的可用内存。

MAXQUERYMEMORYSIZE 空/不能设置
EXECUTIONPARALLELISM AUTO
PRIORITY

以下几项之一:

  • 企业模式:107

  • Eon 模式:110

RUNTIMEPRIORITY
RUNTIMEPRIORITYTHRESHOLD 60
QUEUETIMEOUT 00:05(分钟)
RUNTIMECAP NONE
PLANNEDCONCURRENCY AUTO
MAXCONCURRENCY

默认情况下,设置如下:

(numberCores / 2) + 1

因此,对于具有四个内核的系统,MAXCONCURRENCY 的默认设置为 3。

SINGLEINITIATOR

True。

CPUAFFINITYSET 空/不能设置
CPUAFFINITYMODE ANY/无法设置
CASCADETO 空/不能设置

REFRESH

SYSQUERY

TM