Propriétés de configuration pourPresto (Java )- nœuds coordinateur et travailleur

Vous pouvez personnaliser les propriétés de configuration du coordinateur et du travailleur via une API pourPresto (Java ).

Propriétés de configuration pour Presto (Java)- nœuds coordinateur et travailleur
Nom de propriété Type Validation ajoutée
experimental.optimized-repartitioning Booléen True ou false
experimental.reserved-pool-enabled Booléen True ou false
fragment-result-cache.enabled Booléen True ou false
fragment-result-cache.max-cached-entries Entier 1000000
fragment-result-cache.base-directory Chaîne file:///mnt/tmpfs/fragment
fragment-result-cache.cache-ttl Chaîne 24h
heap_dump_on_exceeded_memory_limit.enabled Booléen True ou false
heap_dump_on_exceeded_memory_limit.file_directory Chaîne Toute chaîne
heap_dump_on_exceeded_memory_limit.max.number Entier Limite{1, 1000}
heap_dump_on_exceeded_memory_limit.max.size Entier Limite{1, 1000}
memory.heap-headroom-per-node Chaîne Limite{1, 1e9} ; les valeurs prises en charge sont des nombres avec ou sans unités TB, MB, GB, B, KB
node-scheduler.include-coordinator Booléen True ou false
query.execution-policy Chaîne Toute chaîne
query.low-memory-killer.policy Chaîne Toute chaîne
query.max-memory Chaîne Limite{1, 1e13} ; les valeurs prises en charge sont des nombres avec ou sans unités TB, MB, GB, B, KB
query.max-memory-per-node Chaîne Limite{1, 1e13} ; les valeurs prises en charge sont des nombres avec ou sans unités TB, MB, GB, B, KB
query.max-stage-count Entier Limite{1, 1000}
query.max-total-memory-per-node Chaîne Limite{1, 1e13} ; les valeurs prises en charge sont des nombres avec ou sans unités TB, MB, GB, B, KB
query.min-expire-age Chaîne Limite{1, 1e13} ; les valeurs prises en charge sont des nombres avec ou sans unités m, s, ms, h
query.stage-count-warning-threshold Entier Limite{1, 1000}
task.concurrency Entier Limite{1, 1000}
task.max-drivers-per-task Entier Limite{1, 100}
join-distribution-type Chaîne La valeur doit être automatique ou diffusée ou partitionnée
exchange.client-threads Entier Limite{1, 1000}
exchange.http-client.max-connections Entier Limite{1, 10000}
exchange.http-client.max-connections-per-server Entier Limite{1, 100000}
http-server.log.max-size Chaîne Limite{1, 1e13} ; les valeurs prises en charge sont des nombres avec ou sans unités TB, MB, GB, B, KB
http-server.log.max-history Entier Limite{1, 100}
http-server.threads.max Entier Limite{1, 1000}
join-max-broadcast-table-size Chaîne Limite{1, 1e13} ; les valeurs prises en charge sont des nombres avec ou sans unités TB, MB, GB, B, KB
log.max-history Entier Limite{1, 100}
log.max-size Chaîne Limite{1, 1e13} ; les valeurs prises en charge sont des nombres avec ou sans unités TB, MB, GB, B, KB
node-scheduler.max-pending-splits-per-task Entier Limite{1, 3000}
node-scheduler.max-splits-per-node Entier Limite{1, 3000}
optimize-nulls-in-join Booléen True ou false
optimizer.default-filter-factor-enabled Booléen True ou false
optimizer.exploit-constraints Booléen True ou false
optimizer.prefer-partial-aggregation Booléen True ou false
query.client.timeout Chaîne Limite{1, 1e13} ; les valeurs prises en charge sont des nombres avec ou sans unités m, s, ms, h
query.max-execution-time Chaîne Limite{1, 1e13} ; les valeurs prises en charge sont des nombres avec ou sans unités m, s, ms, h
query.max-history Entier Limite{1, 100}
query.max-total-memory Chaîne Limite{1, 1e13} ; les valeurs prises en charge sont des nombres avec ou sans unités To, Mo, Go
query.min-schedule-split-batch-size Chaîne Limite{1, 1e13} ; les valeurs prises en charge sont des nombres avec ou sans unités TB, MB, GB, B, KB
query.max-length Entier Limite{1, 1000000}
scale-writers Booléen True ou false
shutdown.grace-period Chaîne Limite{1, 1e13} ; les valeurs prises en charge sont des nombres avec ou sans unités m, s, ms, h
sink.max-buffer-size Chaîne Limite{1, 1e13} ; les valeurs prises en charge sont des nombres avec ou sans unités TB, MB, GB, B, KB
experimental.max-revocable-memory-per-node Chaîne Limite{1, 1e13} ; les valeurs prises en charge sont des nombres avec ou sans unités TB, MB, GB, B, KB
experimental.max-spill-per-node Chaîne Limite{1, 1e13} ; les valeurs prises en charge sont des nombres avec ou sans unités TB, MB, GB, B, KB
experimental.pushdown-dereference-enabled Booléen True ou false
experimental.pushdown-subfields-enabled Booléen True ou false
experimental.query-max-spill-per-node Chaîne Limite{1, 1e13} ; les valeurs prises en charge sont des nombres avec ou sans unités TB, MB, GB, B, KB
experimental.spiller-max-used-space-threshold Flottant Flotteur 64
experimental.spiller-spill-path Chaîne Toute chaîne
http-server.max-request-header-size Chaîne Limite {1, 1e13} ; les valeurs prises en charge sont des nombres avec ou sans unités TB, MB, GB, B, kB
http-server.max-response-header-size Chaîne Limite {1, 1e13} ; les valeurs prises en charge sont des nombres avec ou sans unités TB, MB, GB, B, kB
experimental.internal-communication.max-task-update-size Chaîne Limite{1, 1e13} ; les valeurs prises en charge sont des nombres avec ou sans unités TB, MB, GB, B, KB
offset-clause-enabled Booléen True ou false

Pour activer le cache des fragments, vous devez mettre en place un environnement où le cache est activé. Pour le mettre en place, insérez les propriétés suivantes dans /opt/presto/etc/config.properties.

fragment-result-cache.enabled: true
fragment-result-cache.base-directory: file:///mnt/tmpfs/fragment
fragment-result-cache.max-cached-entries: 1000000
fragment-result-cache.cache-ttl: 24h

Le chemin de montage /mnt/tmpfs/fragment est disponible par défaut dans un environnement doté d'un cache et sur lequel le volume du système est monté.