LoginSignup
6
7

More than 5 years have passed since last update.

Cloud SQLの料金体系におけるPackages Billing PlanとPer Use Billing Planの違い

Last updated at Posted at 2015-10-04

あくまで2015-10-04時点での話。
引用元へのリンクはなるべく残すので、原文と変わっていないことを必ず確認すること。
Google Cloud SQLそのものについての説明は割愛します。

料金プランの概要

Pricing - Cloud SQL — Google Cloud Platformにまとまっている。
英文だが比較的読みやすいし、日本語で読みたければ以下のページに翻訳された文章が書かれている(ただし価格が常時変動しているので参考程度にすること)。

Packages Billing Plan(Packages)とPer Use Billing Plan(Per Use)の違い

さて、Cloud SQLの料金体系について一番戸惑ったのがここである。
Packagesの場合、実際にそのDBが使用されているかどうかにかかわらずインスタンスの起動期間に合わせて料金が発生する。
対してPer Useの場合は1時間単位での使用に合わせて料金が発生するようだ。

疑問に思ったのがPer Useプランでの"使用"の概念で、どのような状態にあればそのインスタンスが使用状態だとされるのか。
答えはFAQの方にあり、FAQ - Cloud SQL — Google Cloud Platform - How is use of my instance calculated?によるとこう書かれている。

By default, your instance is spun up whenever you access it (whether from a SQL prompt, an external application, or from an App Engine application), and remains up for 15 minutes after the completion of the last access. After this time, the instance is shut down. You will not be charged for the time your database is not up.

標準では、あなたのインスタンスはあなたがアクセスすると(それがSQLプロンプト、外部アプリケーションまたはAppEngineアプリケーションであるかは問わない)スピンアップし、そして最後のアクセスの完了から15分後まで残り続ける。その後、このインスタンスはシャットダウンされる。あなたはあなたのデータベースがアップしていないこの時間は支払いが発生しない。

というわけで、DBのアクセスごとにUpし、最後のアクセスから15分後にはDown状態へ移行するらしい。

PackagesとPer Useどちらを選択するべきか

Tier D0で計算すると、Packagesでの一日あたりの料金は$0.36, それに対してPer Useでの1時間あたりの料金は$0.025である。
単純計算

0.36 \div 0.025 = 14.4

から一日平均14.4時間以上アクセスが発生するようなDBの使い方の場合、Packagesのほうがお得ということになる。

サーバーの起動ポリシーについて補足

Cloud SQLインスタンスを作成するときに以下のような起動ポリシーを選べる。
Per Useにもかかわらずここで常時起動を選択してしまうとPackagesより常に高い料金を支払い続けることになるので注意。
a.jpg

6
7
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
6
7