使用 SDK 的 DynamoDB PartiQL 分页
DynamoDB PartiQL pagination using SDK
我目前正在使用 JS AWS-SDK 的 executeStatement 使用 PartiQL 在 DynamoDB 中进行分页,但我返回的对象不包含用于分页的 NextToken(仅 Items 数组)。
这就是代码的样子(非常简单):
const statement = `SELECT "user", "id" FROM "TABLE-X" WHERE "activity" = 'XXXX'`;
const params = {Statement: statement};
try {
const posted = await dynamodb.executeStatement(params).promise();
return { posted: posted };
} catch(err) {
throw new Error(err);
}
我想知道是否有人使用 PartiQL for DynamoDB 处理过分页。
会不会是因为我的分区键是字符串类型?
还在想办法。
提前致谢!
事实证明,如果您想要 NextToken,请勿使用 JavaScript 的 AWS SDK 版本 2。 使用版本 3。版本 3 将始终 return NextToken,即使它未定义。
从那里您可以计算出您的限制等(在您实际获得 NextToken 之前的默认限制是 1MB)。您需要查看 dynamodb v3 execute statement method.
你也可以看看dynamodb paginators,我没用过,打算研究一下
我目前正在使用 JS AWS-SDK 的 executeStatement 使用 PartiQL 在 DynamoDB 中进行分页,但我返回的对象不包含用于分页的 NextToken(仅 Items 数组)。 这就是代码的样子(非常简单):
const statement = `SELECT "user", "id" FROM "TABLE-X" WHERE "activity" = 'XXXX'`;
const params = {Statement: statement};
try {
const posted = await dynamodb.executeStatement(params).promise();
return { posted: posted };
} catch(err) {
throw new Error(err);
}
我想知道是否有人使用 PartiQL for DynamoDB 处理过分页。
会不会是因为我的分区键是字符串类型?
还在想办法。
提前致谢!
事实证明,如果您想要 NextToken,请勿使用 JavaScript 的 AWS SDK 版本 2。 使用版本 3。版本 3 将始终 return NextToken,即使它未定义。
从那里您可以计算出您的限制等(在您实际获得 NextToken 之前的默认限制是 1MB)。您需要查看 dynamodb v3 execute statement method.
你也可以看看dynamodb paginators,我没用过,打算研究一下