Una consulta simple de BigQuery SELECT country, state, city FROM mytable GROUP BY country siempre es lenta. El plan de consulta muestra una lectura pesada en Stage:1. ¿Cuál es la causa más probable?
Elige una respuesta
Toca una opción para verificar tu respuesta.
Respuesta correcta: La mayoría de las filas tienen el mismo valor de país, lo que provoca una asimetría de datos.
Por qué esta es la respuesta
La causa más probable es la asimetría de datos, donde la mayoría de las filas tienen el mismo valor para la columna country. En BigQuery, las operaciones GROUP BY se distribuyen entre muchos workers. Si un valor de clave (en este caso, country) aparece con mucha más frecuencia que otros, un solo worker o un pequeño subconjunto de workers terminará procesando una cantidad desproporcionada de datos para ese valor. Esto crea un cuello de botella, ralentizando todo el Stage:1 (que a menudo implica la lectura y la preparación de datos para la agregación) y, por ende, toda la consulta. Las otras opciones son menos probables: Demasiadas consultas concurrentes podrían ralentizar el sistema en general, pero no explicarían una lectura pesada específica en Stage:1 para esta consulta. Demasiadas particiones en sí mismas no causan lentitud en un GROUP BY simple si la lectura de datos es eficiente. Los valores NULL en state o city no impactan directamente el rendimiento de un GROUP BY en country.
Aprueba tu examen — sin la interminable búsqueda de respuestas
Obtén todas las preguntas y explicaciones verificadas para este examen en un solo lugar, y ahorra horas de preparación. Más de 1,000 certificaciones · Más de 20 idiomas · Empieza gratis.
Aprueba tu examen más rápido → No se requiere tarjeta