本文介紹TablestorePython SDK的使用流程、下載和版本相容性。
使用流程
Tablestore提供了寬表模型、時序模型、訊息模型等多種資料模型,TablestorePython SDK只支援使用寬表模型的功能操作。
寬表模型的一般使用流程如下:
SDK下載
Table StorePython 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版本之前的Table StorePython 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參考文檔。
如需瞭解Table Store的錯誤處理方式,請參見錯誤處理。