Элемент пакетного обновления AppSync? - PullRequest
0 голосов
/ 15 ноября 2018

Согласно документации , похоже, что AppSync не поддерживает BatchUpdateItem (поддерживает только BatchPutItem и BatchGetItem).У меня есть случай использования, когда я хочу обновить определенный атрибут нескольких элементов в таблице.Есть ли эффективный способ сделать это в AppSync и DynamoDB?Я не могу сделать batchPutItem, потому что я мог перезаписывать элемент с устаревшими атрибутами (другой клиент обновил атрибут).Таким образом, единственная возможность заключается в том, чтобы выполнять UpdateItem по одному элементу за раз.Я думаю о том, чтобы в моем iOS-приложении был цикл, который вызывает UpdateItem n раз.Значит ли это, что будет n сетевых раундов?Я хочу быть эффективным с моим дизайном.Могу ли я в любом случае сделать все обновления в одной сети?Спасибо.

1 Ответ

0 голосов
/ 15 ноября 2018

Могу ли я в любом случае сделать все обновления за одну поездку по сети?

Я думаю, вы подходите с такой линией вопросов.

Вы можете попытаться настроить мутацию, которая будет обрабатываться источником данных функции Lambda.Пусть лямбда-функция сделает вашу петлю и сообщит о любых конфликтах.Таким образом, вы можете сделать все это одним сетевым вызовом.

Подробнее о преобразователях лямбда здесь: https://docs.aws.amazon.com/appsync/latest/devguide/tutorial-lambda-resolvers.html

...