データフィードへのアクセス - AWS Marketplace

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

データフィードへのアクセス

を使用すると AWS Marketplace、構造化されたup-to-date製品および顧客情報を AWS Marketplace 、販売者所有のビジネスインテリジェンスツール間で ETL (抽出、変換、ロード) 用の Amazon S3 バケットから送信するメカニズムとしてデータフィードを使用できます。暗号化された Amazon S3 バケットでデータフィードを受信するように環境を設定する必要があります。このトピックでは、データフィードにアクセスしてサブスクライブを解除する方法について説明します。

データフィードにアクセスする

  1. SQL と ETL (Extract/Transform/Load) の経験があるビジネスインテリジェンスまたはデータエンジニアを割り当てます。また、API の設定経験も必要です。

  2. Amazon Simple Storage Service バケットとデータフィードのサブスクリプションを設定します。Marketplace 製品リストに関連付けられている AWS 販売者アカウント ID を使用します。これを行うには、この YouTube 動画を視聴するか、次の手順を実行します。

    ビデオと手順では、設定を簡素化するAWS CloudFormation テンプレートの使用方法が説明されています。

    1. ウェブブラウザを開いて AWS Marketplace 管理ポータル にサインインし、「顧客データストレージの設定」に進みます。

    2. AWS CloudFormation テンプレートを使用してリソースを作成するを選択し、別のウィンドウで AWS CloudFormation コンソールでテンプレートを開きます。

    3. テンプレートで以下を指定し、[Next (次へ)] を選択します。

      • スタック名 - データフィードへのアクセスを有効にするために作成するリソースのコレクション。

      • Amazon S3 バケット名 - データフィードを保存する先のバケット。

      • (オプション) Amazon SNS トピック名 - AWS が新しいデータを Amazon S3 バケットに配信したときに、通知を受信するためのトピック。

    4. [Review (確認)] ページで入力内容を確認し、[Create stack (スタックの作成)] を選択します。これにより、CloudFormation のステータスと詳細が記載された新しいページが開きます。

    5. リソースタブから、CloudFormation ページから次のリソースの Amazon リソースネーム (ARNs) を、 AWS Marketplace 「顧客データストレージの設定」ページのフィールドにコピーします。

      • データフィードを保存する先の Amazon S3 バケット

      • AWS KMS Amazon S3 バケットを暗号化するための キー

      • (オプション) が Amazon SNS3 バケットに新しいデータを AWS 配信するときに通知を受信するための Amazon SNS トピック Amazon S3

    6. [Set up customer data storage (顧客データストレージの設定)] ページで、[Submit (送信)] を選択します。

    7. (オプション) CloudFormation テンプレートによって作成されたポリシーを編集します。詳細については、「データフィードポリシー」を参照してください。

      これで、データフィードにサブスクライブしました。次回にデータフィードが生成されると、データにアクセスできます。

  3. ETL (Extract/Transform/Load) オペレーションを使用すると、データフィードをデータウェアハウスまたはリレーショナルデータベースに接続します。

    注記

    データツールにはさまざまな機能があります。ツールの機能に合わせて統合を設定するには、ビジネスインテリジェンスエンジニアまたはデータエンジニアを関与させる必要があります。

  4. SQL クエリを実行または作成するには、データツールでプライマリキーと外部キーを適用するようにデータフィードを設定します。各データフィードは一意のテーブルを表し、エンティティ関係を使用してデータスキーマ内のすべてのデータフィードを設定する必要があります。テーブルとエンティティの関係の詳細については、このガイドの「データフィードテーブルの概要」を参照してください。

  5. Amazon Simple Notification Service をセットアップして、データウェアハウスまたはリレーショナルデータベースを自動的に更新します。各一意のフィードからのデータが S3 バケットに配信されたときにアラートを送信するように Amazon SNS 通知を設定できます。これらの通知を使用すると、販売者データツールがこの機能をサポートし、データフィードを介して新しいデータを受信する際に、販売者データウェアハウスを自動更新できます。詳細については、「Amazon Simple Notification Service デベロッパーガイド」の「Amazon SNS の開始方法」を参照してください。

    通知の例

    { "mainExecutionId": "1bc08b11-ab4b-47e1-866a-9c8f38423a98", "executionId": "52e862a9-42d2-41e0-8010-810af84d39b1", "subscriptionId": "27ae3961-b13a-44bc-a1a7-365b2dc181fd", "processedFiles": [], "executionStatus": "SKIPPED", "errors": [], "feedType": "[data feed name]" }

    通知には次の executionStatus ステータスがあります。

    • SKIPPED – 販売者に対するその日の新しいデータはありません。

    • COMPLETED – フィードに新しいデータを提供しました。

    • FAILED – フィード配信に問題があります。

  6. SQL クエリを実行してセットアップを検証します。このガイドの サンプルクエリ、または GitHub のクエリは、https://github.com/aws-samples/aws-marketplace-api-samples/tree/main/seller-data-feeds/queries で使用できます。

    注記

    このガイドのサンプルクエリは、 AWS Athena 用に書かれています。ツールで使用するクエリは変更する必要がある場合があります。

  7. ビジネスユーザーがデータを使用する場所を決定します。例えば、以下のことが可能です。

    • データウェアハウスまたは SQL データベースから .csv データをエクスポートします。

    • PowerBI や Tableau などの視覚化ツールにデータを接続します。

    • Salesforce、Infor、Netsuite などの CRM、ERP、財務ツールにデータをマッピングします。

