0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Snowflakeにてクエリ実行時にキャッシュを利用しないようにパラメータを設定する方法

Posted at

概要

Snwoflakeにて、Snowflakeのキャッシュ機能を利用しないように設定する手順を紹介します。
他ツールからのパフォーマンス検証を実施するために実施しました。

本手順では、サーバーのパラメータを変更してしまうため、本番環境には設定しないように注意してください。

手順

1. 現在のキャッシュのパラメータ設定("USE_CACHED_RESULT")が、"true"となっていることを確認

SHOW PARAMETERS LIKE '%USE_CACHED_RESULT%'

参考リンク:パラメーター - USE_CACHED_RESULT

image.png

2. キャッシュのパラメータ設定("USE_CACHED_RESULT")の設定を、"false"に変更

use role accountadmin;
ALTER ACCOUNT SET USE_CACHED_RESULT = false;

image.png

3. 現在のキャッシュのパラメータ設定("USE_CACHED_RESULT")が、"false"となっていることを確認

SHOW PARAMETERS LIKE '%USE_CACHED_RESULT%'

image.png

設定の確認

"History"にて、設定前後に同じクエリを複数回実行することで、キャッシュを利用しているかを確認できます。

image.png

/* TPC_H Query 9 - Product Type Profit Measure */
USE "SNOWFLAKE_SAMPLE_DATA"."TPCH_SF10";

SELECT
    nation
    ,o_year
    ,SUM(amount) AS sum_profit
FROM
    (
        SELECT
            n_name AS nation
            ,YEAR(o_orderdate) AS o_year
            ,l_extendedprice * (1 - l_discount) - ps_supplycost * l_quantity AS amount
        FROM
            part
            ,supplier
            ,lineitem
            ,partsupp
            ,orders
            ,nation
        WHERE
            s_suppkey = l_suppkey
        AND ps_suppkey = l_suppkey
        AND ps_partkey = l_partkey
        AND p_partkey = l_partkey
        AND o_orderkey = l_orderkey
        AND s_nationkey = n_nationkey
        AND p_name LIKE '%green%'
    ) AS profit
GROUP BY
    nation
    ,o_year
ORDER BY
    nation
    ,o_year DESC
;

参考リンク

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?