Menggunakan Klien Dokumen DynamoDB - AWS SDK for JavaScript

Kami mengumumkan yang akan datang end-of-support untuk AWS SDK for JavaScript v2. Kami menyarankan Anda bermigrasi ke AWS SDK for JavaScript v3. Untuk tanggal, detail tambahan, dan informasi tentang cara bermigrasi, silakan merujuk ke pengumuman tertaut.

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

Menggunakan Klien Dokumen DynamoDB

JavaScript code example that applies to Node.js execution

Contoh kode Node.js ini menunjukkan:

  • Cara mengakses tabel DynamoDB menggunakan klien dokumen.

Skenario

Klien dokumen DynamoDB menyederhanakan bekerja dengan item dengan mengabstraksi gagasan nilai atribut. Abstraksi ini menganotasi JavaScript tipe asli yang disediakan sebagai parameter input, serta mengonversi data respons beranotasi ke tipe asli. JavaScript

Untuk informasi selengkapnya tentang class DynamoDB Document Client, AWS.DynamoDB.DocumentClientlihat di Referensi API. Untuk informasi selengkapnya tentang pemrograman dengan Amazon DynamoDB, lihat Pemrograman dengan DynamoDB di Panduan Pengembang Amazon DynamoDB.

Dalam contoh ini, Anda menggunakan serangkaian modul Node.js untuk melakukan operasi dasar pada tabel DynamoDB menggunakan klien dokumen. Kode menggunakan SDK for JavaScript untuk query dan scan tabel menggunakan metode kelas DynamoDB Document Client ini:

Tugas Prasyarat

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

Mendapatkan Item dari Tabel

Buat modul Node.js dengan nama fileddbdoc_get.js. Pastikan untuk mengkonfigurasi SDK seperti yang ditunjukkan sebelumnya. Untuk mengakses DynamoDB, buat objek. AWS.DynamoDB.DocumentClient Buat objek JSON yang berisi parameter yang dibutuhkan dapatkan item dari tabel, yang dalam contoh ini mencakup nama tabel, nama kunci hash dalam tabel itu, dan nilai kunci hash untuk item yang ingin Anda dapatkan. Panggil get metode klien dokumen DynamoDB.

// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set the region AWS.config.update({ region: "REGION" }); // Create DynamoDB document client var docClient = new AWS.DynamoDB.DocumentClient({ apiVersion: "2012-08-10" }); var params = { TableName: "EPISODES_TABLE", Key: { KEY_NAME: VALUE }, }; docClient.get(params, function (err, data) { if (err) { console.log("Error", err); } else { console.log("Success", data.Item); } });

Untuk menjalankan contoh, ketik berikut ini di baris perintah.

node ddbdoc_get.js

Kode contoh ini dapat ditemukan di sini GitHub.

Menempatkan Item di Tabel

Buat modul Node.js dengan nama fileddbdoc_put.js. Pastikan untuk mengkonfigurasi SDK seperti yang ditunjukkan sebelumnya. Untuk mengakses DynamoDB, buat objek. AWS.DynamoDB.DocumentClient Buat objek JSON yang berisi parameter yang diperlukan untuk menulis item ke tabel, yang dalam contoh ini mencakup nama tabel dan deskripsi item untuk ditambahkan atau diperbarui yang mencakup hashkey dan nilai serta nama dan nilai untuk atribut untuk diatur pada item. Panggil put metode klien dokumen DynamoDB.

// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set the region AWS.config.update({ region: "REGION" }); // Create DynamoDB document client var docClient = new AWS.DynamoDB.DocumentClient({ apiVersion: "2012-08-10" }); var params = { TableName: "TABLE", Item: { HASHKEY: VALUE, ATTRIBUTE_1: "STRING_VALUE", ATTRIBUTE_2: VALUE_2, }, }; docClient.put(params, function (err, data) { if (err) { console.log("Error", err); } else { console.log("Success", data); } });

Untuk menjalankan contoh, ketik berikut ini di baris perintah.

node ddbdoc_put.js

Kode contoh ini dapat ditemukan di sini GitHub.

Memperbarui Item dalam Tabel

