java - DynamoDBMapper - 性能和最佳实践

标签 java amazon-dynamodb

在低级 API 上使用 DynamoDBMapper 是否会影响性能?我想性能开销会很小甚至微不足道,但我无法在网上找到任何这样的引用资料。

在线示例还显示了在 POJO 本身上使用的映射器注释。这是最佳实践还是让 POJO 保持不变并且使用一个单独的映射器来接受 POJO 来执行保存、查询、更新等会更好。我看到后者的优点是,如果/当你用 DynamoDB 替换时另一个数据库,它将通过额外的抽象层进行更清晰的重构。

最佳答案

第一点,您很可能不会看到任何显着的性能差异,因为它只是进行一些注释处理并缓存它们以减少对已经看到的类的进一步反射。最好的办法是实际对其进行基准测试,但我认为您会发现它可以忽略不计。

关于你的第二点,我会说“这取决于”基于你想要如何建模你的数据访问。但是,如果您这样做,选择走抽象 POJO 的路线,您必须小心您的注释,因为映射器处理它们的方式。我之前(大约一年前)遇到过问题,其中父类未使用 @Table 进行注释,而映射器难以提取正确的注释的子类。

关于java - DynamoDBMapper - 性能和最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28056494/

相关文章:

node.js - 超过预配吞吐量怎么办?

python - 使用 item_count 时 Boto 的 DynamoDB API 返回错误值

amazon-web-services - 如何进行地理距离查询仅返回尚未返回的结果 “Liked”,Elastic Search,Dynamo DB

python - dynamodb 更新非规范化数据并保持一致性

java - Android java.io.FileNotFoundException 没有这样的文件或>目录,尽管授予了权限

java - 如何使用java找到mongodb中第一个符合条件的文档?

java - Mockito void doAnswer 正确用法和目的

java - 是否可以从不允许使用 "Page Extraction"的 PDF 中提取文本?

java - 使用 jOOQ 以间隔实现 date_sub() 函数

amazon-web-services - 从 lambda 函数触发 Appsync 突变