Я использую DynamodB с API Python, и у меня есть атрибут списка, список содержит сложные данные в нем.
Я хотел бы иметь возможность удалить конкретный предмет.
Я нашел этот учебник, объясняющий, как удалить элемент из списка по его индексу.
И нашел этот ТАК вопрос относительно ситуации.
Как в учебном пособии, так и в вопросе SO показано, как удалить элемент из списка по его индексу, у меня есть более конкретная ситуация, когда два пользователя могут использовать одну и ту же таблицу DynamodB одновременно, и оба они могутпытаясь удалить один и тот же элемент, при использовании индекса это может вызвать следующую ситуацию: имея список [1,2,3], два пользователя хотят удалить элемент «1» и используя список удаления [0],первый пользователь удаляет элемент 1, но теперь список равен [2,3], а второй пользователь удаляет элемент «2».
Я обнаружил, что вы можете удалить конкретный элемент по его значению при использовании типа данных набора DynamodB, но нет набора, который может содержать сложные данные, только двоичные данные, число и номер, и мне нужно хранить что-то, чтобольше похоже на: {"att1": [1,2,3], "att2": str, "attr3": {...}} и вложенные.
Как я могу удалить элемент без риска удаления другого элемента по индексу, если кто-то уже удалил его до того, как я заставил меня удалить не тот элемент?