本文介绍表格存储Python SDK。
注意事项
表格存储Python SDK从6.0.0版本开始仅支持Python 3(推荐Python 3.8及以上版本),不再支持Python 2。
如果您需要使用Python 2,请选择5.4.4版本之前的Python SDK。
如果使用HTTPS协议访问表格存储资源,推荐使用最新版本的Python SDK,并确保OpenSSL版本至少为0.9.8j(推荐1.0.2d)。
Python SDK已包含certifi包,可直接使用。如需更新根证书,请从根证书下载最新版本。
准备工作
功能列表
表格存储Python SDK支持宽表模型和时序模型的操作,具体功能请参见下表。
功能类型 | 功能操作 | 描述信息 |
创建一个数据表。 | ||
更新数据表的配置信息。 | ||
查看实例中所有数据表的名称。 | ||
查询数据表的配置信息。 | ||
删除指定的数据表。 | ||
将数据表中非分区键的主键列设置为自增列后,在写入数据时无需为自增列设置具体值,表格存储将自动生成自增列的值。 | ||
只有在数据满足更新条件的情况下,才能对表中数据进行更新,否则数据更新失败并给用户报错。 | ||
为数据表开启局部事务后,创建数据范围在一个分区键值内的局部事务用于数据读写操作。 | ||
将列当成一个原子计数器使用,对该列进行原子计数操作。 | ||
在服务端对读取结果再进行一次过滤,根据过滤器(Filter)中的条件决定返回的数据。 | ||
向数据表中写入数据。 | ||
从数据表中读取数据。 | ||
删除数据表中的数据。 | ||
为数据表创建一个多元索引。 | ||
列出指定表下的多元索引。 | ||
更新多元索引的数据生命周期。 | ||
查询多元索引的描述信息,包括多元索引的字段信息和索引配置等。 | ||
删除指定的多元索引。 | ||
按需清理多元索引中的历史数据或者延长数据保存时间。 | ||
基础查询类型包括全匹配查询、精确查询、多词精确查询、前缀查询、范围查询、通配符查询、列存在性查询、折叠(去重)、地理位置查询和嵌套类型查询。 | ||
查询条件支持包含一个或者多个子查询条件,根据子查询条件来判断数据是否满足查询条件。 | ||
使用多元索引查询数据时,您可以按照指定排列方式获取到返回数据;当返回结果行数较多时,通过使用跳转翻页或者连续翻页可以快速定位到所需数据。 | ||
可以实现求最小值、求最大值、求和、求平均值、统计行数、去重统计行数、按字段值分组、按范围分组、按地理位置分组、按过滤条件分组等操作;同时多个统计聚合功能可以组合使用,满足复杂的查询需求。 | ||
向量检索(KnnVectorQuery)使用数值向量进行近似最近邻查询,可以在大规模数据集中找到最相似的数据项。 | ||
当不关心整个结果集的顺序时,可以使用并发导出数据功能以更快的速度将命中的数据全部返回。 | ||
为数据表创建一个二级索引。 | ||
使用单行读取和范围读取的方式查询索引表中数据。如果所需属性列已包含在索引表中,可以直接从索引表读取,否则需要查找数据表以获取相关数据。 | ||
删除数据表中指定的二级索引。 | ||
为已存在的表或者索引创建映射关系。 | ||
为已存在的映射表添加或删除属性列。 | ||
删除映射关系。 | ||
列出当前数据库中的映射表列表。 | ||
查询表的描述信息,例如字段名称、字段类型等。 | ||
查询表的索引描述信息。 | ||
查询表中的数据。 |
功能类型 | 具体功能 | 描述信息 |
创建一个时序表。 | ||
更新时序表或时间线元数据配置。 | ||
查看实例中所有时序表的名称及其配置信息。 | ||
查询时序表描述信息,例如数据生命周期TTL配置等。 | ||
删除指定的时序表。 | ||
写入时序数据到时序表,支持批量写入。 | ||
查询指定时间线中符合条件的时序数据。 | ||
指定多种条件检索时间线信息,例如度量名称、数据源信息等。 | ||
更新时间线元数据,支持批量更新。 | ||
删除时间线元数据,支持批量删除。 | ||
为已存在的表或者索引创建映射关系。 | ||
为已存在的映射表添加或删除属性列。 | ||
删除映射关系。 | ||
列出当前数据库中的映射表列表。 | ||
查询表的描述信息,例如字段名称、字段类型等。 | ||
查询表的索引描述信息。 | ||
查询表中的数据。 |
兼容性说明
当前最新版本为6.x.x版本,新版本对历史版本的兼容性如下:
对5.x.x系列的SDK兼容。
5.4.x版本、5.3.x版本和5.2.x版本兼容。5.2.1和5.1.0在如下情况不兼容:
Search接口返回结果的类型。
5.1.0及以前版本的返回结果默认为Tuple类型。从5.2.0开始默认返回结果为SearchResponse对象,SearchResponse已实现
__iter__
方法,支持遍历;如果需要返回Tuple类型的结果,请使用SearchResponse.v1_response()
方法实现。新增ParallelScan接口。
默认返回结果为ParallelScanResponse对象。如果需要返回Tuple类型的结果,请使用
ParallelScanResponse.v1_response()
方法实现。
对4.x.x系列的SDK兼容。
对2.x.x系列的SDK不兼容,原因是2.0系列版本中支持主键乱序,而4.0.0版本开始不允许主键乱序,涉及的不兼容点包括:
包名称由ots2变更为tablestore。
Client.create_table接口新增TableOptions参数。
put_row、get_row、update_row等接口的primary_key参数由dict类型变更为list类型,目的是保证主键的顺序性。
put_row、update_row等接口的attribute_columns参数由dict类型变更为list类型。
put_row、update_row等接口的attribute_columns参数新增timestamp。
get_row、get_range等接口新增max_version、time_range参数,这两个参数必须至少存在一个。
put_row、update_row、delete_row等接口新增return_type参数,目前仅支持RT_PK,表示返回值中包含当前行PK值。
put_row、update_row、delete_row等接口返回值中新增return_row,如果在请求中指定了return_type为RT_PK,则return_row中包含此行的PK值。
关于SDK版本迭代的更多信息,请参见Python SDK历史迭代版本。
相关文档
- 本页导读 (1)
- 注意事项
- 准备工作
- 功能列表
- 兼容性说明
- 相关文档