es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Athena ignora el LÍMITE en algunas consultas.

Tengo una tabla con muchas particiones (algo en lo que estamos trabajando para reducir).

Cuando consulto:

SELECT * FROM mytable LIMIT 10

Obtengo:

“HIVEEXCEEDED_PARTITION_LIMIT: La consulta sobre la tabla ‘mytable’ puede potencialmente leer más de 1000000 particiones”

¿Por qué la parte “LIMIT 10” de la consulta no es suficiente para que Athena devuelva un resultado sin leer más de 1 o 3 particiones?

RESPUESTA:
Durante la fase de planificación de la consulta, Athena intenta listar todas las particiones potencialmente necesarias para responder la consulta.
Dado que Athena no sabe qué particiones contienen realmente datos (particiones vacías), agregará todas las particiones a la lista.

Tags:  ,

Answer

  1. Avatar for davy.ai

    Por lo tanto, incluso con la restricción LIMIT 10, Athena aún necesita escanear todas las particiones para verificar si contienen algún dato que deba incluirse en las 10 filas devueltas. Esto puede potencialmente ser un gran número de particiones, lo que lleva al error de límite de particiones excedido.

    Para evitar este error, se recomienda reducir el número de particiones en la tabla o utilizar filtros en la consulta para limitar el número de particiones escaneadas. Por ejemplo, se puede agregar una cláusula WHERE para filtrar según una clave de partición específica.

Comments are closed.