迁移到 DAX Node.js SDK V3 - Amazon DynamoDB
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

迁移到 DAX Node.js SDK V3

本迁移指南将有助于您转换现有的 DAX Node.js 应用程序。新的 SDK 需要 Node.js 18 或更高版本,并在如何构建 DynamoDB Accelerator 代码方面引入了几项重要变化。本指南将引导您了解主要区别,包括语法更改、新的导入方法和更新的异步编程模式。

V2 Node.js DAX 用法

const AmazonDaxClient = require('amazon-dax-client'); const AWS = require('aws-sdk'); var region = "us-west-2"; AWS.config.update({ region: region, }); var client = new AWS.DynamoDB.DocumentClient(); if (process.argv.length > 2) { var dax = new AmazonDaxClient({ endpoints: [process.argv[2]], region: region, }); client = new AWS.DynamoDB.DocumentClient({ service: dax }); } // Make Get Call using Dax var params = { TableName: 'TryDaxTable', pk: 1, sk: 1 } client.get(params, function (err, data) { if (err) { console.error( "Unable to read item. Error JSON:", JSON.stringify(err, null, 2) ); } else { console.log(data); } });

V3 Node.js DAX 用法

对于使用 DAX Node.js V3,Node 版本 18 或更高版本是首选版本。要移到 Node 18,请使用以下命令:

// Import AWS DAX V3 import { DaxDocument } from '@amazon-dax-sdk/lib-dax'; // Import AWS SDK V3 DynamoDBDocument ~ DocumentClient in V2 import { DynamoDBDocument } from '@aws-sdk/lib-dynamodb'; import { DynamoDBClient } from '@aws-sdk/client-dyanmodb'; // Create DynamoDBDocument var client = DynamoDBDocument.from(new DynamoDB({region: 'us-west-2'}); // Override DynamoDBDocument Client with DaxDocument if (process.argv.length > 2) { client = new DaxDocument({ endpoints: [process.argv[2]], region: 'us-west-2', }); } var params = { TableName: 'TryDaxTable', pk: 1, sk: 1 } // Dax Shifted it's API Calls to await/promise try { const results = await client.get(params); console.log(results); } catch (err) { console.error(err) }