간단한 BigQuery 쿼리인 SELECT country, state, city FROM mytable GROUP BY country가 항상 느립니다. 쿼리 계획에서 Stage:1에 많은 읽기 작업이 표시됩니다. 가장 가능성 높은 원인은 무엇입니까?
정답 선택
옵션을 탭하여 정답을 확인하세요.
정답: 대부분의 행이 동일한 country 값을 가지므로 데이터 편향이 발생합니다..
이것이 정답인 이유
정답은 "대부분의 행이 동일한 country 값을 가지므로 데이터 편향이 발생합니다"입니다. BigQuery는 쿼리 성능을 최적화하기 위해 데이터를 분할하고 병렬 처리합니다. GROUP BY country 쿼리에서 대부분의 행이 동일한 country 값을 가지면, BigQuery는 해당 country 값을 처리하는 데 필요한 리소스를 한정된 수의 슬롯에 집중하게 됩니다. 이는 데이터 편향(data skew)으로 이어져, 특정 슬롯에 과도한 작업이 할당되고 다른 슬롯은 유휴 상태가 되어 전체 쿼리 속도가 느려집니다. 쿼리 계획에서 Stage:1에 많은 읽기 작업이 표시되는 것은 이러한 데이터 편향으로 인해 특정 파티션이나 슬롯에 부하가 집중되었음을 나타냅니다. 다른 옵션들은 다음과 같은 이유로 정답이 아닙니다. "동시 사용자 쿼리가 너무 많습니다": 동시 사용자 쿼리가 많으면 전체 시스템 성능에 영향을 줄 수 있지만, 특정 쿼리의 Stage:1 읽기 작업이 많아지는 직접적인 원인은 아닙니다. "테이블에 파티션이 너무 많습니다": 파티션이 너무 많으면 메타데이터 관리 오버헤드가 발생할 수 있지만, GROUP BY 쿼리에서 데이터 편향만큼 직접적으로 Stage:1 읽기 작업 증가를 유발하지는 않습니다. "state 또는 city 컬럼 중 하나 또는 둘 다에 NULL 값이 많습니다": GROUP BY country 쿼리에서는 state나 city 컬럼의 NULL 값 여부가 쿼리 성능에 직접적인 영향을 주지 않습니다.
끝없는 정답 찾기 없이 시험 합격
이 시험에 대한 모든 검증된 문제와 설명을 한곳에서 얻고, 준비 시간을 몇 시간 절약하세요. 1,000개 이상의 자격증 · 20개 이상의 언어 · 무료로 시작.
더 빠르게 시험 합격 → 카드 필요 없음