问题标签 [aws-java-sdk-dynamodb]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1033 浏览

java - DynamoDB(Java)中基于数字限制和偏移的分页

我想在 DynamoDB 中实现类似于 Postgres的数字限制和基于偏移的分页。

我的 API 看起来像这样:http://foo.bar/user?offset=50&limit=20.

OutOfMemoryError在不考虑 DynamoDB使用ExclusiveStartKeyLastEvaluatedKey分页风险的情况下,在 Java 中执行此操作的最佳方法是什么?

编辑:

让我们假设基于偏移的分页是一个硬性要求,我不知道“先前”页面。我的 API 合同具有offsetlimit查询参数,如上所述。我不是在寻找“不要做基于偏移的分页”的答案。

0 投票
1 回答
266 浏览

java - 如果我们知道实体类的属性名称,有没有办法获取 DynamoDB 属性名称?

给定这样的 DynamoDB 实体

我想知道的是,如果我知道实体类中的属性名称dataDATA_VALUE

0 投票
1 回答
1131 浏览

java - 使用java将数据从Dynamo DB推送到elasticsearch

嗨,我在 java 中创建了一个处理程序,用于从 dynamo DB 获取事件

这是我的代码

Lambda 函数能够在 cloudwatch 中写入事件,但挑战是我必须将所有流式记录索引到 AWS 弹性搜索服务端点并对其进行索引。在搜索博客时,我在 python 和 node.js 中得到了一些代码示例,但我的要求是我必须在 java 中构建这个 lambda 函数

谁能建议如何在java lambda函数中实现这一点?

0 投票
2 回答
1171 浏览

amazon-s3 - java.io.FileNotFoundException (只读文件系统) // 上传文件到 S3

我正在尝试从地图列表中创建 csv 文件,并通过 lambda 函数将它们上传到 S3 存储桶。以下是代码:

获取以下 fileNotFound 异常:

java.io.FileNotFoundException:在 java.io.FileOutputStream.open(FileOutputStream.java:270) 在 java.io.FileOutputStream.open0(Native Method) 在 java.io.FileOutputStream 的 data_20200227192207.csv(只读文件系统)。 (FileOutputStream.java:213) 在 java.io.FileOutputStream.(FileOutputStream.java:133) 在 java.io.FileWriter.(FileWriter.java:78) 在 com.amazonaws.lambda.demo.PLMLambda.createCSV(PLMLambda. java:84) 在 com.amazonaws.lambda.demo.PLMLambda.handleRequest(PLMLambda.java:54) 在 com.amazonaws.lambda.demo.PLMLambda.handleRequest(PLMLambda.java:1) 在 lambdainternal.EventHandlerLoader$PojoHandlerAsStreamHandler.handleRequest (EventHandlerLoader.java:178) 在 lambdainternal.EventHandlerLoader$2.call(EventHandlerLoader.java:906) 在 lambdainternal.AWSLambda.startRuntime(AWSLambda.java:341) 在 lambdainternal.AWSLambda.(AWSLambda.java:63) 在 java.lang.Class.forName0(Native Method) 在 java.lang.Class.forName(Class. java:348) 在 lambdainternal.LambdaRTEntry.main(LambdaRTEntry.java:114)

0 投票
0 回答
37 浏览

aws-java-sdk - 覆盖 AWS SDK for Java 2 中的默认 SdkClientOption.SCHEDULED_EXECUTOR_SERVICE

有没有办法可以覆盖SdkClientOption.SCHEDULED_EXECUTOR_SERVICEAWS SDK for Java 2 中的默认设置?我想摆脱对应用程序不透明的所有线程池,并确保在所有非阻塞上下文中重用线程池。

0 投票
1 回答
618 浏览

java - Java 中的 AWS DynamoDB 分区键锁定实施

我在本地运行具有两个不同端口的相同应用程序。我提供的代码仅用于测试。这里 access_key 和 secret_key 将在后期从环境变量中提供。

当我在不同的端口上运行相同的应用程序时,我看到两者都能够获取 dynamodb 分区键中的锁。

这对我来说是全新的。如果我需要从 AWS 控制台在 AWS DynamoDB 中创建任何锁定机制,请需要您的支持。

下面是 AWS 控制台 DynamoDB 表快照和代码片段,我可以在其中看到日志:“获得锁!如果我死了,我的锁将在 10 秒后过期。” 来自两个正在运行的实例。根据我的要求,如果我从一个实例锁定,则另一个实例不应该获取锁,它应该提供日志“获取锁失败!”。

在 Spring Boot 中执行代码时也出现错误。AmazonDynamoDBLockClient:心跳线程收到中断,正在退出 run()(可能正在退出线程)

在此处输入图像描述

0 投票
0 回答
453 浏览

amazon-dynamodb - 如果一个事务在 dynamoDB 中引发错误,则回滚所有事务

我是 dynamoDB 的新手,目前正在尝试开发一个使用 transactWrite 写入 dynamoDB 数据库的模块。事务只允许 25 个项目的批次,但我想在数据库中添加 500 个项目在全有或全无的基础上。我在循环中使用 transactWrite,每批 25 个。我能够在出现错误时停止事务,但无法回滚已经提交的事务。谁能告诉我该怎么做?

0 投票
1 回答
2957 浏览

java - 如何使用@DynamoDbTable 注释动态传递 aws dynamodb 表名

我创建了一个 java 服务来从 dynamodb 获取详细信息,它工作正常,但我的挑战是我将表名硬编码到类文件@DynamoDbTable注释中,以便与不同的环境一起工作,我觉得这不是正确的方法。我在下面给出了我的代码,有人可以帮我解决这个问题。

代码示例

我的 DynamoDB 配置

我的 dynamodb 服务中的错误

构造函数 DynamoDBMapper(DynamoDB, DynamoDBMapperConfig) 未定义

我无法找出问题所在。如果我在类文件中使用表名,如果我尝试使用代码替换表名,它会正常工作,但最终会出错。

0 投票
1 回答
433 浏览

spring-boot - 如何使用 DynamoDB 表注释在 AWS DynamoDB 读/写操作中创建布尔数据类型

我在 java 中创建了一个 pojo 类来在 aws dynamodb 中创建/更新项目,当我尝试在 dynamodb 中创建/更新项目时它工作正常,但是在 dynamodb 数据类型中创建的列似乎是字符串而不是布尔值。我试过下面的注释,但每当行创建的数据类型似乎是字符串而不是布尔值。

DynamoDb 类.java

我已经给出了在我的类文件中使用的注释和示例属性以供参考。

0 投票
1 回答
695 浏览

spring-boot - 如何使用注释创建在 dynamoDb 中自动生成的序列号

我在我的 java spring boot 应用程序中创建了一个 pojo 类,并带有用于创建/更新的相应注释,它工作正常,但是当我使用自动生成的密钥注释时,它正在创建一些随机 id,但我希望这些 id 列作为序列号。下面我给出了我的 pojo 类的注释

生成的随机 Id 示例

如何像我们在 SQL 自动增量标识列中那样生成带有序列号的自动生成列?