Cloud Storage へのデータの取り込みに最適な 5 つの方法
Google Cloud Japan Team
※この投稿は米国時間 2021 年 3 月 6 日に、Google Cloud blog に投稿されたものの抄訳です。
音声でお聞きになる場合は、テックブログの新しいポッドキャストをぜひお聴きください。
バケットを作成したら、次に考えるのはクラウドを活用してコンテンツを提供することではないでしょうか。この投稿では、Cloud Storage にデータを取り込むためのさまざまなアップロード方法を詳しくご紹介します。では早速始めましょう。
Cloud Storage バケットにオブジェクトをアップロードするとき、そのオブジェクトは、保存するデータとそれに関連するメタデータで構成されています。実際にアップロードを行う際には、以下にご紹介するいくつかのオプションから選択できます。詳しくは、こちらのドキュメントをご参照ください。また、アップロードとダウンロードに関する一般的なコンセプトについては、こちらをお読みください。
Cloud Console
まずは、Cloud Console について取り上げます。Cloud Console では、ブラウザ内でクリックするだけでバケットやフォルダが作成でき、ローカルマシンからファイルを選択する方法でも、ドラッグ&ドロップする方法でもアップロードすることができます。
gsutil
本番環境では、コマンドラインによる自動化ソリューションが望ましい場合があります。
これに対応するのが gsutil ツールです。gsutil はコマンドラインから Cloud Storage にアクセスできる Python アプリケーションで、バケットの作成、オブジェクトの移動、メタデータの編集など、あらゆる操作を行うことができます。
gsutil を使用するには、さまざまなコマンドライン オプションを使用して gsutil プログラムを実行します。たとえば、このコマンドは並列アップロードを使用して、ファイルのディレクトリをローカルマシンから Cloud Storage バケットにアップロードします。
こちらのコマンドは、ワイルドカードを使用して、バージョン固有の URL を持つ特定のオブジェクトを一覧表示します。
gsutil ツールの活用方法について詳しくは、こちらのドキュメントをご参照ください。
クライアント ライブラリ
場合によっては、コマンドライン オプションを使用するのではなく、コードから直接 Cloud Storage を操作しなくてはならない場合があります。クライアント ライブラリをコードに組み込んで簡単な API を呼び出すことで、バケットやフォルダにデータを取得できます。
もちろん、C++、C#、Go、Java、Node.js、PHP、Python、Ruby の言語オプションをご利用いただけます。
オブジェクトを Cloud Storage バケットにアップロードする Python コードの例を確認してみましょう。
その他のコードサンプルについては、こちらをご確認ください。
JSON と XML
最後に、前述の方法でうまくいかない場合は、HTTP POST リクエストを開始し、バケットやフォルダに直接データをアップロードできる JSON API か XML API を使うというオプションもあります。少し複雑ですが、必要に応じてご使用ください。
Cloud Storage Transfer Appliance
大規模なデータを扱うお客様にとって、そのすべてのデータをオンプレミス システムから Google Cloud に直接アップロードするのは現実的ではない可能性があります。そこで注目すべきなのが、Cloud Storage Transfer Appliance です。
この場合、お客様は Google から届いたデバイスにデータを追加し、完了後にデバイスを返送します。外観もスマートなこのデバイスを机の上に置いておけば、注目の的となるかもしれません。詳しくはこちらをご覧ください。
安心のマルチクラウド サポート
データが他社のクラウドにある場合でも心配は無用です。マルチクラウド環境をサポートし、別のクラウドにあるデータを Cloud Storage へ移行して使用できるようにするためのわかりやすいガイドをご用意しています。
次のステップ
Cloud Storage にデータが保存されたら、世界中のユーザーにデータを提供するための最適な方法を見つけ出す必要があります。次回の投稿では、そのためのベスト プラクティスについてご紹介しますのでぜひご期待ください。
ストレージのオプションについて詳しくは、Cloud Storage Bytes の動画をご覧ください。チュートリアルを含む詳細情報は、ドキュメントでご確認いただけます。
-Cloud デベロッパー アドボケイト Jenny Brown