AWS CloudFormation テンプレートの詳細については、「 AWS CloudFormation ユーザーガイド」のAWS CloudFormation 「テンプレートの使用」を参照してください。

データフィードポリシー

Amazon S3 バケットが CloudFormation テンプレートによって作成されると、そのバケット、 AWS KMS キー、および Amazon SNS トピックにアタッチされたアクセスポリシーが作成されます。このポリシーにより、 AWS Marketplace レポートサービスはデータフィード情報をバケットと SNS トピックに書き込むことができます。各ポリシーには次のようなセクションがあります (この例は Amazon S3 バケットのものです)。

{ "Sid": "AwsMarketplaceDataFeedsAccess", "Effect": "Allow", "Principal": { "Service": "reports.marketplace.amazonaws.com" }, "Action": [ "s3:ListBucket", "s3:GetObject", "s3:PutObject", "s3:GetEncryptionConfiguration", "s3:GetBucketAcl", "s3:PutObjectAcl" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket", "arn:aws:s3:::amzn-s3-demo-bucket/*" ] },

このポリシーでは、 はreports.marketplace.amazonaws.comサービスプリンシパル AWS Marketplace を使用して Amazon S3 バケットにデータをプッシュします。CloudFormation テンプレートでは、amzn-s3-demo-bucket が指定されています。

AWS Marketplace レポートサービスが Amazon S3 AWS KMSまたは Amazon SNS を呼び出すと、バケットに書き込む予定のデータの ARN が提供されます。バケットに書き込まれるデータが、ユーザーに代わって書き込まれるデータだけになるようにするには、ポリシーの条件に aws:SourceArn を指定します。次の例では、account-id を自分の AWS アカウントの ID に置き換える必要があります。

{ "Sid": "AwsMarketplaceDataFeedsAccess", "Effect": "Allow", "Principal": { "Service": "reports.marketplace.amazonaws.com" }, "Action": [ "s3:ListBucket", "s3:GetObject", "s3:PutObject", "s3:GetEncryptionConfiguration", "s3:GetBucketAcl", "s3:PutObjectAcl" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket", "arn:aws:s3:::amzn-s3-demo-bucket/*" , "Condition": { "StringEquals": { "aws:SourceAccount": "account-id", "aws:SourceArn": ["arn:aws:marketplace::account-id:AWSMarketplace/SellerDataSubscription/DataFeeds_V1", "arn:aws:marketplace::account-id:AWSMarketplace/SellerDataSubscription/Example-Report"] } } },

データフィードからサブスクリプションを解除する

ウェブブラウザを開き、 AWS Marketplace 管理ポータルにサインインします。次に、お問い合わせページに移動して、サブスクリプション解除リクエストを AWS Marketplace Seller Operations チームに送信します。受信解除のリクエストの処理が完了するのに、最大で 10 営業日かかる場合があります。