使用 Amazon CloudFormation 指定资源 - Amazon Personalize
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

使用 Amazon CloudFormation 指定资源

Amazon Personalize 与 Amazon CloudFormation 集成,后者是一项服务,可帮助您对 Amazon 资源进行建模和设置,这样您只需花较少的时间来创建和管理资源与基础设施。您可以创建一个描述您可指定的全部 Amazon 资源(例如 Amazon Personalize 数据集组)的模板,然后 Amazon CloudFormation 将为您预调配和配置这些资源。

在您使用 Amazon CloudFormation 时,可重复使用您的模板来不断地重复设置您的 Amazon Personalize 资源。描述您的资源一次,然后在多个 Amazon Web Services 账户和区域中反复预置相同的资源。

Amazon Personalize 和 Amazon CloudFormation 模板

要为 Amazon Personalize 与相关服务预调配和配置资源,您必须了解 Amazon CloudFormation 模板。模板是 JSON 或 YAML 格式的文本文件。这些模板可描述您要在 Amazon CloudFormation 堆栈中调配的资源。如果您不熟悉 JSON 或 YAML,可以在 Amazon CloudFormation Designer 的帮助下开始使用 Amazon CloudFormation 模板。有关更多信息,请参阅《Amazon CloudFormation 用户指南》中的什么是 Amazon CloudFormation Designer?

Amazon Personalize 支持在 Amazon CloudFormation 中指定数据集、数据集组、数据集导入作业、架构和解决方案。有关更多信息,请参阅《Amazon CloudFormation 用户指南》中的 Amazon Personalize 资源类型参考

Amazon Personalize 资源的示例 Amazon CloudFormation 模板

以下 Amazon CloudFormation 模板示例向您展示了如何指定不同的 Amazon Personalize 资源。

CreateDatasetGroup

JSON
{ "AWSTemplateFormatVersion":"2010-09-09", "Resources":{ "MyDatasetGroup": { "Type": "AWS::Personalize::DatasetGroup", "Properties": { "Name": "my-dataset-group-name" } } } }
YAML
AWSTemplateFormatVersion: 2010-09-09 Resources: MyDatasetGroup: Type: 'AWS::Personalize::DatasetGroup' Properties: Name: my-dataset-group-name

CreateDataset

JSON
{ "AWSTemplateFormatVersion": "2010-09-09", "Resources": { "MyDataset": { "Type": "AWS::Personalize::Dataset", "Properties": { "Name": "my-dataset-name", "DatasetType": "Interactions", "DatasetGroupArn": "arn:aws:personalize:us-west-2:123456789012:dataset-group/dataset-group-name", "SchemaArn": "arn:aws:personalize:us-west-2:123456789012:schema/schema-name", "DatasetImportJob": { "JobName": "my-import-job-name", "DataSource": { "DataLocation": "s3://amzn-s3-demo-bucket/file-name.csv" }, "RoleArn": "arn:aws:iam::123456789012:role/personalize-role" } } } } }
YAML
AWSTemplateFormatVersion: 2010-09-09 Resources: MyDataset: Type: 'AWS::Personalize::Dataset' Properties: Name: my-dataset-name DatasetType: Interactions DatasetGroupArn: 'arn:aws:personalize:us-west-2:123456789012:dataset-group/dataset-group-name' SchemaArn: 'arn:aws:personalize:us-west-2:123456789012:schema/schema-name' DatasetImportJob: JobName: my-import-job-name DataSource: DataLocation: 's3://amzn-s3-demo-bucket/file-name.csv' RoleArn: 'arn:aws:iam::123456789012:role/personalize-role'

CreateSchema

JSON
{ "AWSTemplateFormatVersion": "2010-09-09", "Resources": { "MySchema": { "Type": "AWS::Personalize::Schema", "Properties": { "Name": "my-schema-name", "Schema": "{\"type\": \"record\",\"name\": \"Interactions\", \"namespace\": \"com.amazonaws.personalize.schema\", \"fields\": [ { \"name\": \"USER_ID\", \"type\": \"string\" }, { \"name\": \"ITEM_ID\", \"type\": \"string\" }, { \"name\": \"TIMESTAMP\", \"type\": \"long\"}], \"version\": \"1.0\"}" } } } }
YAML
AWSTemplateFormatVersion: 2010-09-09 Resources: MySchema: Type: AWS::Personalize::Schema Properties: Name: "my-schema-name" Schema: >- {"type": "record","name": "Interactions", "namespace": "com.amazonaws.personalize.schema", "fields": [ { "name": "USER_ID", "type": "string" }, { "name": "ITEM_ID", "type": "string" }, { "name": "TIMESTAMP", "type": "long"}], "version": "1.0"}

CreateSolution

JSON
{ "AWSTemplateFormatVersion": "2010-09-09", "Resources": { "MySolution": { "Type": "AWS::Personalize::Solution", "Properties": { "Name": "my-solution-name", "DatasetGroupArn": "arn:aws:personalize:us-west-2:123456789012:dataset-group/my-dataset-group-name", "RecipeArn": "arn:aws:personalize:::recipe/aws-user-personalization", "SolutionConfig": { "EventValueThreshold" : ".05" } } } } }
YAML
AWSTemplateFormatVersion: 2010-09-09 Resources: MySolution: Type: 'AWS::Personalize::Solution' Properties: Name: my-solution-name DatasetGroupArn: >- arn:aws:personalize:us-west-2:123456789012:dataset-group/my-dataset-group-name RecipeArn: 'arn:aws:personalize:::recipe/aws-user-personalization' SolutionConfig: EventValueThreshold: '.05'

了解有关 Amazon CloudFormation 的更多信息

要了解有关 Amazon CloudFormation 的更多信息,请参阅以下资源: