Hello,
I try to build a CDK to setup an AWS Personalize environment. For me it look good, the Avro schema was copied from a tutorial of AWS. What is wrong with my Schema?
//AWS PErsonalize Init
const cfnDatasetGroup = new personalize.CfnDatasetGroup(this, 'MyCfnDatasetGroupLAb62s', {
name: 'pinpoint-recommendations-clothing',
});
const cfnSchema = new personalize.CfnSchema(this, 'MyCfnSchema', {
name: 'pinpoint-recc-schema-clothing',
schema: this.getPErsonalizeCsvSchemaJSON.toString(),
});
const cfnDataset = new personalize.CfnDataset(this, 'MyCfnDataset', {
datasetGroupArn: cfnDatasetGroup.attrDatasetGroupArn,
datasetType: 'datasetType',
name: 'pinpoint-recc-dataset-clothing',
schemaArn: cfnSchema.attrSchemaArn,
datasetImportJob: {
dataSource: {dataLocation: personalizeBucket.s3UrlForObject.toString()},
jobName: 'pinpoint-importjob-clothing',
//roleArn: 'roleArn',
},
});
The method behind is:
private getPErsonalizeCsvSchemaJSON() {
let content = {
"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"
}
return content
}
And the error message is : "Input is not a valid Avro schema (Service: Personalize, Status Code: 400