[Ultimate]{class="badge positive"}
Google PubSub ソース
Adobe Experience Platformは、AWS、Google Cloud Platform、Azureなどのクラウドプロバイダーにネイティブ接続を提供し、これらのシステムからデータをExperience Platformに取り込んで下流のサービスや宛先で使用できるようにします。
クラウドストレージソースは、ダウンロード、フォーマット、アップロードしなくても、データをExperience Platformに取り込むことができます。 取り込んだデータは、XDM JSON、XDM Parquet 形式または区切り形式で書式設定できます。 プロセスのすべての手順がソースワークフローに統合されます。 Experience Platformでは、Google PubSubからデータをリアルタイムで取り込むことができます。
前提条件 prerequisites
このセクションでは、Google PubSub アカウントをExperience Platformに接続する前に完了する必要がある前提条件の設定の概要を説明します。
サービスアカウントの作成 create-service-account
サービスアカウントは、個人ではなく、アプリケーションまたはコンピューティングワークロードで頻繁に使用されるアカウントのタイプです。 サービスアカウントは、アカウントに固有のメールアドレスで識別されます。
- 一方、サービスアカウントは プリンシパル です。サービスアカウントにGoogle Cloud個のリソースへのアクセス権を付与できます。 例えば、特定のプロジェクトでCompute Adminの役割
(roles/compute.admin)をサービスアカウントに付与できます。 これにより、サービスアカウントは、その特定のプロジェクト内のCompute Engine リソースを管理できます。 - 一方、サービスアカウントもリソースです。他のプリンシパルにサービスアカウントにアクセスする権限を与えることができます。 例えば、ユーザーにサービスアカウントのユーザーロール
(roles/iam.serviceAccountUser)を付与して、ユーザーがそのサービスアカウントをリソースに添付できるようにすることができます。 または、ユーザーにサービスアカウント管理者の役割(roles/iam.serviceAccountAdmin)を付与して、ユーザーがサービスアカウントの表示、編集、無効化、削除などのタスクを完了できるようにすることもできます。
ユースケースに適した認証タイプの決定について詳しくは、Google 認証方法に関するガイド を参照してください。
サービスアカウントを作成するには、次の手順に従います。
まず、Google Developer ConsoleのIAM ページに移動し、Create Service Accountを選択します。
次に、表示名とサービスアカウントのIDを入力し、Create and Continueを選択します。
サービスアカウントキーの生成 generate-service-account-keys
サービスアカウントのキーを生成するには、サービスアカウントページでキーヘッダーを選択します。 そこから、Add keyを選択し、ドロップダウンメニューから Create new key を選択します。 このパネルを使用して、既存のキーをアップロードすることもできます。
成功すると、秘密鍵がコンピューターに保存され、ファイルがダウンロードされることを示すメッセージが表示されます。 その後、Experience PlatformでGoogle PubSub アカウントを作成する際に、このファイルの内容を資格情報として使用できます。
トピックおよびサブスクリプションレベルでの権限の付与 grant-permissions
トピックおよびサブスクリプションレベルで権限を付与するには、トピックコンソールページに移動し、Show info panelを選択します。 次に、「Permissions」タブで「Add Principal」を選択し、権限と共にサービスアカウントプリンシパルを追加します。
最適なGoogle PubSub usageの設定 optimal-configurations
この節では、Experience Platform上のGoogle PubSub ソースの使用を最適化するために行うことをお勧めします。
購読プロパティ subscription-properties
Google Developer Consoleを使用して確認期限を増やします。 これにより、Google Publisherは、メッセージを再送信する前に、設定した時間に従って待機できます。 この遅延は、購読者レベルでの不要な負荷の軽減に役立ちます。
exactly one deliveryを有効にします。 この設定は、受信確認の期限が切れる前に、サブスクリプションに送信されたメッセージが再送信されないことを保証するようにGoogle Publisherに通知します。 この設定を使用して、確認メッセージがサブスクリプションに再送信されないようにすることができます。
Retry after exponential backoff delayを有効にして、サーバーをさらに圧倒するリスクを減らすことができます。 この設定をGoogle Developer Consoleで有効にすると、一時的なエラー(通常は自分自身で解決する一時的なエラー)をより軽減できます。システムに、別の接続を試みる前に回復する時間を増やすことができます。
未承認のデータがピーク時に失われないように、サブスクリプションメッセージの保持期間を 24時間以上 に設定する必要があります。 さらに、デッドレターのトピックを有効にして、まれなエッジケースでもデータが失われないようにします。
Google PubSubをExperience Platformに接続
以下のドキュメントでは、APIまたはユーザーインターフェイスを使用してGoogle PubSubをExperience Platformに接続する方法について説明します。