Membaca dan menulis item dalam batch di DynamoDB - AWS SDK for JavaScript

Panduan API Referensi AWS SDK for JavaScript V3 menjelaskan secara rinci semua API operasi untuk AWS SDK for JavaScript versi 3 (V3).

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Membaca dan menulis item dalam batch di DynamoDB

JavaScript code example that applies to Node.js execution

Contoh kode Node.js ini menunjukkan:

  • Cara membaca dan menulis batch item dalam tabel DynamoDB.

Skenario

Dalam contoh ini, Anda menggunakan serangkaian modul Node.js untuk menempatkan sekumpulan item dalam tabel DynamoDB dan membaca sekumpulan item. Kode menggunakan SDK for JavaScript untuk melakukan operasi baca dan tulis batch menggunakan metode ini dari kelas klien DynamoDB:

Tugas prasyarat

Untuk mengatur dan menjalankan contoh ini, pertama-tama selesaikan tugas-tugas ini:

  • Siapkan lingkungan proyek untuk menjalankan TypeScript contoh Node ini, dan instal modul yang diperlukan AWS SDK for JavaScript dan pihak ketiga. Ikuti instruksi pada GitHub.

  • Buat file konfigurasi bersama dengan kredensi pengguna Anda. Untuk informasi selengkapnya tentang menyediakan file kredensyal bersama, lihat File konfigurasi dan kredensyal bersama di Panduan Referensi Alat dan Alat.AWS SDKs

  • Buat tabel DynamoDB yang itemnya dapat Anda akses. Untuk informasi selengkapnya tentang membuat tabel DynamoDB, lihat. Membuat dan menggunakan tabel di DynamoDB

penting

Contoh-contoh ini menggunakan ECMAScript6 (ES6). Ini membutuhkan Node.js versi 13.x atau lebih tinggi. Untuk mengunduh dan menginstal versi terbaru dari Node.js, lihat unduhan Node.js. .

Namun, jika Anda lebih suka menggunakan sintaks CommonJS, silakan merujuk ke. JavaScript ES6/CommonJS sintaks

catatan

Untuk informasi tentang tipe data yang digunakan dalam contoh ini, lihat Tipe data yang didukung dan aturan penamaan di Amazon DynamoDB.

Membaca item dalam batch

Buat modul Node.js dengan nama filebatch-get-item.js. Pastikan untuk mengkonfigurasi SDK seperti yang ditunjukkan sebelumnya, termasuk mengunduh klien dan paket yang diperlukan. Untuk mengakses DynamoDB, buat objek layanan klienDynamoDB. Buat JSON objek yang berisi parameter yang diperlukan untuk mendapatkan sekumpulan item, yang dalam contoh ini mencakup nama satu atau lebih tabel untuk dibaca, nilai kunci untuk dibaca di setiap tabel, dan ekspresi proyeksi yang menentukan atribut untuk kembali. Panggil BatchGetItemCommand metode objek layanan DynamoDB.

import { BatchGetItemCommand, DynamoDBClient } from "@aws-sdk/client-dynamodb"; const client = new DynamoDBClient({}); export const main = async () => { const command = new BatchGetItemCommand({ RequestItems: { // Each key in this object is the name of a table. This example refers // to a PageAnalytics table. PageAnalytics: { // Each entry in Keys is an object that specifies a primary key. Keys: [ { // "PageName" is the partition key (simple primary key). // "S" specifies a string as the data type for the value "Home". // For more information about data types, // see https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.NamingRulesDataTypes.html#HowItWorks.DataTypes and // https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Programming.LowLevelAPI.html#Programming.LowLevelAPI.DataTypeDescriptors PageName: { S: "Home" }, }, { PageName: { S: "About" }, }, ], // Only return the "PageName" and "PageViews" attributes. ProjectionExpression: "PageName, PageViews", }, }, }); const response = await client.send(command); console.log(response.Responses["PageAnalytics"]); return response; };

Untuk menjalankan contoh, masukkan yang berikut ini di command prompt.

node batch-get-item.js

Kode contoh ini dapat ditemukan di sini GitHub.

Menulis item dalam batch

Buat modul Node.js dengan nama filebatch-write-item.js. Pastikan untuk mengkonfigurasi SDK seperti yang ditunjukkan sebelumnya, termasuk mengunduh klien dan paket yang diperlukan. Untuk mengakses DynamoDB, buat objek layanan klienDynamoDB. Buat JSON objek yang berisi parameter yang diperlukan untuk mendapatkan sekumpulan item, yang dalam contoh ini mencakup tabel tempat Anda ingin menulis item, kunci yang ingin Anda tulis untuk setiap item, dan atribut beserta nilainya. Panggil BatchWriteItemCommand metode objek layanan DynamoDB.

import { BatchWriteItemCommand, DynamoDBClient, } from "@aws-sdk/client-dynamodb"; const client = new DynamoDBClient({}); export const main = async () => { const command = new BatchWriteItemCommand({ RequestItems: { // Each key in this object is the name of a table. This example refers // to a Coffees table. Coffees: [ // Each entry in Coffees is an object that defines either a PutRequest or DeleteRequest. { // Each PutRequest object defines one item to be inserted into the table. PutRequest: { // The keys of Item are attribute names. Each attribute value is an object with a data type and value. // For more information about data types, // see https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.NamingRulesDataTypes.html#HowItWorks.DataTypes Item: { Name: { S: "Donkey Kick" }, Process: { S: "Wet-Hulled" }, Flavors: { SS: ["Earth", "Syrup", "Spice"] }, }, }, }, { PutRequest: { Item: { Name: { S: "Flora Ethiopia" }, Process: { S: "Washed" }, Flavors: { SS: ["Stone Fruit", "Toasted Almond", "Delicate"] }, }, }, }, ], }, }); const response = await client.send(command); console.log(response); return response; };

Untuk menjalankan contoh, masukkan yang berikut ini di command prompt.

node batch-write-item.js

Kode contoh ini dapat ditemukan di sini GitHub.