Snowpipeコスト¶
Snowpipeのサーバーレスコンピューティングモデルを使用すると、ユーザーは仮想ウェアハウスを管理することなく、あらゆるサイズのロードを開始できます。代わりに、Snowflakeはコンピューティングリソースを提供および管理し、現在のSnowpipeのロードに基づいて容量を自動的に拡大または縮小します。
重要
以前は、Snowpipeのコストには2つの要素があり、データのロードに使用される実際のコンピューティングリソース(1秒あたり/コアごとに測定)と、1,000ファイルごとの請求に基づいていました。
今後、Snowpipeの取り込みは、新しい簡素化されたモデル(GB ごとに固定されたクレジット金額)で請求される予定です。この大幅な変更は、以前の価格設定モデルと比較してデータのロードにかかる費用を予測しやすくし、コスト見積もりを簡素化することを目的としています。
CSV、JSON、XML などのテキストファイルの場合、非圧縮サイズに基づいて課金されます。Parquet、Avro、ORC などのバイナリファイルの場合、圧縮に関係なく、観察されたサイズに基づいて課金されます。
新しい価格設定モデルは、2025年8月1日よりすべてのBusiness Criticalと VPS エディションアカウントに自動的に適用されます。また、近い将来、すべてのEnterpriseおよびStandardエディションでも有効になります。それまでは、EnterpriseおよびStandardエディションは既存の価格設定モデルに従って請求されます。
詳細については、 Snowflakeサービス利用表 をご参照ください。
リソースの消費と管理のオーバーヘッド¶
以前の価格設定モデルでは、Snowflakeは、Snowpipeがデータファイルをアクティブにキューに入れて処理するため、アカウント内のすべてのパイプに対するロードのリソース消費を、1秒あたり/コアごとの細分性で追跡します。 コアごと とは、計算サーバーの物理的な CPU コアを指します。記録された使用率は、なじみのあるSnowflakeクレジットに変換され、アカウントの請求書に記載されます。
注釈
マルチスレッドクライアントアプリケーションを使用すると、データファイルを並行して送信できます。これにより、追加のサーバーが起動され、データがより短時間でロードされます。ただし、必要となる実際の全体的な計算時間は、シングルスレッドクライアントアプリケーションを使用する場合と同じで、より多くの内部Snowpipeサーバーに分散されるということです。
データファイルのサイズとステージングの頻度に関する決定は、Snowpipeのコストとパフォーマンスに影響します。推奨されるベストプラクティスについては、 連続データロード(Snowpipeなど)とファイルサイズ をご参照ください。
リソースの消費に加えて、オーバーヘッドもSnowpipeに請求される使用コストに含まれます。このオーバーヘッドは、イベント通知または REST API 呼び出しによってデータがロードされるかどうかに関係なく請求されます。このオーバーヘッド料金は、請求明細書にSnowpipe料金として表示されます。
Snowpipeの料金の見積もり¶
Snowpipeの場合は GB ごとに新しい固定クレジット金額が請求されるため、Snowpipeの料金の見積もりは簡単です。予想されるデータ量を使って予想されるコストを簡単に計算できます。CSV、JSON、XML などのテキストファイルは非圧縮サイズに基づいて請求されるため、テキストファイルの圧縮率を知る必要があります。それから、関連するアカウント使用状況ビューでBILLED_BYTES 列を調べることで、実際の使用状況に照らし合わせて計算を確認できます。この BILLED_BYTES 列は今後の2025_05 BCR バンドルで導入されます。
特定のワークロードに対する新しいモデルでの実際のクレジット消費を理解するために、典型的なロードセットを実行して実験するとをお勧めします。
データロードの履歴とコストの表示¶
アカウント管理者(ACCOUNTADMIN ロールを持つユーザー)または MONITOR USAGE グローバル権限が付与されたロールを持つユーザーは、 Snowsight、 Classic Console、または SQL を使用して、指定された日付範囲内でSnowflakeアカウントに請求されるクレジットを表示できます。
データ圧縮とメンテナンスの過程で、Snowflakeクレジットが消費されることがあります。たとえば、返された結果が、0 BYTES_INSERTED と0 FILES_INSERTED でクレジットを消費したことを示す場合があります。これは、データがロードされてはいないものの、データの圧縮とメンテナンスのプロセスでクレジットが消費されていることを意味します。
アカウントのSnowpipeデータのロードに対して請求されたクレジットを表示するには、
- Snowsight:
Admin » Cost Management を選択します。
- Classic Console:
Account
» Billing & Usage を選択します。
Snowpipeの使用率は、特別なSnowflake提供の
SNOWPIPE という名前のウェアハウスとして表示されます。
- SQL:
次のいずれかをクエリします。
PIPE_USAGE_HISTORY テーブル関数(Snowflake Information Schema 内)。
PIPE_USAGE_HISTORY ビュー (Account Usage 内)。
PIPE_USAGE_HISTORY ビューに対して次のクエリを実行できます。また、
BYTES_BILLED
列を使用して、量に基づくコスト確認するクエリを実行することもできます。注釈
BYTES_BILLED
列にアクセスするには、今後の2025_05 BCR を有効にする必要があります。クエリ:Snowpipeのコスト履歴(日別、オブジェクト別)
次のクエリは、パイプの完全なリストと、過去30日間にサービスを介して消費したクレジット量を日別に表示します。クレジットの消費に不規則性があるか、一貫して消費が多い場合は、調査すべき潜在的な問題があることを示しています。
SELECT TO_DATE(start_time) AS date, pipe_name, SUM(credits_used) AS credits_used, SUM(bytes_billed) AS bytes_billed_total -- Added for new pricing verification FROM snowflake.account_usage.pipe_usage_history WHERE start_time >= DATEADD(month,-1,CURRENT_TIMESTAMP()) GROUP BY 1,2 ORDER BY 3 DESC;クエリ:Snowpipe履歴およびm日平均
次のクエリは、Snowpipeによって消費された1日の平均クレジットを、前年の週ごとにグループ化して表示します。このクエリは、1年間の日次平均の異常を特定するのに役立ちます。これにより、消費の急増や予期しない変化を調査することができます。
WITH credits_by_day AS ( SELECT TO_DATE(start_time) AS date, SUM(credits_used) AS credits_used, SUM(bytes_billed) AS bytes_billed_total -- Added for new pricing verification FROM snowflake.account_usage.pipe_usage_history WHERE start_time >= DATEADD(year,-1,CURRENT_TIMESTAMP()) GROUP BY 1 ORDER BY 2 DESC) SELECT DATE_TRUNC('week',date), AVG(credits_used) AS avg_daily_credits, AVG(bytes_billed_total) AS avg_daily_bytes_billed -- Added for new pricing verification FROM credits_by_day GROUP BY 1 ORDER BY 1;
注釈
リソースモニター は、仮想ウェアハウスのクレジット使用状況を制御します。ただし、これらを使用して、 SNOWPIPE ウェアハウスなど、Snowflake提供のウェアハウスのクレジット使用状況を制御することはできません。