本文介绍如何通过Node.js SDK创建表格存储的数据表。
注意事项
创建数据表后,请等待数据表加载完成后再进行数据操作,否则数据操作会失败,这个过程通常需要几秒钟。
前提条件
方法说明
createTable: function createTable(params, callback)
示例代码
创建数据表
以下示例代码创建了一张test_table表,该表包含1个 String类型的主键。
var params = {
// 数据表的结构信息
tableMeta: {
tableName: 'test_table',
// 创建数据表至少需要添加一个主键
primaryKey: [
{
name: 'id',
type: 'STRING'
}
],
// (可选)添加预定义列
definedColumn: [
{
name: 'name',
type: TableStore.DefinedColumnType.DCT_STRING
}
]
},
// 数据表的配置信息
tableOptions: {
// 创建数据表时必须指定数据生命周期,-1表示数据永不过期
timeToLive: -1,
// 创建数据表时必须指定最大版本数
maxVersions: 1,
// (可选)设置有效版本偏差
maxTimeDeviation: 86400,
// (可选)设置是否允许更新
allowUpdate: true
},
// 创建数据表时必须设置预留读写吞吐量(仅CU模式高性能实例支持设置数据表的预留读写吞吐量为非零值)
reservedThroughput: {
capacityUnit: {
read: 0,
write: 0
}
},
// (可选)设置Stream信息
streamSpecification: {
enableStream: true,
expirationTime: 168
}
};
client.createTable(params, function (err, data) {
if (err) {
console.error('error:', err);
return;
}
console.log('success:', data);
});
创建数据表时配置二级索引
以下示例代码创建数据表并配置二级索引。
var params = {
// 数据表结构信息
tableMeta: {
tableName: 'test_table',
// 主键
primaryKey: [
{
name: 'id',
type: 'STRING'
}
],
// 预定义列
definedColumn: [
{
name: 'name',
type: TableStore.DefinedColumnType.DCT_STRING
}
]
},
// 数据表配置信息
tableOptions: {
// 数据生命周期
timeToLive: -1,
// 最大版本数
maxVersions: 1
},
// 预留读写吞吐量(仅CU模式高性能实例支持设置数据表的预留读写吞吐量为非零值)
reservedThroughput: {
capacityUnit: {
read: 0,
write: 0
}
},
// 二级索引信息
indexMetas: [
{
name: 'test_table_index',
// 索引主键
primaryKey: ['id'],
// 索引预定义列
definedColumn: ['name'],
//索引类型
indexType: TableStore.IndexType.IT_LOCAL_INDEX,
//索引更新模式
indexUpdateMode: TableStore.IndexUpdateMode.IUM_SYNC_INDEX
}
]
};
client.createTable(params, function (err, data) {
if (err) {
console.error('error:', err);
return;
}
console.log('success:', data);
});
相关文档
该文章对您有帮助吗?