表操作
更新时间:2020-03-06
创建表
描述
在指定instance下创建一张表,表名限制字符个数1-255,满足正则:[a-zA-Z_][a-za-z0-9_]{0,254},以字母或下划线开头。
请求参数
参数 | 参数类型 | 说明 |
---|---|---|
instance_name | String | 实例名称,创建表时必须指定 |
table_name | String | 期望创建的表的名称,创建表时必须指定 |
create_table_args | CreateTableArgs | 建表参数,创建表时必须指定 |
+table_version | long | 表版本号,创建表时其值必须为0 |
+compress_type | String | 压缩方式,可取以下值: NONE:不压缩 SNAPPY_ALL:使用snappy压缩 DEFAULT:使用操作的默认值,不同操作中含义不同 创建表时默认为NONE |
+ttl | int | 数据过期时间,单位为秒,设为0表示永不过期,默认值为0 |
+storage_type | String | 表存储类型,可取以下值: HighPerformance:使用SSD存储CommonPerformance:使用SATA存储创建表时若不指定则默认使用Instance的表存储类型 |
+max_versions | int | 最多保留版本数,取值范围[1, 50000] |
返回参数
无
示例
if __name__ == "__main__":
client = BtsClient(bts_sample_conf.config)
instance_name = b'instance1'
table_name = b'tab01'
create_table_args = CreateTableArgs()
create_table_args.table_version = 0
create_table_args.compress_type = 'SNAPPY_ALL'
create_table_args.ttl = 0
create_table_args.storage_type = 'CommonPerformance'
create_table_args.max_versions = 10
response = client.create_table(instance_name, table_name, create_table_args)
print(response)
更新表
描述
更新一张表的指定信息。
请求参数
参数 | 参数类型 | 说明 |
---|---|---|
instance_name | String | 实例名称,更新表信息时必须指定 |
table_name | String | 期望更新的表的名称,更新表信息时必须指定,且更新表信息不允许修改表的名称 |
update_table_args | UpdateTableArgs | 更新表信息相关参数,更新表信息时必须指定 |
+table_version | long | 表版本号,更新表信息时其值为表当前的版本号,可以通过show_table操作获取。此外,更新表信息时其值必须不为0 |
+compress_type | String | 压缩方式,可取以下值: NONE:不压缩 SNAPPY_ALL:使用snappy压缩 DEFAULT:使用操作的默认值,不同操作中含义不同 默认为不更新压缩方式 |
+ttl | int | 数据过期时间,单位为秒,设为0表示永不过期 |
+max_versions | int | 最多保留版本数,取值范围[1, 50000] |
返回参数
无
示例
if __name__ == "__main__":
client = BtsClient(bts_sample_conf.config)
instance_name = b'instance1'
table_name = b'tab01'
show_table_response = client.show_table(instance_name, table_name)
update_table_args = UpdateTableArgs()
update_table_args.table_version = show_table_response.table_version
update_table_args.compress_type = "NONE"
update_table_args.max_versions = 20
update_table_args.ttl = 86400
response = client.update_table(instance_name, table_name, update_table_args)
print(response)
删除表
描述
删除一张表。
请求参数
参数 | 参数类型 | 说明 |
---|---|---|
instance_name | String | 实例名称 |
table_name | String | 期望删除的表的名称 |
返回参数 无
示例
if __name__ == "__main__":
client = BtsClient(bts_sample_conf.config)
instance_name = b'instance1'
table_name = b'tab03'
response = client.drop_table(instance_name, table_name)
print(response)
显示表信息
描述
查询一张表的信息。
请求参数
参数 | 参数类型 | 说明 |
---|---|---|
instance_name | String | 实例名称 |
table_name | String | 期望查询的表的名称 |
返回参数
参数名称 | 参数类型 | 说明 |
---|---|---|
table_name | String | 表的名称 |
table_state | String | 表的状态信息,目前有以下四种状态: Normal:表状态正常,可正常读写 Creating:表正在创建中 Updating:表正在更新中 Dropping:表正在被删除 |
table_version | long | 当前table版本号,其值是最后一次更新表信息的时间戳 |
create_time | String | 表创建的UTC时间 |
compress_type | String | 数据压缩方式,默认为不压缩,可取以下值: NONE : 不压缩 SNAPPY_ALL : 使用snappy压缩 |
ttl | int | 数据过期时间,为0时永不过期,默认永不过期,单位秒 |
storage_type | String | 表存储类型,可取以下值: HighPerformance:SSD存储 CommonPerformance:SATA存储 |
max_versions | int | 最多保留版本数,取值范围[1, 50000] |
示例
if __name__ == "__main__":
client = BtsClient(bts_sample_conf.config)
instance_name = b'instance1'
table_name = b'tab01'
response = client.show_table(instance_name, table_name)
print(response)
列举所有表
描述
列举实例下所有表名称。
请求参数 无
返回参数
参数名称 | 参数类型 | 说明 |
---|---|---|
tables | List | table列表 |
+table_name | String | 表名称 |
+table_state | String | 表状态信息,有如下取值: Normal:表状态正常,可正常读写 Creating:表正在创建中 Dropping:表正在被删除 |
+table_version | long | 当前table版本号,值是最后一次更新表信息的时间戳 |
+create_time | String | 表创建的UTC时间 |
+storage_type | String | 表存储类型,可以取以下值: HighPerformance:SSD存储 CommonPerformance:SATA存储 |
+max_versions | int | 最多保留版本数,取值范围[1, 50000] |
示例
if __name__ == "__main__":
client = BtsClient(bts_sample_conf.config)
instance_name = b'instance1'
response = client.list_tables(instance_name)
print(response)