Presto C++ 屬性參考

本節說明 Presto C++ 組態屬性。

以下不是所有組態和工作階段屬性的完整清單,也不包含任何特定於連接器的目錄組態屬性。如需目錄組態屬性的相關資訊,請參閱連接器

協調器屬性

將 Presto 協調器的以下組態屬性設定為與此程式碼區塊中顯示的完全一致,以啟用 Presto 協調器對 Presto C++ 工作節點的使用。

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

    將 TableWriter 輸出合併,然後再傳送到 TableFinishOperator。此屬性必須設定為 false

native-execution-enabled

  • 類型: boolean

  • 預設值: false

    由於行為與 Java 工作節點的底層差異,因此在執行 Presto C++ 工作節點時,必須使用此屬性。

optimizer.optimize-hash-generation

  • 類型: boolean

  • 預設值: true

    在執行 Presto C++ 工作節點時,將此屬性設定為 false。Velox 不支援最佳化的雜湊產生,而是使用具有不使用額外雜湊欄位的適應性執行階段最佳化的 HashTable。

regex-library

  • 類型: type

  • 允許的值: RE2J

  • 預設值: JONI

    目前只有 RE2J 受到 Velox 的支援。

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

  • 預設值: 硬體 CPU 數量

    每個工作使用的驅動程式數量。預設為硬體 CPU。