Talking about the most prominent use case of DynamoDB.
Applications that contains large amounts of data and are strict with the latency requirements. As the amount of data scales, the JOINs and advanced SQL operations can slow down your queries but with DynamoDB, your queries always have a predictable latency irrespective of size of your database.
DynamoDB is also accessible via an HTTP API and also performs authentication & authorization via IAM roles, that makes it perfect for building serverless applications.
If you're generating the recommendations and serving them to the user, DynamoDB's simple key-value access patterns make it a fast, reliable choice plus thats a very easy process.