本文介绍表格存储Python SDK的使用流程、下载和版本兼容性。
使用流程
表格存储提供了宽表模型、时序模型、消息模型等多种数据模型,表格存储Python SDK只支持使用宽表模型的功能操作。
宽表模型的一般使用流程如下:
SDK下载
表格存储Python SDK从6.0.0版本开始仅支持Python 3,不再支持Python 2。
推荐的Python3版本:Python 3.8、Python 3.9、Python 3.10、Python 3.11和Python 3.12。
如果您需要使用Python 2,请您选择5.4.4版本之前的表格存储Python SDK。
关于SDK版本迭代的更多信息,请参见Python SDK历史迭代版本。
版本兼容性
当前最新版本为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历史迭代版本。
参考文档
如果要查看Python SDK源码,请访问Tablestore Python SDK GitHub网址。
如果要查看API信息,请访问API参考文档。
如需了解表格存储的错误处理方式,请参见错误处理。