Вот мое определение объекта / модели в GraphQL SDL, который используется AWS Amplify для создания API синхронизации приложений и его таблицы в DynamoDB.
Я хочу, чтобы имя и автор были ключами бизнеса. Есть ли способ добиться этого? Я считаю, что в Prism есть директива @Unique для того же самого. Или, если это невозможно, можно ли добавить ограничение в таблицу в DynamoDB?
type Post
@model
@versioned
@auth(rules: [{allow: owner}])
{
id: ID!
name: String!
author: String!
description: String
}
@LisaMShon - в этом случае id является первичным ключом. имя и автор вместе образуют бизнес-ключ - это означает, что сообщение может быть однозначно идентифицировано с помощью комбинации имя + автор.
Однозначно идентифицируемое сообщение звучит как первичный ключ. В DyanmoDB нет понятия business key. Если вы хотите, чтобы комбинация имя + автор была уникальным идентификатором сообщения, то, возможно, вы можете установить свой идентификатор как имя + автор.





Что вы имеете в виду под бизнес-ключами? Первичный ключ / ключ сортировки?