top pageへ.

Programming Room.

GCP Tips.

GCS Tips.

 Google Cloud Storage(GCS)の利用に関するTipsです。


おしながき

無料のバケットを有効にする.2016/10/27

動機.

 GAEと同様にGCSにも無料枠があるような話を聞いたのに、公式ドキュメントを探してもGCP丸ごと60日間試用のリンクしか見つからない。GCEとかはまだ使う気がないので、これは取っておきたいのですよ。
 でもある日、コンソールから見つけてしまいました。GCSだけの、無料枠の設定手順の忘備録です。


概要.

 GCSの無料枠は、下記のようなものです。

手順.

 この無料のバケットは初期状態では無効になっています。有効化する手順は以下のとおりです。

  1. GCPコンソールのメニューから「App Engine」を選択。
  2. ウィンドウ左端のメニューから「設定」を選択。
  3. ウィンドウ右側ペインの「アプリケーションの設定」タブの中段「デフォルトの Cloud Storage バケット」下の「作成」をクリック。

 上記手順3.の後、「作成」ボタンがプロジェクト名のリンクに変わったら完了です。このリンクからはGCSのブラウザに遷移できます。
 デフォルトバケットの名称はGAEプロジェクトの名称と同じで固定のようです。GCSのバケット名には「ワールドワイドでユニーク」というルールがありますが、これならかぶらず安心ですね。

 もし手順3.で「作成」ボタンがなく、「GAEプロジェクト名.appspot.com」というリンクが表示されていたら、すでにデフォルトバケットはできています。このリンクでデフォルトバケットを表示できます。


補足.

 実際にデフォルトバケットを作ってみると、上記のデフォルトバケットの他に、「staging.」が先頭に追加されたバケットも生成されます。公式ドキュメントの注意書きでは、テスト用に使っていいそうです。容量も5GBとデフォルトバケットと同じ。
 ただし、毎週内容は消去されるそうです。だからテストなどテンポラリ用途に限定です。しかし、毎週といっても、週のいつでしょうね。説明がありません。またデフォルトバケットと違ってGCSのコンソールからアップロード/ダウンロードができないので、それなりにAPIを駆使したアプリを用意できてからでないと、使えません。まさにアプリのテスト専用のようです。

 なんで設定がGAEの中にあるんだろうと思ったのですが、理由を推測してみると以下のとおりです。
 過去GAEには整形されていないバイナリデータを保存し読み出せる「Blobstore」という機能がありました。このころはまだDatastoreもGAEの一部だったかもしれません。このバイナリデータの保存の機能を1つのサービスとして独立させたのがGCSです。GCSが出来てからバイナリの保存はこっちへという流れになりますが、DatastoreのBlobの機能をなくすと稼働中のアプリがお亡くなりになってしまいます。該当するアプリがそれなりに多かったので、APIだけ残して中身はGCSへという解決を行ったのではないかと思います。
 現在もBlobstore APIは機能しますが、公式ドキュメントには「BlobstoreよりGCSを使え」との注意書きがあります。Blobstore APIとは別に、GCSに直接アクセスするAPIも用意されています。バイナリの保存に関してはBlobstore APIを使うより、GCSを直接アクセスしたほうがよいでしょう。


▲page top.
Copyright 2005-2016, yosshie.