有没有办法使用 Boto3(Python 库)进行 ACID 事务?
我想将一个项目写入多个表,并确保写入已应用于所有表,否则回滚。我阅读了 Boto3 文档,没有看到任何提及事务或 ACID 操作的内容。
我查看了这个库: http://dynamodb-mapper.readthedocs.io/en/latest/
我检查了代码,它似乎使用的是旧的 boto 库,并且似乎不再受支持。
我知道有一个用于事务的 AWS 解决方案: https://aws.amazon.com/blogs/aws/dynamodb-transaction-library/
这是使用 Java 代码完成的。我想知道你们中是否有人能够使用 Boto3 在 DynamoDB 上执行事务?
谢谢
最佳答案
boto3 库不提供任何对跨表事务的支持,就像您引用的 Java 客户端库所支持的那样。 DynamoDB 本身并不原生支持此功能,因此此类事务必须在客户端层实现,并且您的表必须设计为支持客户端软件所需的字段。
当然有可能实现一个类似于 Java 的 Python 事务客户端,但据我所知,还没有人做到了。
关于python - 与 DynamoDB 库 Boto3 的事务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41668694/