セールスまたはサポートの担当者と協力して Data Transfer v2.0 へのアクセスを設定すると、バケット名が提供されます。Google Cloud Storage のデータファイルへのアクセスを制御できる Google グループを営業担当者に提供する必要があります。
ユーティリティを使用してデータにアクセスすることも、独自のコードを作成することもできます。
gsutil を使用してデータにアクセスする
gsutil ツールは、Python で記述されたコマンドライン アプリケーションで、コーディングなしでデータにアクセスできます。たとえば、カスタム アプリケーションを作成する代わりに、スクリプトまたはバッチファイルの一部として gsutil を使用できます。
gsutil を始めるには、gsutil のドキュメントをご覧ください。このツールを初めて使用するときに、認証情報の入力を求められます。入力した認証情報は、後で使用できるように保存されます。
gsutil の例
gsutil を使用してすべてのファイルを一覧表示するには、次のコマンドを使用します。
gsutil ls gs://[bucket_name]/[object name/file name]
gsutil は、ワイルドカードのアスタリスク(*)など、UNIX とほぼ同じ構文を使用します。そのため、次のコマンドで NetworkImpression ファイルをすべて一覧表示できます。
gsutil ls gs://[bucket_name]/dcm_account6837_impression_*
ファイルをダウンロードするのも簡単です。
gsutil cp gs://[bucket_name]/dcm_account6837_impression_2015120100.log.gz
分散された DT Google バケットから独自の Google API GCS バケットにファイルをコピーするには、Unix シェル スクリプトを使用します。次の 2 つの方法があります。
gsutil で Unix システムを使用している場合は、すべてのバケットに対して毎日次のコマンドを実行します。
$ day=$(date --date="1 days ago" +"%m-%d-%Y") $ gsutil -m cp gs://{<dcmhashid_A>,<dcmhashid_B>,etc.}/*$day*.log.gz gs://<client_bucket>/
別の方法として、少し複雑な解決策として、bash ファイルを使用する方法があります。
#!/bin/bash set -x buckets={dfa_-hasid_A dfa_-hashid_B,...} #include all hash ids day=$(date --date="1 days ago" +"%m-%d-%Y") for b in ${buckets[@]}; do / gsutil -m cp gs://$b/*$day*.log.gz gs://
/ / done
プログラムでデータにアクセスする
Google Cloud Storage には、多くのプログラミング言語用の API とサンプルが用意されており、プログラムでデータにアクセスできます。以下に、Data Transfer v2.0 に固有の手順を示します。この手順に沿って、動作する統合を構築する必要があります。
サービス アカウントを取得する
Data Transfer v2.0 の使用を開始するには、まずセットアップ ツールを使用して Google API Console でプロジェクトを作成し、API を有効にする必要があります。
新しいサービス アカウントを設定するには、以下の手順に従ってください。
- [認証情報を作成] > [サービス アカウント キー] をクリックします。
- サービス アカウントの公開鍵と秘密鍵を標準 P12 ファイルとしてダウンロードするか、Google API クライアント ライブラリで読み込むことのできる JSON ファイルとしてダウンロードするかを選択します。
新しい公開鍵と秘密鍵のペアが生成され、パソコンにダウンロードされます。 この鍵は再発行できませんので、大切に保管してください。
このウィンドウは開いたままにしておきます。次の手順でサービス アカウントのメールアドレスが必要になります。
グループにサービス アカウントを追加する
- Google グループにアクセスします。
- [My Groups] をクリックし、DT v2.0 Cloud Storage バケットへのアクセス管理に使用するグループを選択します。
- [管理] をクリックします。
- [Invite Members] はクリックしないでください。
- [メンバーを直接追加] をクリックします。
- 前の手順でコピーしたサービス アカウントのメールアドレスをメンバー ボックスに貼り付けます。
- [メールなし] を選択します
- [追加] ボタンをクリックします。
[メンバーを招待] を誤ってクリックしてしまいました
範囲
Cloud Storage に渡されるスコープは読み取り専用である必要があります
たとえば、Java クライアント ライブラリを使用する場合、使用する正しいスコープは次のとおりです。
StorageScopes.DEVSTORAGE_READ_ONLY