BigQuery 고급 런타임 사용
BigQuery 고급 런타임은 사용자 작업이나 코드 변경 없이 분석 워크로드를 자동으로 가속화하도록 설계된 성능 향상 기능의 집합입니다. 이 문서에서는 향상된 벡터화 및 짧은 쿼리 최적화를 비롯한 이러한 성능 개선사항을 설명합니다.
역할 및 권한
구성 설정을 지정하는 데 필요한 권한을 얻으려면 관리자에게 프로젝트 또는 조직에 대한 BigQuery 관리자(roles/bigquery.admin
) IAM 역할을 부여해 달라고 요청하세요.
역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.
커스텀 역할이나 다른 사전 정의된 역할을 통해 필요한 권한을 얻을 수도 있습니다.
향상된 벡터화
벡터화된 실행은 CPU 캐시 크기에 맞춰 정렬된 블록의 데이터 열에서 작동하고 단일 명령, 다중 데이터(SIMD) 명령어를 사용하는 쿼리 처리 모델입니다. 향상된 벡터화는 BigQuery의 벡터화된 쿼리 실행을 쿼리 처리의 다음 측면으로 확장합니다.
- Capacitor 스토리지 형식 내에서 특수 데이터 인코딩을 활용하면 인코딩된 데이터에서 필터 평가 작업을 실행할 수 있습니다.
- 특수 인코딩은 쿼리 계획을 통해 전파되므로 인코딩된 상태에서 더 많은 데이터를 처리할 수 있습니다.
- 결정론적 함수와 상수 표현식을 평가하기 위해 표현식 폴딩을 구현하면 BigQuery에서 복잡한 조건자를 상수 값으로 단순화할 수 있습니다.
짧은 쿼리 최적화
BigQuery는 일반적으로 셔플 중간 레이어를 사용하여 분산 환경에서 쿼리를 실행합니다. 짧은 쿼리 최적화는 단일 단계로 실행할 수 있는 쿼리를 동적으로 식별하여 지연 시간과 슬롯 소비를 줄입니다. 쿼리가 단일 단계로 실행될 때 전문화된 인코딩을 더 효과적으로 사용할 수 있습니다. 이러한 최적화는 작업 시작, 유지보수, 결과 검색 지연 시간을 최소화하는 선택적 작업 생성 모드와 함께 사용할 때 가장 효과적입니다.
짧은 쿼리 최적화 사용 자격 요건은 동적이며 다음 요인의 영향을 받습니다.
- 예상 데이터 스캔 크기
- 필요한 데이터 이동량
- 쿼리 필터의 선택성
- 스토리지에 있는 데이터의 유형 및 물리적 레이아웃
- 전체 쿼리 구조
- 이전 쿼리 실행의 이전 통계
고급 런타임 사용 설정
2025년 9월 15일과 2026년 초 사이에 BigQuery는 모든 프로젝트의 기본 런타임으로 고급 런타임을 사용하기 시작합니다. 기존 프로젝트 또는 조직에서 지금 고급 런타임을 사용 설정하려면 ALTER PROJECT
또는 ALTER ORGANIZATION
문을 사용하여 기본 구성을 변경합니다. 문에서 query_runtime
인수를 'advanced'
로 설정합니다. 예를 들면 다음과 같습니다.
ALTER PROJECTPROJECT_NAME
SET OPTIONS ( `region-LOCATION
.query_runtime` = 'advanced' );
다음을 바꿉니다.
PROJECT_NAME
: 프로젝트 이름LOCATION
: 프로젝트의 위치
변경사항이 적용되는 데 몇 분 정도 걸릴 수 있습니다.
고급 런타임을 사용 설정하면 쿼리 작업을 만든 사용자에 관계없이 프로젝트 또는 조직의 적격 쿼리에서 고급 런타임을 사용합니다.