访问数据源 - AWS Marketplace

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

访问数据源

借 AWS Marketplace助,您可以使用数据源作为一种机制,在卖家拥有的商业智能工具之间发送来自 AWS Marketplace 系统和 Amazon S3 存储桶ETL(提取、转换和加载)的结构化、 up-to-date产品和客户信息。您需要配置您的环境以接收发送到加密的 Amazon S3 存储桶的数据。本主题向您展示如何访问和取消订阅数据源。

访问数据源

  1. 分配具有SQL和ETL(提取、转换、加载)经验的商业智能或数据工程师。此人还需要设置经验APIs。

  2. 设置 Amazon 简单存储服务存储桶并订阅数据源。使用与您的 Marketplace 商品详情关联的AWS卖家账户编号。为此,您可以观看此 YouTube 视频或按照以下步骤操作。

    该视频和步骤说明了如何使用有助于简化配置的AWS CloudFormation 模板

    1. 打开 Web 浏览器并登录 AWS Marketplace 管理门户,然后转到设置客户数据存储

    2. 选择 “使用 AWS CloudFormation 模板创建资源”,在 AWS CloudFormation 控制台的另一个窗口中打开模板。

    3. 在模板中,指定以下内容,然后选择下一步

      • 堆栈名称 – 您将创建的允许访问数据源的资源集合。

      • Amazon S3 存储桶名称 – 用于存储数据源的存储桶。

      • (可选)Amazon SNS 主题名称-用于在向 Amazon S3 存储桶 AWS 传输新数据时接收通知的主题。

    4. 审核页面上,确认您的条目,然后选择创建堆栈。这将打开一个包含 CloudFormation 状态和详细信息的新页面。

    5. 在 “资源” 选项卡中,将 CloudFormation 页面中以下资源的亚马逊资源名称 (ARNs) 复制到 AWS Marketplace 设置客户数据存储页面上的字段中:

      • 用于存储数据源的 Amazon S3 存储桶

      • AWS KMS 用于加密 Amazon S3 存储桶的密钥

      • (可选)Amazon SNS 主题,用于在向 Amazon S3 存储桶 AWS 传送新数据时接收通知

    6. 设置客户数据存储页面上,选择提交

    7. (可选)编辑由 CloudFormation 模板创建的策略。有关更多信息,请参阅 数据源策略

      您现在已订阅数据源。下次生成数据源时,您可以访问数据。

  3. 使用ETL(提取、转换、加载)操作将数据源连接到您的数据仓库或关系数据库。

    注意

    数据工具具有不同的功能。您必须让商业智能工程师或数据工程师参与设置集成,使其与您的工具的功能相匹配。

  4. 要运行或创建SQL查询,请将数据馈送配置为在数据工具中强制使用主键和外键。每个数据馈送代表一个唯一的表,您必须使用实体关系在数据架构中设置所有数据馈送。有关表和实体关系的更多信息,请参阅本指南数据源表概述中的。

  5. 设置 Amazon 简单通知服务以自动刷新您的数据仓库或关系数据库。您可以将 Amazon SNS 通知配置为在来自每个唯一的 Feed 的数据传输到 S3 存储桶时发送提醒。如果卖家数据工具支持此功能,则当通过数据上传收到新数据时,可以利用这些通知自动刷新卖家数据仓库。请参阅《亚马逊简单通知服务开发者指南》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— 我们提供了包含新数据的 Feed。

    • FAILED— Feed 交付存在问题。

  6. 通过运行SQL查询来验证设置。您可以使用本指南中的示例查询,也可以在 https://github.com/aws-samples/aws-marketplace-api-samples/上 GitHub使用查询tree/main/seller-data-feeds/queries。

    注意

    本指南中的示例查询是为 AWS Athena 编写的。您可能需要修改查询才能与您的工具配合使用。

  7. 确定业务用户想要在何处使用数据。例如,您可以:

    • 从您的数据仓库或SQL数据库中导出.csv 数据。

    • 将您的数据连接到 PowerBI 或 Tableau 等可视化工具。

    • 将数据映射到您的CRMERP、或财务工具,例如 Salesforce、Infor 或 Netsuite。

有关 AWS CloudFormation 模板的更多信息,请参阅《AWS CloudFormation 用户指南》中的使用 AWS CloudFormation 模板

数据源策略

当 CloudFormation 模板创建您的 Amazon S3 存储桶时,它将为附加到该存储桶、 AWS KMS 密钥和亚马逊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/*" ] },

在本策略中, AWS Marketplace 使用reports.marketplace.amazonaws.com服务主体将数据推送到 Amazon S3 存储桶。你指定了 amzn-s3-demo-bucket 在 CloudFormation 模板中。

当 AWS Marketplace 报告服务调用 Amazon S3 或 Amazon 时SNS,它会提供它打算写入存储桶的数据。 AWS KMS ARN为确保写入存储桶的唯一数据是以您的名义写入的数据,您可以在策略的条件中指定 aws:SourceArn。在以下示例中,必须替换 account-id 附上你的身份证 AWS 账户。

{ "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"] } } },

取消订阅数据源

打开网络浏览器并登录 AWSMarketplace 管理门户。然后,前往联系我们页面,向 AWS Marketplace 卖家运营团队提交取消订阅请求。取消订阅请求可能需要 10 个工作日来处理。