Я хотел бы знать, можно ли иметь несколько запросов DynamoB с использованием только одного преобразователя Dynamo в AppSync? Или единственный / лучший способ усложнить обработку - использовать лямбда-функцию?
AWS Appsync: несколько запросов Dynamodb в одном преобразователе Dynamodb
Ответы (3)
Практически нет. Вы даже не можете запрашивать несколько индексов в одном определении ресурса для запроса.
Однако, если вы собираетесь использовать эту структуру для объединения нескольких таблиц DynamoDB, вы можете присоединять преобразователи не к записи запроса; но с той областью, которую вы хотите связать с другими полями.
У меня была проблема, связанная с привязкой пользователей к другой таблице для хранения сообщений, и я передал ее, прикрепив преобразователь, нацеленный на поле Сообщения типа User.
Эта проблема связана с аналогичной проблемой и очень полезна в таких случаях: https://github.com/awslabs/aws-mobile-appsync-sdk-js/issues/17
Если это не ваш случай, вы можете уточнить вопрос. В общем, я могу угадать, с какой целью вы связали таблицы.
Вы изучали пакетные преобразователи с AWS AppSync? https://docs.aws.amazon.com/appsync/latest/devguide/tutorial-dynamodb-batch.html
Это позволит вам выполнять запись в одну или несколько таблиц за один запрос, а также позволит вам выполнять несколько операций записи / чтения / удаления за один запрос.
Вы можете сделать это с помощью преобразователей конвейера https://docs.aws.amazon.com/appsync/latest/devguide/tutorial-pipeline-resolvers.html.