Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Sugerencias
Las sugerencias para los análisis de SQL proporcionan directrices de optimización que guían las estrategias de ejecución de consultas AWS Clean Rooms, lo que te permite mejorar el rendimiento de las consultas y reducir los costes de procesamiento. Las sugerencias sugieren cómo el motor de análisis de Spark debe generar su plan de ejecución.
Sintaxis
SELECT /*+hint_name(parameters),hint_name(parameters) */column_listFROMtable_name;
Las sugerencias se incluyen en las consultas SQL mediante una sintaxis similar a la de un comentario y deben colocarse directamente después de la palabra clave SELECT.
Tipos de sugerencias compatibles
AWS Clean Rooms admite dos categorías de sugerencias: sugerencias de unión y sugerencias de partición.
Combinar varias sugerencias
Puede especificar varias sugerencias en una sola consulta separándolas con comas:
-- Combine join and partitioning hints SELECT /*+ BROADCAST(d), REPARTITION(8) */ e.name, d.dept_name FROM employees e JOIN departments d ON e.dept_id = d.id; -- Multiple join hints SELECT /*+ BROADCAST(s), MERGE(d) */ * FROM employees e JOIN students s ON e.id = s.id JOIN departments d ON e.dept_id = d.id; -- Hints within separate hint blocks within the same query SELECT /*+ REPARTITION(100) */ /*+ COALESCE(500) */ /*+ REPARTITION_BY_RANGE(3, c) */ * FROM t;
Consideraciones y limitaciones
-
Las sugerencias son sugerencias de optimización, no comandos. El optimizador de consultas puede ignorar las sugerencias en función de las restricciones de recursos o las condiciones de ejecución.
-
Las sugerencias se incrustan directamente en las cadenas de consulta SQL para CreateAnalysisTemplate y StartProtectedQuery APIs.
-
Las sugerencias deben colocarse directamente después de la palabra clave SELECT.
-
Los parámetros con nombre no se admiten con sugerencias y generarán una excepción.
-
Los nombres de las columnas de las sugerencias REPARTITION y REPARTITION_BY_RANGE deben existir en el esquema de entrada.
-
Los nombres de las columnas de las sugerencias de REBALANCE deben aparecer en la lista de resultados SELECT.
-
Los parámetros numéricos deben ser enteros positivos entre 1 y 2147483647. No se admiten anotaciones científicas como 1e1
-
Las sugerencias no se admiten en las consultas SQL de privacidad diferencial.
-
Los PySpark trabajos no admiten sugerencias para consultas SQL. Para proporcionar directrices para los planes de ejecución de un PySpark trabajo, utilice la API de marco de datos. Consulte los documentos de la DataFrame API de Apache Spark
para obtener más información.