GCPを利用していてコスト見積もりを実行するにあたってのメモを記載しておきます。
基本
基本的にはこちらを利用することになると思います。
Google Cloud Platform 料金計算ツール
GCE
GCEに関しては、上記よりも実際にVMインスタンスを途中まで作成するのが一番確実です。
コンソール を開いて、メニューからCompute Engine -> VMインスタンス
を開き、作成
ボタンをクリックします。
インスタンス作成画面が開かれますので、あとは、リージョン
マシンの構成
GPUの有無
追加ディスクの有無
など、色々設定を変えながら画面右上に表示されるコストを確認するだけです。
BigQuery
料金体系はこちらに記載されています。以下の3つは少なくとも気にしています。
- アクティブストレージコスト: $0.020 per GB per month
- 例) 1TBを1ヵ月保存すると、2ドル(約220円)
- 長期保存ストレージコスト: $0.010 per GB per month
- 例) 1TBを1ヵ月保存すると、1ドル(約110円)
- クエリコスト: $5.00 per TB
- 例) 1TBのデータにクエリでアクセスすると、5ドル(約550円)
ストレージコストはbq show dataset.tablename
でテーブルのサイズ(Total Bytes)を確認してます。
$ bq show dataset.tablename
Table project.dataset.tablename
Last modified Schema Total Rows Total Bytes Expiration Time Partitioning Clustered Fields Labels
----------------- -------------------------- --------- ------------ ------------- ------------ ------------------- ------------------ --------
15 Apr 10:45:04 |- id: integer (required) 49694562 2073491286
|- name_en: string
|- created_at: timestamp
|- updated_at: timestamp
クエリコストも基本は同様にテーブルサイズからざっくり把握しておき、とても大きなテーブルにアクセスするとき以外はあまり気にしてないですが、ちゃんと確認する場合は以下のいずれかの方法を取っています。
一つ目は、bq query --dry_run
でバイト数を確認して、コストを計算する方法です。
$ bq query --dry_run "select * from dataset.tablename"
Query successfully validated.
Assuming the tables are not modified,
running this query will process 2073491286 bytes of data.
二つ目は、BigQueryのコンソール画面からクエリのコストをチェックする方法です。SQLを入力していくと実行前に、リアルタイムでアクセスするバイト数を表示してくれます。