概要

このページでは、Storage Transfer Service について説明します。

その他の Google Cloud 転送オプションは次のとおりです。

Storage Transfer Service とは

Storage Transfer Service は、次のことを可能にするサービスです。

  • 他のクラウド ストレージ プロバイダから、またはオンプレミス ストレージから Cloud Storage バケットにデータを転送またはバックアップします。

  • ある Cloud Storage バケットから別の Cloud Storage バケットにデータを転送し、さまざまなユーザー グループやアプリケーションで使用できるようにします。

  • データ処理パイプラインまたは分析ワークフローの一部として、データを定期的に移動する。

Storage Transfer Service には、データ転送と同期を容易にするオプションが用意されています。例:

  • 1 回限りの転送オペレーションまたは定期的な転送オペレーションをスケジュールする。

  • 転送先バケット内に存在しているオブジェクトのうち、転送元に対応するオブジェクトがないものを削除する。

  • 転送したデータソース オブジェクトを削除する。

  • ファイル作成日、ファイル名、データをインポートする時刻に基づいた高度なフィルタを使用して、データソースからデータシンクへの定期的な同期をスケジュールする。

Storage Transfer Service では、デフォルトで次の処理を行います。

  • ファイルがデータシンク内に存在しない場合、またはデータソースとデータシンクの間でファイルのバージョンが異なる場合は、Storage Transfer Service はデータソースからファイルをコピーする。

  • 転送操作後にソース内のファイルを保持する。

  • HTTPS 接続に TLS 暗号化を使用する。唯一の例外は、URL リストの転送に HTTP URL を指定した場合です。

Storage Transfer Service の権限とロールの要件

Storage Transfer Service は、Identity and Access Management を使用してアクセスを制御、管理します。IAM の詳細については、IAM の概要をご覧ください。

Storage Transfer Service を使用するには、実施する職務の種類に応じて、次の IAM ロールのうち 1 つ以上が付与されている必要があります。

アクセスタイプ IAM 役割
フルアクセス Storage Transfer 管理者
転送を送信する Storage Transfer ユーザー
転送のジョブとオペレーションの表示と一覧表示 Storage Transfer 閲覧者

転送ジョブの作成に使用するプロジェクトを、データソースまたはデータシンクとして機能するバケットに関連付ける必要はありませんが、データソースとデータシンクの構成および使用には追加の権限が必要です。

Storage Transfer Service の役割と権限の詳細については、データソースとデータシンクへのアクセスの構成を参照してください。

使用可能なインターフェース

Storage Transfer Service は複数の方法で操作できます。

  • Google Cloud Console を使用して転送ジョブを作成、管理する。多くの場合、これが Storage Transfer Service の使用を開始する最も簡単で迅速な方法です。詳細については、Google Cloud Console を使用した転送の作成と管理をご覧ください。

  • REST API を使用して Storage Transfer Service API を直接操作します。API を有効にして、リクエストを使用するための認証トークンを取得する方法については、Storage Transfer Service クライアントの作成をご覧ください。

データの整合性

Storage Transfer Service は、ソース ストレージ システムで利用可能なメタデータ(チェックサムやファイルサイズなど)を使用して、Cloud Storage に書き込まれるデータがソースから読み取られるデータと同じであることを確認します。

チェックサム メタデータがある場合

Storage Transfer Service が受信したデータがソースデータと一致しないことをソース ストレージ システムのチェックサム メタデータが示している場合、Storage Transfer Service はその転送オペレーションを失敗として記録します。チェックサム メタデータを含むストレージ システムには、ほとんどの Amazon Simple Storage Service(Amazon S3)と Microsoft Azure Blob Storage オブジェクト(いくつか例外あり)、HTTP 転送(ユーザーによるチェックサム メタデータ)が含まれます。

チェックサム メタデータがないが、エージェントがソースの近くで実行できる場合

基盤となるソース ストレージ システムにチェックサム メタデータがないが、エージェントがソース ストレージ システムの近くにローカルで実行されている場合、Storage Transfer Service はソースデータを読み取って、チェックサムを計算してから、Cloud Storage にデータを送信します。これは、ファイル システムから Cloud Storage にデータを移動するときに、Transfer Service for On Premises Data で発生します。

チェックサム メタデータがなく、エージェントがソースの近くで実行できない場合

チェックサム メタデータが基盤となるソース ストレージ システムになく、エージェントをソース ストレージ システムの近くにローカルで実行できない場合、Storage Transfer Service は Cloud Storage にデータが到着するまでチェックサムを計算できません。このシナリオでは、Storage Transfer Service はデータをコピーしますが、受信したデータがソースデータと同じであることを確かめるエンドツーエンドのデータの整合性チェックはできません。その代わりに、Storage Transfer Service は、ファイルサイズなどの利用可能なメタデータを使用する「ベスト エフォート」のアプローチを採用し、Cloud Storage にコピーされたファイルがソースファイルと一致するか検証します。

たとえば、Storage Transfer Service はファイルサイズを使用して、以下のデータを検証します。

転送後チェック

転送が完了したら、追加のデータの整合性チェックを実行して、以下を検証することをおすすめします。

  • 移行元で変更されたファイルの正しいバージョンのファイルがコピーされている。
  • ファイルの正しいセットと数がコピーされ、転送ジョブが正しく設定されている。
  • ファイルが正しくコピーされている(ファイル チェックサム、ファイルサイズなど、ファイル上のメタデータを検証することで検証します)

gsutil と Storage Transfer Service のどちらを使用するか

gsutil コマンドライン ツールで、Cloud Storage と他のロケーションの間でデータを転送することもできます。gsutil を使用して別のクラウド ストレージ プロバイダから Cloud Storage にデータを転送できますが、このユースケースでは Storage Transfer Service が推奨されます。

gsutil か Storage Transfer Service のどちらを使用するかを決めるときは、次のルールに従ってください。

転送のシナリオ おすすめ
別のクラウド ストレージプロバイダから転送する Storage Transfer Service を使用する
オンプレミスから 1 TB 未満のデータを転送する gsutil を使用する
オンプレミスから 1 TB 超のデータを転送する Transfer service for on-premises data を使用する

このガイダンスをベースとして使用します。転送シナリオの詳細は、適切なツールを判断するときにも役立ちます。

サービスレベル契約

Storage Transfer Service では、現在、SLA を提供しておらず、パフォーマンスの変動が予想されます。たとえば、転送のパフォーマンスやレイテンシのために、SLA を提供することはありません。