Snowflake Knowledge - INSIGHT LAB

【小ネタ】Snowflakeのコスト見積サービスを2つ試して、比較してみた

作成者: Osyou|2023年4月24日

1. 本記事の目的

Snowflakeの導入を検討されるお客様が必ずといっていいほど気にするのが「利用コスト」です。弊社では、導入検討されているお客様に個別に見積相談を実施しております。 しかしながら、個別に問い合わせなどすることなく、とにかくまずは簡単に見積がしたい!という方もいらっしゃるかと思います。 そこで、この記事ではWeb公開されているSnowflakeのコスト見積サービス(Arctica, DataDrive)を実地検証してみましたので、ご紹介いたします。

※ご紹介するツールは2つとも、Snowflakeの非公式ツールであるため、正確な見積が必要な場合は、ぜひお問い合わせください!

2. 対象サービスとまとめ

2.1 対象サービス

今回は以下2つのサービスを対象とします。

2.2 まとめ

先に2つのサービスについて筆者が感じた特徴、長所と短所、使い分けの目安などのまとめを示します。

2.2.1 特徴と長所・短所

  • 特徴
    • DataDrive
      • 簡単な入力で見積が可能
      • Snowflakeの仕様を勉強中の方向け
    • Arctica
      • ウェアハウスのサイズや、起動時間などを細かく設定可能
      • 複数のワークロードにも対応可能
      • Snowflakeの仕様をある程度理解できている方向け
  • 長所と短所
DataDrive Arctica
長所

・いくつかの質問に沿った簡単な入力で見積を実施してくれる

