Cloud Storage のデータを別の場所に移動する

Last reviewed 2022-06-20 UTC

Cloud Storage バケットを作成するときに、永続的な地理的位置を選択します。ビジネスニーズの変化に伴い、データの保存場所を変更しなければならない場合があります。たとえば、可用性の高いマルチリージョン バケットや低コストのリージョン バケットに配置したり、単に世界の別のリージョンに移動することもあります。

このチュートリアルは、Storage Transfer Service を使用して、ニーズに合わせたロケーションを選択し、新しい Cloud Storage バケットを設定して、新しいロケーションにデータを移動する方法を説明します。

目標

  • Cloud Storage データの新しいロケーションを選択する。
  • 転送方法を定義する。
  • 新しい場所にデータを転送する。

費用

このドキュメントでは、Google Cloud の次の課金対象のコンポーネントを使用します。

2022 年 4 月 2 日から 2022 年 12 月 31 日まで、Storage Transfer Service はサービスの使用時に通常発生する転送コストの多くを一時停止しています。料金を一時的に停止する目的は、ユースケースに最も適したロケーションに Cloud Storage 内のデータを移行できるようにすることです。

2022 年 12 月 31 日以降、Storage Transfer Service を使用する場合は、次の Cloud Storage の料金が適用されます。

  • Cloud Storage への API リクエストネットワーク送信データ転送に対しては課金されます。
  • データがコールド階層(Nearline、Coldline、Archive)にあり、ストレージ バケットが削除されたときに、データの最小保存期間に達していない場合は、早期削除の料金が発生します。
  • データがコールド階層(Nearline、Coldline、Archive)のストレージ バケット内にある場合は、取得料金が発生します。

料金計算ツールを使うと、予想使用量に基づいて費用の見積もりを生成できます。 新しい Google Cloud ユーザーは無料トライアルをご利用いただける場合があります。

始める前に

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。

    プロジェクト セレクタに移動

  3. Google Cloud プロジェクトで課金が有効になっていることを確認します

  4. Cloud Storage and Storage Transfer Service API を有効にします。

    API を有効にする

  5. Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。

    プロジェクト セレクタに移動

  6. Google Cloud プロジェクトで課金が有効になっていることを確認します

  7. Cloud Storage and Storage Transfer Service API を有効にします。

    API を有効にする

  8. Google Cloud コンソールで、「Cloud Shell をアクティブにする」をクリックします。

    Cloud Shell をアクティブにする

    Google Cloud コンソールの下部で Cloud Shell セッションが開始し、コマンドライン プロンプトが表示されます。Cloud Shell はシェル環境です。Google Cloud CLI がすでにインストールされており、現在のプロジェクトの値もすでに設定されています。セッションが初期化されるまで数秒かかることがあります。

  9. Google Cloud コンソールで [IAM と管理] ページに移動して、ストレージ管理者のロールと Access Context Manager 管理者のロールをアカウントに付与します。

    [IAM と管理] ページに移動

    ストレージ管理者のロールには次の権限があります。

    • firebase.projects.get
    • resourcemanager.projects.get
    • resourcemanager.projects.list
    • storage.buckets.*
    • storage.objects.*

新しいロケーションの選択

Cloud Storage バケットのロケーションを選択する場合は、次の表に示すように可用性、料金、パフォーマンスの違いを考慮してください。

リージョン デュアルリージョン マルチリージョン
サービス提供状況
  • アベイラビリティ ゾーン間のデータ冗長性(同期)
  • RTO(目標復旧時間)=0: ゾーン障害時の自動フェイルオーバーとフェイルバック(ストレージパスの変更は不要)
  • 特定のストレージ クラスのリージョンよりも高い可用性
  • リージョン間のデータの冗長性(非同期)
  • 15 分以内のレプリケーション用のターボ レプリケーション オプション
  • RTO(目標復旧時間)=0: リージョン障害時の自動フェイルオーバーとフェイルバック(ストレージパスの変更は不要)
  • 特定のストレージ クラスのリージョンよりも高い可用性
  • リージョン間のデータの冗長性(非同期)
  • RTO(目標復旧時間)=0: リージョン障害時の自動フェイルオーバーとフェイルバック(ストレージパスの変更は不要)
パフォーマンス
  • 200 Gbps(リージョンごと、プロジェクトごと)
  • 帯域幅割り当ての増加リクエストにより数 Tbps に拡張可能
  • 200 Gbps(リージョンごと、プロジェクトごと)
  • 帯域幅割り当ての増加リクエストにより数 Tbps に拡張可能
  • 50 Gbps(リージョンごと、プロジェクトごと)
  • 制限付きのパフォーマンス スケーリング、読み取りのパフォーマンスのばらつき
料金
  • 最低のストレージ料金
  • レプリケーションの費用なし
  • 同じリージョン内のデータを読み取る場合、送信データ転送料金は発生しない
  • 最大のストレージ料金
  • 書き込みにはレプリケーション料金が適用される
  • いずれかのリージョンからデータを読み取る場合、アウトバウンド データ転送料金は発生しない
  • ストレージ料金はリージョンよりも高いが、デュアルリージョンよりも低い
  • 書き込みにはレプリケーション料金が適用される
  • データを読み取るときは、常にアウトバウンド データ転送料金が適用される

ロケーションに関する推奨事項

要件 推奨されるバケットのロケーション ワークロードの例
  • 最適なレイテンシと帯域幅
  • 最低のデータ ストレージ コスト
  • ゾーン間の冗長性
リージョン
  • アナリティクス
  • バックアップとアーカイブ
  • 最適なレイテンシと帯域幅
  • クロスリージョンの冗長性
デュアルリージョン1
  • 分析
  • バックアップとアーカイブ
  • 障害復旧
  • 地域を超えたデータアクセス
  • クロスリージョンの冗長性
マルチリージョン
  • コンテンツの配信
  1. 短くて予測可能な目標復旧時点(RPO)が必要な場合、プレミアム ターボ レプリケーション機能を有効にします。
  • パフォーマンスを最大にして総所有コストを削減するには、データとコンピューティングを同じリージョンに配置します。リージョンとデュアルリージョンはどちらもこの目的に適しています。
  • データ レプリケーションの料金が発生しないようにするには、有効期間の短いデータセットをリージョンに保存します。
  • 中程度のパフォーマンスとアドホック分析のワークロードの場合、Multi-Regional Storage が費用対効果の高い選択肢になります。

  • 新しいバケットに転送する場合は、現在のストレージ クラスがニーズに適しているかどうかを検討します。

移行の計画と開始

新しいロケーションを決定したら、Cloud Storage バケット間の転送を参照してデータの移動を計画します。