AWS SDK untuk JavaScript V2 telah mencapai end-of-support. Kami menyarankan Anda bermigrasi ke AWS SDK untuk JavaScript v3. Untuk detail dan informasi tambahan tentang cara bermigrasi, silakan lihat pengumuman
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Membuat dan Menggunakan Tabel di DynamoDB
Contoh kode Node.js ini menunjukkan:
Cara membuat dan mengelola tabel yang digunakan untuk menyimpan dan mengambil data dari DynamoDB.
Skenario
Mirip dengan sistem basis data lainnya, DynamoDB menyimpan data dalam tabel. Tabel DynamoDB adalah kumpulan data yang disusun ke dalam item yang analog dengan baris. Untuk menyimpan atau mengakses data di DynamoDB, Anda membuat dan bekerja dengan tabel.
Dalam contoh ini, Anda menggunakan serangkaian modul Node.js untuk melakukan operasi dasar dengan tabel DynamoDB. Kode menggunakan SDK for JavaScript untuk membuat dan bekerja dengan tabel dengan menggunakan metode kelas AWS.DynamoDB klien berikut:
Tugas Prasyarat
Untuk mengatur dan menjalankan contoh ini, pertama-tama selesaikan tugas-tugas ini:
Instal Node.js. Untuk informasi selengkapnya, lihat situs web Node.js
. Buat file konfigurasi bersama dengan kredensi pengguna Anda. Untuk informasi selengkapnya tentang menyediakan file kredensial bersama, lihat. Memuat Kredensial di Node.js dari File Kredensial Bersama
Membuat Tabel
Buat modul Node.js dengan nama fileddb_createtable.js. Pastikan untuk mengkonfigurasi SDK seperti yang ditunjukkan sebelumnya. Untuk mengakses DynamoDB, buat AWS.DynamoDB objek layanan. Buat objek JSON yang berisi parameter yang diperlukan untuk membuat tabel, yang dalam contoh ini mencakup nama dan tipe data untuk setiap atribut, skema kunci, nama tabel, dan unit throughput untuk penyediaan. Panggil createTable metode objek layanan DynamoDB.
// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set the region AWS.config.update({ region: "REGION" }); // Create the DynamoDB service object var ddb = new AWS.DynamoDB({ apiVersion: "2012-08-10" }); var params = { AttributeDefinitions: [ { AttributeName: "CUSTOMER_ID", AttributeType: "N", }, { AttributeName: "CUSTOMER_NAME", AttributeType: "S", }, ], KeySchema: [ { AttributeName: "CUSTOMER_ID", KeyType: "HASH", }, { AttributeName: "CUSTOMER_NAME", KeyType: "RANGE", }, ], ProvisionedThroughput: { ReadCapacityUnits: 1, WriteCapacityUnits: 1, }, TableName: "CUSTOMER_LIST", StreamSpecification: { StreamEnabled: false, }, }; // Call DynamoDB to create the table ddb.createTable(params, function (err, data) { if (err) { console.log("Error", err); } else { console.log("Table Created", data); } });
Untuk menjalankan contoh, ketik berikut ini di baris perintah.
node ddb_createtable.js
Kode contoh ini dapat ditemukan di sini GitHub
Daftar Tabel Anda
Buat modul Node.js dengan nama fileddb_listtables.js. Pastikan untuk mengkonfigurasi SDK seperti yang ditunjukkan sebelumnya. Untuk mengakses DynamoDB, buat AWS.DynamoDB objek layanan. Buat objek JSON yang berisi parameter yang diperlukan untuk daftar tabel Anda, yang dalam contoh ini membatasi jumlah tabel yang terdaftar ke 10. Panggil listTables metode objek layanan DynamoDB.
// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set the region AWS.config.update({ region: "REGION" }); // Create the DynamoDB service object var ddb = new AWS.DynamoDB({ apiVersion: "2012-08-10" }); // Call DynamoDB to retrieve the list of tables ddb.listTables({ Limit: 10 }, function (err, data) { if (err) { console.log("Error", err.code); } else { console.log("Table names are ", data.TableNames); } });
Untuk menjalankan contoh, ketik berikut ini di baris perintah.
node ddb_listtables.js
Kode contoh ini dapat ditemukan di sini GitHub
Menjelaskan Tabel
Buat modul Node.js dengan nama fileddb_describetable.js. Pastikan untuk mengkonfigurasi SDK seperti yang ditunjukkan sebelumnya. Untuk mengakses DynamoDB, buat AWS.DynamoDB objek layanan. Buat objek JSON yang berisi parameter yang diperlukan untuk menggambarkan tabel, yang dalam contoh ini mencakup nama tabel yang disediakan sebagai parameter baris perintah. Panggil describeTable metode objek layanan DynamoDB.
// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set the region AWS.config.update({ region: "REGION" }); // Create the DynamoDB service object var ddb = new AWS.DynamoDB({ apiVersion: "2012-08-10" }); var params = { TableName: process.argv[2], }; // Call DynamoDB to retrieve the selected table descriptions ddb.describeTable(params, function (err, data) { if (err) { console.log("Error", err); } else { console.log("Success", data.Table.KeySchema); } });
Untuk menjalankan contoh, ketik berikut ini di baris perintah.
node ddb_describetable.jsTABLE_NAME
Kode contoh ini dapat ditemukan di sini GitHub
Menghapus Tabel
Buat modul Node.js dengan nama fileddb_deletetable.js. Pastikan untuk mengkonfigurasi SDK seperti yang ditunjukkan sebelumnya. Untuk mengakses DynamoDB, buat AWS.DynamoDB objek layanan. Buat objek JSON yang berisi parameter yang diperlukan untuk menghapus tabel, yang dalam contoh ini mencakup nama tabel yang disediakan sebagai parameter baris perintah. Panggil deleteTable metode objek layanan DynamoDB.
// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set the region AWS.config.update({ region: "REGION" }); // Create the DynamoDB service object var ddb = new AWS.DynamoDB({ apiVersion: "2012-08-10" }); var params = { TableName: process.argv[2], }; // Call DynamoDB to delete the specified table ddb.deleteTable(params, function (err, data) { if (err && err.code === "ResourceNotFoundException") { console.log("Error: Table not found"); } else if (err && err.code === "ResourceInUseException") { console.log("Error: Table in use"); } else { console.log("Success", data); } });
Untuk menjalankan contoh, ketik berikut ini di baris perintah.
node ddb_deletetable.jsTABLE_NAME
Kode contoh ini dapat ditemukan di sini GitHub