・クラウドプロバイダーや、リージョンまで考慮にいれた見積を実施してくれる(ただし、東京リージョンは選択肢にない

複数のワークロードを設定可能

・細かい設定項目が多いため、ウェアハウスのサイズや起動時間が正確であれば、ある程度正確な見積が期待

・マルチクラスターの数なども考慮に入れることができる

短所

1つのワークロードのみ設定できない

仮想ウェアハウスのサイズ指定などはできない

・ロードの実行想定の最小単位が1日1回となっているため、週に1回とかの想定ができない<br>・ページ上での操作が多少重たい。。

・基本的にAWSのUS -EASTリージョンを想定した見積になっている

・ある程度Snowflakeの仕様を理解していることを前提とした入力になっている(メリットでもある)

2.2.2 それぞれの使い分け

それぞれの使い分けをまとめると、以下のような感じだと思います。 (個人の主観です、悪しからず)

  • 細かい要件は不明だが、ざっくりと見積りしたい場合 →DataDriveをお勧めします。
  • ある程度ークロード(利用ケース、ウェアハウスの起動時間、マルチクラスターの数等)が想定できている段階で、見積したい場合 →Arcticaをお勧めします。

3. コスト見積の前提

前提として、Snowflakeのコストは主に以下3つの要素から構成されています。

  • ストレージの使用量
  • 仮想ウェアハウス(コンピューティングリソース)の起動時間
  • クレジット単価(エディション・クラウドサービス・リージョンにより異なる)

Snowpipeなどサーバーレス機能や、リージョン間のデータ転送なども課金されますが、「概算」レベルでは、上記3つが大きなポイントとなります。

これから紹介する2つのサービスは、どちらも上記の3つの項目を入力していき、概算見積をするイメージになります。

4. DataDrive

DataDriveの詳細な利用方法を紹介いたします。

4.1 DataDriveの概要

  • DataDrive社のホームページに概算ページへのリンクが存在します。
  • DataDrive社は、データ可視化やデータサイエンスを生業とする会社のようで、「Tableau」、「Dataiku」、「Snowflake」とパートナーシップを結んでいるようです。
  • こちらのツールも「非公式」ツールです。あくまでも概算レベルでの見積になります。

4.2 DataDriveの利用方法

4.2.1 ページアクセス

それでは使ってみます。まずは、見積用のページにアクセスしてみます。 全体像は以下のような1枚シートになっています。

なんと、「Tableau Public」で公開されているみたいですね!とても見やすいです。 BIツール素人の私は、こんな使い方もできるんだ!と感動しました。

4.2.2 クレジット単価の設定

まずは、エディション、クラウドプロバイダー、リージョンを入力します。ここの情報はクレジット単価の情報に使われているのかと思います。

注意点となりますが、東京リージョンは選択肢にありません! ここは、ツールで算出された見積に対して、リージョンの単価の違いを反映するしかなさそうです。

4.2.3 データストレージの設定

続いて、データストレージの設定です。こちらは、現状のデータ容量と、毎日のデータ容量が増えていく割合を、TB or GBで設定します。

シンプルな質問でわかりやすいなと感じました。

4.2.4 ETLによる仮想ウェアハウスクレジットの見積

続いては、ETL処理による仮想ウェアハウスクレジットの見積になります。 入力項目が1つなので、複数のワークロードを設定することができません。

最低限、入力が必要な項目は以下3つです。

  • 1日あたりのLoad実行回数
    • 整数で入力します
    • 整数なので、1日1回が最小になっています(週に1回とかは指定できない)
  • ロードにかかる時間
    • 分単位で指定します。
    • 全データをロードするのにかかる時間となります。わからない場合は、どれぐらいで終わってほしいとの要求を入力するのも、よいかと思います。
  • データ変換にかかる時間
    • 分単位で、推定の最小値と最大値で入力します。

ここの注意点は、仮想ウェアハウスのサイズ指定がありません。概算の段階でサイズを決めるのは難しいので、こういった質問もありかもしれません。バックグラウンドでどのサイズを想定しているかは、わかりませんでした。

4.2.5 BIなどのツールによる仮想ウェアハウスクレジットの見積

続いては、BIツールの利用などによる仮想ウェアハウスクレジットの見積になります。こちらも、入力項目が1つなので、複数のワークロードを設定することができません。 また、ロードと同様に仮想ウェアハウスのサイズ指定はありません。 最低限、入力が必要な項目は以下2つです。

  • BIツールやアプリケーションの数
    • 整数で入力します
  • 各ツールの1日あたりのアクセス回数
    • 整数で入力します

結構ざっくりですね。ただ、本当の概算段階では細かいワークロードなどは設定が難しそうなので、これぐらい簡単な質問もありかもしれないな?と思います。

4.2.6 概算コスト

上記を入力すると、以下のように月単位での概算コストが出力されます。

ストレージのコストと、コンピュートのコストがそれぞれ表示されます。ロードのとこで、幅を持って入力しましたので、見積りも範囲表示されます。ある程度の範囲を持って見積してくれるのはうれしいですね。

5. Arctica

続いて、Arcticaの利用方法を見ていきます。

5.1 Arcticaの概要

  • Arcticaのサービスページに概算ツールが存在します。
  • Arctica社は社名と同じサービスを提供しています。
  • 上記のサービスに関するページの内部に概算ツールが存在するため、ページにアクセスすると、「Pricing」や「Start for Free」というページがあったりしますが、概算ツールの利用だけなら登録不要で、アクセスするだけで利用可能です。

5.2 Arcticaの利用方法

5.2.1 ページアクセス

それでは早速使ってみます。まずは、Arctica社のページにアクセスしてみます。 上部にメニューバーに「Arctica’s Snowflake Cost Calculator」という部分がありますので、押下します。

5.2.2 Usage Cost Estimation(仮想ウェアハウスのクレジット見積)

ページ中段にいくと、「Usage Cost Estimation」という部分があり、ここで仮想ウェアハウスの起動時間ベースでのクレジット見積をします。 以下のようなイメージで、デフォルトで2つ稼働時間の見積が入ってます。 デフォルトで表示されているものは、「ゴミ箱」マークを押下して削除できます。

「Add Another Comute」を押下すると、4種類の試算方法が出てきます。

用途に合わせて、稼働時間クレジットを見積るイメージです。 どの項目でも右側に、「Total」という表示で、ウェアハウスの起動時間と、設定したウェアハウスサイズに応じたクレジットを表示してくれます。

以下で、それぞれの種類について詳しく見ていきます。

ETL

ETL処理でのウェアハウスのクレジットを試算します。 最低限、入力が必要な項目は以下4つです。

  • Warehouse size
    • 使用するウェアハウスのサイズ(XS~XL)を設定します。
  • Active Days
    • 稼働する曜日を指定します。日曜日だけ, 毎日などの指定ができます。
  • ELT / ETL Frequency
    • このETL処理がどれだけの頻度で定期的に動くのかを設定します。5分ごと~1日1回までの頻度で選択可能です。
  • Duration
    • 処理時間を設定します。可能であれば、トライアル環境などで実験してみた方が正確な値を入力できます。
Analytics

BIツールなどで使用するウェハウスのクレジットを試算します。 なお、BIツールの利用は、マルチユーザーで行われることも多いため、「マルチクラスター」も想定されるとおもいますが、ここでの前提はシングルクラスターです。マルチクラスターを想定する場合は、「Adavaced」を利用します。(後述)

最低限、入力が必要な項目は以下3つです。

  • Warehouse size
    • ETLと同様
  • Active Days
    • ETLと同様
  • Daily Active Usage(In hours)
    • 1日あたり、何時間稼働させるかという入力です
    • 平日の業務時間内であれば、~4Hr程度がだとうかと思います。
Ingest

外部サービスを用いたデータ抽出とロードに関する内容を設定します。 設定内容は、ETLとまったく同様なので、ここでは割愛します。

Advanced

マルチクラスターウェアハウスを利用する場合の見積を実施します。

最低限、入力が必要な項目は以下3つです。

  • Warehouse size
    • ETL, Analyticsと同様
  • Active Days
    • ETL, Analyticsと同様
  • 2時間毎のクラスター数
    • 各時間帯ごとに、どれだけのクラスター数が必要となるかを設定します。
    • クラスター数の見積は中々直感的でないというか、実際にやってみないとわからないところがあるなというイメージです。
    • 曜日ごとにクラスター数が異なる場合は、異なるAdavacedを用意しないといけないので、それも少しややこしいなと思います。

5.2.3 Estimates by Edition(クレジット単価の設定)

ここでは、契約するエディション・クラウドプロバイダー・リージョンなどに変動するクレジット単価を設定します。

ここでは実際に上記のエディションやリージョンなどを設定するのではなく、それぞれのエディションの単価を手動入力します。

デフォルトでは、AWSでUS-EASTリージョンの場合のクレジット単価が入力されています。 記載時点(2022/06/16)では、AWSで東京リージョンのクレジット単価は以下の通りです。

  • Standard:$2.85
  • Enterprise:$4.30
  • Business Critical:$5.7

別のクラウドプロバイダー、リージョンで見積したい場合は、Snowflakeの公式ページにアクセスして調べる必要があります。

Snowflake公式の料金体系

5.2.4 Storage Cost Estimation(ストレージの見積)

TB単位でのストレージの利用料を入力して、コストを見積りします。 ここでも、AWSでUS-EASTリージョンを前提としています。

リージョン毎の見積としたい場合は、やはりSnowflakeの公式ページにアクセスする必要があります。また、個人的な意見だとSnowflakeのストレージにはTimeTravelや、Fail-Safeの分まで含まれるので、ストレージ量での指定は難しいかも?とも感じました。

Snowflake公式の料金体系

6. まとめと感想

再掲となります。

まとめ

  • 特徴
    • DataDrive
      • 簡単な入力で見積が可能
      • Snowflakeの仕様を勉強中の方向け
    • Arctica
      • ウェアハウスのサイズや、起動時間などを細かく設定可能
      • 複数のワークロードにも対応可能
      • Snowflakeの仕様をある程度理解できている方向け
  • 長所と短所
DataDrive Arctica
長所

・いくつかの質問に沿った簡単な入力で見積を実施してくれる

・クラウドプロバイダーや、リージョンまで考慮にいれた見積を実施してくれる(ただし、東京リージョンは選択肢にない

複数のワークロードを設定可能

・細かい設定項目が多いため、ウェアハウスのサイズや起動時間が正確であれば、ある程度正確な見積が期待

・マルチクラスターの数なども考慮に入れることができる

短所

1つのワークロードのみ設定できない

仮想ウェアハウスのサイズ指定などはできない

・ロードの実行想定の最小単位が1日1回となっているため、週に1回とかの想定ができない<br>・ページ上での操作が多少重たい。。

・基本的にAWSのUS -EASTリージョンを想定した見積になっている

・ある程度Snowflakeの仕様を理解していることを前提とした入力になっている(メリットでもある)

感想

どちらも一長一短なので、使い分けが重要かと思いました。

本当の概算段階では利用する仮想ウェアハウスのサイズや、実行時間は見当がつかないので、DataDriveのような簡単な質問である程度の範囲を求めるのはありだと思います。 一方で、Arcticaの方は細かく起動時間など設定できますので、DataDriveよりは正確な見積が期待できます。

繰り返しとなりますが、ご紹介したツールは2つとも、Snowflakeの非公式ツールであるため、正確な見積が必要な場合は、ぜひお問い合わせください!