OTS(2014-08-08) client for Node.js(ES6)
根据给定的表结构信息创建相应的表。
Example:
var keys = [{ 'name': 'uid', 'type': 'STRING' }];
var capacityUnit = {read: 1, write: 1};
yield client.createTable('metrics', keys, capacityUnit);
方法签名
方法 | exports.createTable() | ||
参数 | name(String) | 表名 |
|
参数 | keys(Array) | 主键列表 |
|
参数 | capacity(Object) | 保留容量单元 |
|
返回 | Object | 返回值 |
更新指定表的预留读吞吐量或预留写吞吐量设置,新设定将于更新成功一分钟内生效。
Example:
var capacityUnit = {read: 2, write: 1};
yield client.updateTable('metrics', capacityUnit);
方法签名
方法 | exports.updateTable() | ||
参数 | name(String) | 表名 |
|
参数 | capacity(Object) | 保留容量单元 |
|
返回 | Object | 返回值 |
获取当前实例下已创建的所有表的表名。
Example:
yield client.listTable();
方法签名
方法 | exports.listTable() | ||
返回 | Object | 返回值 |
查询指定表的结构信息和预留读写吞吐量设置信息。
Example:
yield client.describeTable('metrics');
方法签名
方法 | exports.describeTable() | ||
参数 | name(String) | 表名 |
|
返回 | Object | 返回值 |
删除本实例下指定的表
Example:
yield client.deleteTable('metrics');
方法签名
方法 | exports.deleteTable() | ||
参数 | name(String) | 表名 |
|
返回 | Object | 返回值 |
插入数据到指定的行,如果该行不存在,则新增一行;若该行存在,则覆盖原有行。
Example:
方法签名
方法 | exports.putRow() | ||
参数 | name(String) | 表名 |
|
返回 | Object | 返回值 |
根据给定的主键读取单行数据。
Example:
方法签名
方法 | exports.getRow() | ||
参数 | name(String) | 表名 |
|
返回 | Object | 返回值 |
更新指定行的数据,如果该行不存在,则新增一行;
若该行存在,则根据请求的内容在这一行中新增、修改或者删除指定列的值。
Example:
方法签名
方法 | exports.updateRow() | ||
参数 | name(String) | 表名 |
|
返回 | Object | 返回值 |
删除一行数据。
Example:
方法签名
方法 | exports.deleteRow() | ||
参数 | name(String) | 表名 |
|
返回 | Object | 返回值 |
读取指定主键范围内的数据。
Example:
var start = {
uid: OTS.InfMin
};
var end = {
uid: OTS.InfMax
};
var request = {
table_name: 'metrics',
direction: OTS.Direction.FORWARD,
columns_to_get: ['test'],
limit: 4,
inclusive_start_primary_key: start,
exclusive_end_primary_key: end
};
var response = yield client.getRange(request);
方法签名
方法 | exports.getRange() | ||
参数 | name(String) | 表名 |
|
返回 | Object | 返回值 |
批量读取一个或多个表中的若干行数据。
BatchGetRow操作可视为多个GetRow操作的集合,各个操作独立执行,独立返回结果,
独立计算服务能力单元。与执行大量的GetRow操作相比,使用BatchGetRow操作可以有效减少
请求的响应时间,提高数据的读取速率。
Example:
var tables = [
{
table_name: 'metrics',
put_rows: [
{
condition: {
row_existence: OTS.RowExistenceExpectation.IGNORE
},
primary_key: {
uid: 'test_uid'
},
attribute_columns: {
test: 'test_value'
}
}
],
update_rows: [],
delete_rows: []
}
];
var response = yield client.batchWriteRow(tables);
方法签名
方法 | exports.batchGetRow() | ||
参数 | name(String) | 表名 |
|
返回 | Object | 返回值 |
批量插入,修改或删除一个或多个表中的若干行数据。
BatchWriteRow操作可视为多个PutRow、UpdateRow、DeleteRow操作的集合,各个操作独立执行,独立返回结果,独立计算服务能力单元。
与执行大量的单行写操作相比,使用BatchWriteRow操作可以有效减少请求的响应时间,提高数据的写入速率。
Example:
方法签名
方法 | exports.batchWriteRow() | ||
参数 | tables(Array) | 对应了每个table下各操作的响应信息,包括是否成功执行,错误码和消耗的服务能力单元。 |
|
返回 | Object | 返回值 |
OTS Client
方法签名
函数 | Client() | ||
参数 | opts(Object) |
|
根据选项创建实例的客户端
Example:
var ots = require('ots2');
var client = ots.createClient({
accessKeyID: '<YOUR ACCESSKEYID>',
accessKeySecret: '<YOUR ACCESSKEYSECRET>',
instance: '<YOUR INSTANCE>',
region: '<YOUR REGION>'
});
方法签名
方法 | exports.createClient() | ||
参数 | opts(Object) | 选项 |
ProtoBuf定义
方法签名
属性 | module.exports | ||
名字 | ots2 |