Topik ini menjelaskan cara membuat tabel data di Tablestore menggunakan Node.js SDK.
Catatan penggunaan
Setelah membuat tabel data, tunggu hingga tabel dimuat sebelum melakukan operasi pada data. Jika tidak, operasi tersebut akan gagal. Proses ini biasanya memakan waktu beberapa detik.
Prasyarat
Deskripsi metode
createTable: function createTable(params, callback)Kode contoh
Buat tabel data
Kode contoh berikut membuat tabel test_table yang berisi satu kolom kunci utama bertipe String.
var params = {
// Informasi skema tabel data
tableMeta: {
tableName: 'test_table',
// Setidaknya satu kolom kunci utama diperlukan untuk membuat tabel data
primaryKey: [
{
name: 'id',
type: 'STRING'
}
],
// (Opsional) Tambahkan kolom pradefinisi
definedColumn: [
{
name: 'name',
type: TableStore.DefinedColumnType.DCT_STRING
}
]
},
// Informasi konfigurasi tabel data
tableOptions: {
// Saat membuat tabel data, Anda harus menentukan TTL. Nilai -1 menunjukkan bahwa data tidak pernah kedaluwarsa
timeToLive: -1,
// Saat membuat tabel data, Anda harus menentukan jumlah maksimum versi
maxVersions: 1,
// (Opsional) Tetapkan deviasi versi maksimum
maxTimeDeviation: 86400,
// (Opsional) Tentukan apakah pembaruan diizinkan
allowUpdate: true
},
// Saat membuat tabel data, Anda harus menetapkan throughput baca dan tulis yang dipesan (hanya instans kinerja tinggi dalam mode CU yang mendukung penetapan nilai non-nol untuk throughput baca dan tulis yang dipesan)
reservedThroughput: {
capacityUnit: {
read: 0,
write: 0
}
},
// (Opsional) Konfigurasikan informasi Stream
streamSpecification: {
enableStream: true,
expirationTime: 168
}
};
client.createTable(params, function (err, data) {
if (err) {
console.error('error:', err);
return;
}
console.log('success:', data);
});Buat tabel data dengan indeks sekunder
Kode contoh berikut membuat tabel data dan mengonfigurasi indeks sekunder.
var params = {
// Informasi skema tabel data
tableMeta: {
tableName: 'test_table',
// Kunci utama
primaryKey: [
{
name: 'id',
type: 'STRING'
}
],
// Kolom pradefinisi
definedColumn: [
{
name: 'name',
type: TableStore.DefinedColumnType.DCT_STRING
}
]
},
// Informasi konfigurasi tabel data
tableOptions: {
// TTL
timeToLive: -1,
// Jumlah maksimum versi
maxVersions: 1
},
// Throughput baca dan tulis yang dipesan (hanya instans kinerja tinggi dalam mode CU yang mendukung penetapan nilai non-nol untuk throughput baca dan tulis yang dipesan)
reservedThroughput: {
capacityUnit: {
read: 0,
write: 0
}
},
// Informasi indeks sekunder
indexMetas: [
{
name: 'test_table_index',
// Kunci utama indeks
primaryKey: ['id'],
// Kolom pradefinisi indeks
definedColumn: ['name'],
// Tipe indeks
indexType: TableStore.IndexType.IT_LOCAL_INDEX,
// Mode pembaruan indeks
indexUpdateMode: TableStore.IndexUpdateMode.IUM_SYNC_INDEX
}
]
};
client.createTable(params, function (err, data) {
if (err) {
console.error('error:', err);
return;
}
console.log('success:', data);
});