max_bytes_before_external_group_by
GROUP BY en memoria externa.
(Véase GROUP BY en memoria externa)
Valores posibles:
- Volumen máximo de RAM (en bytes) que puede usar una sola operación GROUP BY.
0—GROUP BYen memoria externa deshabilitado.
Si el uso de memoria durante las operaciones de GROUP BY supera este umbral en bytes,
active el modo de ‘aggregación externa’ (volcar datos a disco).El valor recomendado es la mitad de la memoria disponible del sistema.
max_bytes_before_external_join
join_algorithm es hash, parallel_hash, default o auto, el hash join se convertirá automáticamente en grace hash join para habilitar el volcado a disco cuando los datos del lado derecho superen esta cantidad de bytes. Cuando se establece en 0 (valor predeterminado), este umbral absoluto en bytes se desactiva, pero el volcado automático puede seguir produciéndose mediante max_bytes_ratio_before_external_join (cuyo valor predeterminado es 0.5); establezca ambos en 0 para desactivar por completo el volcado automático. Impide la optimización de read in order a través de join.
max_bytes_before_external_sort
ORDER BY en memoria externa. Consulte Detalles de implementación de ORDER BY
Si el uso de memoria durante la operación ORDER BY supera este umbral en bytes, se activa el modo de “ordenación externa” (volcado de datos a disco).
Valores posibles:
- Volumen máximo de RAM (en bytes) que puede usar una única operación ORDER BY. El valor recomendado es la mitad de la memoria disponible del sistema
0—ORDER BYen memoria externa deshabilitado.
max_bytes_before_remerge_sort
max_bytes_for_lazy_final
max_bytes_in_distinct
max_bytes_in_join
join_algorithm elegido; consulta
esa configuración para ver el comportamiento de cada algoritmo (spill, re-partition, switch o
throw/break según join_overflow_mode).
Valores posibles:
- Entero positivo.
- 0 — El control de memoria está deshabilitado.
max_bytes_in_set
max_bytes_ratio_before_external_group_by
GROUP BY. Una vez alcanzado este valor,
se utiliza memoria externa para la agregación.
Por ejemplo, si se establece en 0.6, GROUP BY permitirá usar el 60 % de la memoria disponible
(para server/user/merges) al inicio de la ejecución; a partir de ese momento,
empezará a usar agregación externa.
max_bytes_ratio_before_external_join
JOIN. Una vez alcanzada, el hash join se convertirá en grace hash join para volcar en disco los datos del lado derecho.
Por ejemplo, si se establece en 0.6, JOIN permitirá usar el 60% de la memoria disponible (para server/user/merges) para la tabla hash del lado derecho al comienzo de la ejecución; a partir de ese momento, comenzará a volcar datos a disco.
Si se establecen tanto max_bytes_before_external_join como max_bytes_ratio_before_external_join, se usa el umbral resultante más bajo. Si la proporción es 0, solo se aplica la configuración absoluta.
Solo tiene efecto cuando join_algorithm es hash, parallel_hash, default o auto y hay configurada una ruta de datos temporales.
max_bytes_ratio_before_external_sort
ORDER BY. Al alcanzarse, se utiliza la ordenación externa.
Por ejemplo, si se establece en 0.6, ORDER BY permitirá usar el 60% de la memoria disponible (para server/user/merges) al inicio de la ejecución; a partir de ese momento, empezará a usar ordenación externa.
Tenga en cuenta que max_bytes_before_external_sort sigue respetándose; el volcado a disco solo se realizará si el bloque de ordenación es mayor que max_bytes_before_external_sort.
max_bytes_to_read
max_bytes_to_read_leaf
max_bytes_to_read=150 fallará, ya que en total
serán 200 bytes. Una consulta con max_bytes_to_read_leaf=150 tendrá éxito, puesto que
los nodos hoja leerán como máximo 100 bytes.
La restricción se comprueba para cada fragmento de datos procesado.
Esta configuración es inestable con
prefer_localhost_replica=1.max_bytes_to_sort
sort_overflow_mode, que de forma predeterminada está establecido en throw.