[英]Replace DynamoDB Scan operation with Query
我正在使用 DynamoDB 扫描操作从 DynamoDB 表中获取所有项目。 代码如下:
"use strict";
const AWS = require("aws-sdk");
module.exports.get = async () => {
try {
const dynamodb = new AWS.DynamoDB.DocumentClient();
console.log("getting items");
const params = {
TableName: "ProductsTable",
};
const result = await dynamodb.scan(params).promise();
console.log("got results", result.Items);
return { body: JSON.stringify(result.Items) };
} catch (error) {
console.error(error);
return {
status: 500,
message: error.message,
body: JSON.stringify(error),
};
}
};
但扫描不是一种有效的操作,不推荐使用。 如何使用查询操作从表中获取所有项目? 我可以用查询替换扫描操作来获取所有项目吗? 有没有其他方法可以从表中获取所有项目? 请告诉我。
谢谢
扫描效率低下,因为它必须查看所有内容。
如果您无论如何都想返回所有内容,则没有理由不使用 Scan。
事实上,您可以使用内置的并行扫描来加速该过程。
Query() 必须由您的应用程序代码手动并行运行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.