Snowflake Optima

Snowflake Optima는 워크로드 최적화에 지능적인 접근 방식을 적용하여 성능과 단순성이라는 Snowflake의 핵심 원칙을 확장합니다. Snowflake Optima는 수동으로 튜닝할 필요 없이 워크로드 패턴을 지속적으로 분석하고 가장 효과적인 전략을 자동으로 구현합니다. Snowflake Optima를 사용하면 추가 구성이나 유지 관리 없이도 쿼리가 더 빠르고 비용 효율적으로 실행됩니다. Snowflake Optima는 SQL 워크로드의 진화하는 특성을 예상하고 이에 적응함으로써 자동으로 성능을 향상합니다.

참고

  • Snowflake Optima는 모든 :doc:`/user-guide/intro-editions`에 포함되어 있습니다.

  • Snowflake Optima는 :doc:`Snowflake 2세대 표준 웨어하우스</user-guide/warehouses-gen2>`에서만 사용할 수 있습니다.

다음 섹션에서는 Snowflake Optima에 대해 더 자세히 설명합니다.

Optima Indexing

*Optima Indexing*은 워크로드를 자동으로 분석하여 백그라운드에서 인덱스를 생성하고 유지 관리하는 Snowflake Optima 기능입니다. Optima Indexing은 :doc:`검색 최적화 서비스</user-guide/search-optimization-service>`를 기준으로 구축됩니다.

Optima Indexing은 SQL 워크로드를 지속적으로 모니터링하여 테이블에 대한 반복적인 포인트 조회 쿼리와 같이 성능을 개선할 기회를 식별하고, 숨겨진 인덱스를 자동으로 생성하여 이러한 워크로드를 가속화합니다. 이러한 인덱스는 사용자 개입 없이 최선을 다해 작성 및 유지 관리됩니다.

Optima Indexing은 추가 비용이 없으며, Snowflake에 완전히 통합되어 있으므로 성능 향상을 위해 추가적인 구성이나 노력이 필요하지 않습니다.

보장된 성능이 필요한 특수 워크로드(예: 사이버 보안 산업의 위협 감지)의 경우에도 검색 최적화를 직접 적용할 수 있습니다. 이 옵션은 실시간에 가까운 결과가 중요한 시나리오에서 일관된 인덱스 최신성을 제공하고 궁극적으로 성능을 일관되게 유지합니다.

Optima Metadata

*Optima Metadata*는 사용자 입력 없이 워크로드를 자동으로 최적화하는 Snowflake Optima 기능입니다. Snowflake Optima는 쿼리 패턴을 분석하고, 정리에서 열의 비효율적인 사용을 식별하고, 이러한 쿼리를 최적화하기 위해 추가 메타데이터를 생성합니다. Snowflake 쿼리 엔진의 세부적인 작동 원리를 완벽히 알지 못하더라도 Optima를 통해 사용되지 않는 마이크로 파티션을 가능한 한 효과적으로 정리하도록 보장합니다.

예를 들어, Snowflake Optima가 최적화한 시나리오 중 하나는 WHERE 절에서 UPPERLOWER 함수를 사용하는 것입니다. 이러한 함수는 정리에 비효율적입니다. 따라서 Snowflake Optima는 쿼리 필터 조건자에서 이러한 함수가 자주 사용되는 것을 관찰하면 정리에 도움이 되는 메타데이터를 자동으로 생성합니다.

일반적으로, 가장 좋은 방법은 비효율적인 정리로 이어지는 시나리오를 피하는 것입니다. 그러나 이러한 상황이 발생하면 Snowflake Optima를 사용하여 성능을 개선할 수 있습니다. 즉, 기존의 모든 쿼리 성능 모범 사례를 계속 준수하고 Optima Metadata를 백그라운드에서 작동하여 놓쳤을 수 있는 최적화를 포착하는 기능으로 생각해야 합니다.

Snowflake Optima 사용 모니터링

Snowsight 의 Query History 아래에 있는 :ref:`쿼리 프로필 탭<label-snowsight_query_profile>`의 다음 창에서 Snowflake Optima 사용을 모니터링할 수 있습니다.

QUERY_INSIGHTS 뷰 를 쿼리하여 Snowflake Optima 사용을 모니터링할 수도 있습니다. 쿼리 인사이트에 대한 자세한 내용은 쿼리 인사이트를 사용하여 성능 개선하기 섹션을 참조하세요.

쿼리 인사이트 창

쿼리 인사이트 창에는 쿼리에 대해 감지된 각 유형의 인사이트가 표시되고 해당 인사이트 유형의 각 인스턴스가 나열됩니다.

  • 탐지된 조건에 대해 자세히 알아보려면 Query insights 창의 항목 옆에 있는 :ui:`View`를 선택합니다.

주어진 쿼리를 최적화하기 위해 Snowflake Optima를 사용한 경우, :ui:`Snowflake Optima used`가 나타나고 세부 정보가 표시됩니다.

다음 이미지는 Snowflake Optima가 사용되었음을 나타내는 Query insights 창의 예를 보여줍니다.

쿼리 프로필 탭의 쿼리 인사이트 창을 표시합니다.

통계 창

Snowflake Optima에 대한 정리 통계를 보려면 Query Profile 탭의 통계 창을 엽니다. Partitions pruned by Snowflake Optima 레이블이 지정된 행을 찾습니다. 이 행은 쿼리 실행 중에 건너뛴 파티션의 수를 보여주며, Snowflake Optima가 스캔되는 데이터의 양을 줄여 성능을 개선한 방법을 나타냅니다.

다음 이미지는 Snowflake Optima가 사용되었음을 나타내는 Statistics 창의 예를 보여줍니다.

쿼리 프로필 탭에 통계 창을 표시합니다.