Python SDK

更新时间:2025-04-03 06:53:52

本文介绍表格存储Python SDK。

注意事项

  • 表格存储Python SDK6.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)使用数值向量进行近似最近邻查询,可以在大规模数据集中找到最相似的数据项。

并发导出数据

当不关心整个结果集的顺序时,可以使用并发导出数据功能以更快的速度将命中的数据全部返回。

二级索引

创建二级索引

为数据表创建一个二级索引。

使用二级索引读取数据

使用单行读取和范围读取的方式查询索引表中数据。如果所需属性列已包含在索引表中,可以直接从索引表读取,否则需要查找数据表以获取相关数据。

删除二级索引

删除数据表中指定的二级索引。

SQL查询

创建映射关系

为已存在的表或者索引创建映射关系。

更新映射表属性列

为已存在的映射表添加或删除属性列。

删除映射关系

删除映射关系。

列出表名称列表

列出当前数据库中的映射表列表。

查询表的描述信息

查询表的描述信息,例如字段名称、字段类型等。

查询索引描述信息

查询表的索引描述信息。

查询数据

查询表中的数据。

功能类型

具体功能

描述信息

时序表操作

创建时序表

创建一个时序表。

更新时序表

更新时序表或时间线元数据配置。

列出时序表

查看实例中所有时序表的名称及其配置信息。

查询时序表描述信息

查询时序表描述信息,例如数据生命周期TTL配置等。

删除时序表

删除指定的时序表。

时序数据操作

写入时序数据

写入时序数据到时序表,支持批量写入。

查询时序数据

查询指定时间线中符合条件的时序数据。

时间线操作

检索时间线

指定多种条件检索时间线信息,例如度量名称、数据源信息等。

更新时间线

更新时间线元数据,支持批量更新。

删除时间线

删除时间线元数据,支持批量删除。

SQL查询

创建映射关系

为已存在的表或者索引创建映射关系。

更新映射表属性列

为已存在的映射表添加或删除属性列。

删除映射关系

删除映射关系。

列出表名称列表

列出当前数据库中的映射表列表。

查询表的描述信息

查询表的描述信息,例如字段名称、字段类型等。

查询索引描述信息

查询表的索引描述信息。

查询数据

查询表中的数据。

兼容性说明

当前最新版本为6.x.x版本,新版本对历史版本的兼容性如下:

  • 5.x.x系列的SDK兼容。

    5.4.x版本、5.3.x版本和5.2.x版本兼容。5.2.15.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_typeRT_PK,则return_row中包含此行的PK值。

关于SDK版本迭代的更多信息,请参见Python SDK历史迭代版本

相关文档

  • 如果要查看Python SDK源码,请访问GitHub

  • 如果要了解Python SDK错误处理方式,请参见错误处理

  • 如果要查看API信息,请参见API概览

  • 本页导读 (1)
  • 注意事项
  • 准备工作
  • 功能列表
  • 兼容性说明
  • 相关文档
AI助理

点击开启售前

在线咨询服务

你好,我是AI助理

可以解答问题、推荐解决方案等