Установить правила проверки для таблицы AWS DynamoDB

На самом деле я хочу реализовать проверки элементов таблицы AWS DynamoDB, которые должны предотвращать вставку / обновление записей в случае нарушения правил для полей элемента.

Является ли это возможным?

Или Можем ли мы создать лямбда-триггер для таблицы DynamoDB, который запускается перед вставкой / обновлением. Чтобы мы могли проверить правило проверки и обработать это.


person Sudhanshu    schedule 27.07.2017    source источник


Ответы (1)


DynamoDB не поддерживает проверку элементов на стороне базы данных. Он только проверяет, что когда вы добавляете элемент, он должен иметь атрибуты для ваших ключей (ключ раздела, ключ сортировки и т. Д.), И они имеют правильный тип. Кроме того, DynamoDB ничего не проверяет.

Кроме того, поскольку DynamoDB не имеет схемы и не накладывает ограничений на ваши атрибуты, он не проверяет, какие атрибуты имеют ваши элементы (единственное исключение - ключи).

Единственный вариант - проверить свои элементы на стороне сервера, прежде чем сохранять их в DynamoDB.

ОБНОВЛЕНИЕ

Можем ли мы создать лямбда-триггер для таблицы DynamoDB

DynamoDB не поддерживает лямбда-триггеры, которые выполняются перед добавлением элемента в базу данных. Единственный триггер, который поддерживается на данный момент, - это потоки DynamoDB, но он вызывается после, когда элемент сохраняется в таблице, и вызывается асинхронно, что означает, что существует небольшая задержка между элементами добавлен и запускается триггер.

person Ivan Mushketyk    schedule 27.07.2017
comment
Спасибо за ответ @Ivan. - person Sudhanshu; 28.07.2017
comment
@Sudhanshu Не могли бы вы проголосовать и одобрить ответ, пожалуйста? - person Ivan Mushketyk; 28.07.2017
comment
@Vinicius Поскольку DynamoDB не поддерживает проверку элементов на стороне базы данных перед записью элемента, он будет записан без какой-либо проверки. Лямбда-триггер (если настроен) будет выполняться только после записи элемента в таблицу. - person Ivan Mushketyk; 15.02.2019
comment
@IvanMushketyk Теперь я знаю, что ... Я просто говорю, что вы должны объяснить это в своем ответе, потому что об этом спрашивает ОП. И не имеет проверки, и только асинхронные триггеры после вставки - это разные вещи. - person Vinicius; 19.02.2019