SELECT. Para ilustrarlo, agreguemos algunos datos a una tabla de ClickHouse:
EXPLAIN correspondiente. Estos pasos se resumen en el siguiente gráfico:
Veamos cada elemento en acción durante la ejecución de la consulta. Vamos a tomar algunas consultas y luego examinarlas mediante la sentencia EXPLAIN.
Analizador sintáctico
El objetivo de un analizador sintáctico es transformar el texto de la consulta en un AST (árbol de sintaxis abstracta). Este paso se puede visualizar conEXPLAIN AST:
Analizador
El analizador está habilitado de forma predeterminada desde ClickHouse24.3 y es el único análisis de consultas desde la versión 26.9, cuando enable_analyzer pasó a ser una configuración obsoleta que ya no puede deshabilitarse.
El analizador es un componente fundamental en las etapas del procesamiento de consultas y podría tener un impacto negativo en algunas consultas: consulte las incompatibilidades conocidas para saber qué consultas deben actualizarse por ello.
Planificador
EXPLAIN PLAN o EXPLAIN para ver el plan de consulta (EXPLAIN ejecutará EXPLAIN PLAN).
minimum_date, maximum_date y percentage), pero quizá también quieras ver los detalles de todas las acciones que deben ejecutarse. Puedes hacerlo estableciendo actions=1.
Pipeline de consulta
graph que podemos establecer en 1 y especificar el formato de salida como TSV:
x seguida de un número corresponde a la cantidad de entradas/salidas que se están utilizando. Si no desea verlos en formato compacto, siempre puede añadir compact=0:
EXPLAIN:
Ejecutor
SELECT, un INSERT o un INSERT SELECT.