Een simpele BigQuery-query `SELECT country, state, city FROM mytable GROUP BY country` is altijd traag. Het queryplan toont veel leesactiviteit in Stage:1. Wat is de meest waarschijnlijke oorzaak?
Kies een antwoord
Tik op een optie om je antwoord te controleren.
Correct antwoord: De meeste rijen hebben dezelfde `country`-waarde, wat data skew veroorzaakt.
Waarom dit het antwoord is
De query SELECT country, state, city FROM mytable GROUP BY country zal een foutmelding geven omdat state en city niet zijn opgenomen in de GROUP BY-clausule of geaggregeerd worden. Als de query echter SELECT country, COUNT() FROM mytable GROUP BY country was, dan is de meest waarschijnlijke oorzaak van traagheid en veel leesactiviteit in Stage:1 (de shuffle-fase) data skew. Dit betekent dat een groot deel van de rijen dezelfde country-waarde heeft. BigQuery moet al deze rijen naar één of enkele workers sturen voor aggregatie, wat een bottleneck veroorzaakt. Te veel gelijktijdige gebruikersquery's kan traagheid veroorzaken, maar verklaart niet de specifieke leesactiviteit in Stage:1 voor deze query. Te veel partities is onwaarschijnlijk de oorzaak, aangezien BigQuery efficiënt omgaat met partities. NULL-waarden in state of city zijn irrelevant voor de GROUP BY country-bewerking.
Slaag voor je examen — zonder eindeloos zoeken naar antwoorden
Krijg elke geverifieerde vraag en uitleg voor dit examen op één plek, en bespaar uren voorbereiding. Meer dan 1.000 certificeringen · Meer dan 20 talen · gratis om te beginnen.
Slaag sneller voor je examen → Geen kaart nodig