동적 테이블의 웨어하우스 사용량 이해하기¶
모든 동적 테이블에는 새로 고침을 실행하기 위한 웨어하우스가 필요합니다. 동적 테이블을 생성할 때 이 웨어하우스를 지정하면 Snowflake가 예약된 모든 새로 고침에 이 웨어하우스를 자동으로 사용합니다.
동적 테이블의 웨어하우스 구성에 대한 지침은 웨어하우스 구성 조정 섹션을 참조하세요.
웨어하우스 크기가 새로 고침 성능에 미치는 영향¶
웨어하우스가 크다고 해서 항상 비용이 더 많은 것은 아닙니다. 대부분의 경우 웨어하우스 크기를 두 배로 늘리면 초당 비용은 두 배로 증가하지만 런타임은 절반으로 줄어듭니다. 그 결과 새로 고침 속도가 빨라지면 총비용이 비슷해집니다. 웨어하우스가 클수록 다음 두 가지 방법으로 성능이 향상됩니다.
메모리: 새로 고침에 웨어하우스가 제공하는 메모리보다 더 많은 메모리가 필요하면 데이터가 로컬 저장소로 유출됩니다. 이러한 유출로 인해 총 컴퓨팅 작업이 증가하고 새로 고침 프로세스가 느려집니다. 웨어하우스가 클수록 메모리가 더 많고 유출을 완전히 방지할 수 있습니다.
병렬 처리: 웨어하우스가 클수록 더 많은 작업을 동시에 실행합니다. 가장 큰 이점은 여러 파티션에서 대량의 데이터를 스캔하는 새로 고침입니다. 작은 데이터 세트와 순차적 작업에 더 큰 웨어하우스를 효율성이 떨어집니다.
웨어하우스 크기 조정에 대한 자세한 내용은 웨어하우스 크기 섹션을 참조하세요.
이중 웨어하우스 지원¶
동적 테이블은 다양한 새로 고침 유형에 대해 별도의 웨어하우스를 지원합니다.
WAREHOUSE: 정기적인 증분 새로 고침을 실행합니다.
INITIALIZATION_WAREHOUSE: 전체 데이터 스캔을 수행하고 일반적으로 리소스를 더 많이 사용하는 :ref:`초기화 및 전체 새로 고침 <label-dynamic_tables_initialization>`을 실행합니다.
이러한 분리를 통해 정기적인 증분 새로 고침 중에 해당 용량에 대한 비용을 지불하지 않고도 리소스 집약적인 초기화에 더 큰 웨어하우스를 사용할 수 있습니다. 이중 웨어하우스 지원은 다음과 같은 일반적인 시나리오에서 유용합니다.
보조 동적 테이블을 기본 테이블로 승격하고 테이블을 다시 초기화해야 할 때 더 빠른 복구를 활성화하려고 합니다.
엄격한 RTO 및 RPO 요구 사항을 충족해야 하지만, 일상적인 작업의 비용을 늘리고 싶지는 않습니다.
INITIALIZATION_WAREHOUSE 매개 변수를 설정하지 않은 경우 Snowflake는 WAREHOUSE에서 지정한 웨어하우스에서 모든 새로 고침을 실행합니다.