Buat modul Node.js dengan nama fileddbdoc_update.js. Pastikan untuk mengkonfigurasi SDK seperti yang ditunjukkan sebelumnya. Untuk mengakses DynamoDB, buat objek. AWS.DynamoDB.DocumentClient Buat objek JSON yang berisi parameter yang diperlukan untuk menulis item ke tabel, yang dalam contoh ini mencakup nama tabel, kunci item yang akan diperbarui, satu set UpdateExpressions yang menentukan atribut item yang akan diperbarui dengan token yang Anda tetapkan nilai dalam parameter. ExpressionAttributeValues Panggil update metode klien dokumen DynamoDB.

// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set the region AWS.config.update({ region: "REGION" }); // Create DynamoDB document client var docClient = new AWS.DynamoDB.DocumentClient({ apiVersion: "2012-08-10" }); // Create variables to hold numeric key values var season = SEASON_NUMBER; var episode = EPISODES_NUMBER; var params = { TableName: "EPISODES_TABLE", Key: { Season: season, Episode: episode, }, UpdateExpression: "set Title = :t, Subtitle = :s", ExpressionAttributeValues: { ":t": "NEW_TITLE", ":s": "NEW_SUBTITLE", }, }; docClient.update(params, function (err, data) { if (err) { console.log("Error", err); } else { console.log("Success", data); } });

Untuk menjalankan contoh, ketik berikut ini di baris perintah.

node ddbdoc_update.js

Kode contoh ini dapat ditemukan di sini GitHub.

Melakukan Kueri Tabel

Contoh ini menanyakan tabel yang berisi informasi episode tentang seri video, mengembalikan judul episode dan subtitle episode musim kedua melewati episode 9 yang berisi frasa tertentu dalam subtitle mereka.

Buat modul Node.js dengan nama fileddbdoc_query.js. Pastikan untuk mengkonfigurasi SDK seperti yang ditunjukkan sebelumnya. Untuk mengakses DynamoDB, buat objek. AWS.DynamoDB.DocumentClient Buat objek JSON yang berisi parameter yang diperlukan untuk menanyakan tabel, yang dalam contoh ini mencakup nama tabel, yang ExpressionAttributeValues dibutuhkan oleh kueri, dan KeyConditionExpression yang menggunakan nilai-nilai tersebut untuk menentukan item mana yang dikembalikan kueri. Panggil query metode klien dokumen DynamoDB.

// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set the region AWS.config.update({ region: "REGION" }); // Create DynamoDB document client var docClient = new AWS.DynamoDB.DocumentClient({ apiVersion: "2012-08-10" }); var params = { ExpressionAttributeValues: { ":s": 2, ":e": 9, ":topic": "PHRASE", }, KeyConditionExpression: "Season = :s and Episode > :e", FilterExpression: "contains (Subtitle, :topic)", TableName: "EPISODES_TABLE", }; docClient.query(params, function (err, data) { if (err) { console.log("Error", err); } else { console.log("Success", data.Items); } });

Untuk menjalankan contoh, ketik berikut ini di baris perintah.

node ddbdoc_query.js

Kode contoh ini dapat ditemukan di sini GitHub.

Menghapus Item dari Tabel

Buat modul Node.js dengan nama fileddbdoc_delete.js. Pastikan untuk mengkonfigurasi SDK seperti yang ditunjukkan sebelumnya. Untuk mengakses DynamoDB, buat objek. AWS.DynamoDB.DocumentClient Buat objek JSON yang berisi parameter yang diperlukan untuk menghapus item dalam tabel, yang dalam contoh ini mencakup nama tabel serta nama dan nilai hashkey item yang ingin Anda hapus. Panggil delete metode klien dokumen DynamoDB.

// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set the region AWS.config.update({ region: "REGION" }); // Create DynamoDB document client var docClient = new AWS.DynamoDB.DocumentClient({ apiVersion: "2012-08-10" }); var params = { Key: { HASH_KEY: VALUE, }, TableName: "TABLE", }; docClient.delete(params, function (err, data) { if (err) { console.log("Error", err); } else { console.log("Success", data); } });

Untuk menjalankan contoh, ketik berikut ini di baris perintah.

node ddbdoc_delete.js

Kode contoh ini dapat ditemukan di sini GitHub.