全部產品
Search
文件中心

Tablestore:資料表操作

更新時間:Mar 07, 2025

資料表主要用於資料的儲存與查詢。建立資料表後,您可以根據實際情況管理資料表,例如擷取執行個體中的所有表名稱、查詢資料表的配置資訊、更新資料表的配置資訊等。

注意事項

  • 單個執行個體最多可以建立64張資料表。

  • 建立成功的資料表不能立即提供讀寫服務。通常在建表成功後一分鐘左右,便可對新建立的表進行讀寫操作。

  • 主鍵列自增和局部事務功能無法同時使用。如果在建立資料表時配置了主鍵列自增,即使開啟局部事務也不會生效。

功能介紹

  • 建立資料表

    在建立資料表時,您需要指定資料表的結構資訊和配置資訊。

    • 資料表的結構資訊,包括資料表名稱、主鍵定義以及預定義列的配置。

    • 資料表的配置資訊,您可以根據實際情況設定。配置項說明請參見下表。

      配置項

      描述

      主鍵列自增

      建立資料表時,您可以將非分區鍵的主鍵列設定為自增列。在資料寫入過程中,無需為自增列指定具體值,Tablestore將自動產生自增列的值。

      資料版本和生命週期

      您可以使用資料版本以及資料生命週期(TTL)功能,有效地管理資料,從而減少資料存放區空間並降低儲存成本。

      是否允許更新

      預設允許通過UpdateRow更新寫入資料到資料表,您也可以在建立資料表後修改表的是否允許更新狀態。

      重要

      如果後續要使用多元索引生命週期,則必須禁止通過UpdateRow更新寫入資料。

      預留讀/寫輸送量

      對於高效能執行個體,您可以根據需要為資料表配置預留讀/寫輸送量。

      二級索引

      Tablestore提供了本地二級索引和全域二級索引,以滿足您在不同讀取一致性要求下的查詢情境。您可以在建立資料表時,建立一個或多個二級索引。

      說明

      使用二級索引時,需要在建立資料表時預先定義一些非主鍵列以及其類型,作為索引表的索引列或者屬性列。您也可以在建立資料表後新增或者刪除預定義列。

      資料加密

      Tablestore提供了資料落盤加密功能,以保證表資料安全。您可以在建立資料表時配置資料表加密。

      局部事務

      為資料表開啟局部事務後,使用局部事務功能,您可以建立資料範圍在一個分區索引值內的局部事務並對局部事務中的資料進行讀寫操作。

      重要
      • 僅Java SDK 5.11.0及以上版本支援為資料表開啟局部事務。

      • 如果建立資料表時未開啟局部事務功能,建立資料表後需要使用該功能,請提交工單進行申請。

  • 更新表配置

    修改指定的資料表配置資訊(例如資料生命週期、最大版本數、有效版本偏差等)和Stream配置。此外,還可以為高效能型執行個體中資料表調整預留讀寫輸送量。

  • 列出表名稱

    擷取當前執行個體下已建立的所有資料表名稱。

  • 查詢表描述資訊

    查詢指定的資料表結構、預留讀/寫輸送量詳情等資訊。

  • 刪除資料表

    刪除指定的資料表。

建立資料表

通過Table Store控制台執行以下操作建立資料表。

  1. 進入執行個體管理頁面。

    1. 登入Table Store控制台

    2. 在頁面上方,選擇資源群組和地區。

    3. 概覽頁面,單擊執行個體別名或在執行個體操作列單擊執行個體管理

  2. 執行個體詳情頁簽,單擊建立資料表

  3. 建立資料表對話方塊,按照下表說明配置相關參數

    參數

    描述

    資料表名稱

    資料表名稱,用於在執行個體中唯一標識一張資料表。

    資料表的命名規則為由大小寫字母、數字或底線(_)組成,且只能以字母或底線(_)開頭,長度在1到255個位元組之間。

    表主鍵

    表中的一列或多列,用於唯一標識表中的一條記錄。

    輸入表主鍵名稱並選擇資料類型,單擊添加表主鍵,可加入新的主鍵。

    單表最多可設定4個主鍵,第一個主鍵預設為分區鍵。主鍵的配置及順序設定後不能修改。

    重要
    • Tablestore支援將主鍵列設定為自增列,每張表只能設定一個主鍵列為自增列,且分區鍵不能設定為自增列。

    • 主鍵列設定為自增列後,在寫入一行資料時,該主鍵列無需填值,Tablestore會自動產生該主鍵列的值。自動產生的主鍵列的值在分區鍵內嚴格遞增且唯一。

    • 表主鍵名稱的命名規則為由大小寫字母、數字或底線(_)組成,且只能以字母或底線(_)開頭,長度在1個~255個位元組之間。

    • 主鍵的資料類型可選為字串整型二進位

    是否允許更新

    是否允許通過UpdateRow更新寫入資料。預設值為,表示允許通過UpdateRow更新寫入資料。

    當要使用多元索引生命週期功能時,您必須將此參數設定為,即不允許通過UpdateRow更新寫入資料。關於多元索引生命週期的更多資訊,請參見生命週期管理

    是否加密

    是否開啟資料落盤加密。系統預設未開啟資料落盤加密功能。開啟是否加密開關,即可開啟資料落盤加密功能。

    重要

    資料落盤加密功能開啟後不支援關閉,請謹慎操作。

    加密類型

    資料的加密類型。只有開啟是否加密開關時,需要配置該選項。取值範圍如下:

    • kms服務主要金鑰Tablestore會自動建立KMS服務主要金鑰用於資料落盤加解密。

    • BYOK自訂密鑰Tablestore會基於您自訂的密鑰進行資料落盤加解密。

      重要

      使用BYOK自訂密鑰的加密類型前,您需要通過KMS控制台建立軟體密鑰,然後建立自訂角色並配置許可權。具體操作,請參見基於BYOK自訂祕密金鑰加密

    密鑰ID

    密鑰的ID。只有當加密類型選擇BYOK自訂密鑰時,需要配置該選項。

    ARN

    角色ARN。只有當加密類型選擇BYOK自訂密鑰時,需要配置該選項。

  4. (可選)在建立資料表對話方塊,進行進階配置或者建立二級索引。

    當需要對資料表設定資料生命週期等進階配置或者建立二級索引時,請執行此步驟。

    配置進階參數

    如果需要管理表中資料的儲存時間長度,您可以指定資料生命週期;如果需要相同主鍵的多個版本資料,您可以指定最大版本數。更多資訊,請參見資料版本和生命週期

    對於按量模式下的高效能執行個體,如果要通過預留輸送量節省成本,您可以指定資料表的預留讀輸送量或寫輸送量。更多資訊,請參見預留讀/寫輸送量

    1. 開啟進階設定開關。

    2. 根據下表說明配置進階參數。

      參數

      描述

      資料生命週期

      資料表中資料的儲存時間。當資料的儲存時間超過設定的資料生命週期時,系統會自動清理超過資料生命週期的資料。單位為秒。

      取值:大於等於86400秒(一天)或-1(資料永不到期)。

      最大版本數

      資料表中的屬性列能夠保留資料的最大版本個數。當屬性列資料的版本個數超過設定的最大版本數時,系統會自動刪除較早版本的資料。

      取值必須為非0整數。

      資料有效版本偏差

      指定的資料版本號碼與系統目前時間偏差的允許最大值,單位為秒。有效版本偏差為正整數,可以大於1970-01-01 00:00:00 UTC時間到目前時間的秒數。

      只有當寫入資料所有列的版本號碼與寫入時時間的差值在資料有效版本偏差範圍內,資料才能成功寫入。

      屬性列的有效版本範圍為[max{資料寫入時間-有效版本偏差,資料寫入時間-資料生命週期},資料寫入時間+有效版本偏差)

      預留讀輸送量

      容量型執行個體不支援該參數。

      為資料表預留讀輸送量或寫輸送量。取值範圍為0~100000,且取值必須為整數。單位為CU。

      • 預留讀輸送量預留寫輸送量大於0時,Tablestore會根據配置為資料表分配和預留相應資源,且資料表建立成功後,將會立即按照預留輸送量開始計費。

      • 預留讀輸送量預留寫輸送量為0時,Tablestore不會為資料表分配和預留相應資源。

      預留寫輸送量

    配置二級索引

    當某些應用需要使用不同屬性作為查詢條件來執行資料查詢時,您可以通過將這些屬性作為二級索引的主鍵列實現按照屬性快速查詢資料的需求。更多資訊,請參見二級索引

    1. 開啟建立二級索引開關。

    2. 單擊添加預定義列,輸入預定義列名稱並選擇資料類型。

      預定義列名稱命名規則為由大小寫字母、數字或底線(_)組成,且只能以字母或底線(_)開頭,長度在1~255個位元組。

      預定義列的資料類型可選為字串整型二進位浮點數布爾值

    3. 單擊添加二級索引,輸入索引名稱,選擇索引主鍵,根據需要選擇索引預定義列及索引類型。

      重要

      索引名不能與資料表名稱相同,索引名和資料表名稱均必須在執行個體中唯一。

      索引名稱必須由大小寫字母、數字或底線(_)組成,且只能以字母或底線(_)開頭,長度在1個~255個位元組之間。

      • 索引主鍵可以是資料表主鍵和預定義列,支援多選;索引預定義列只能從資料表的預定義列中選擇,支援多選。但是選擇的索引預定義列不能與主鍵列重複。

      • 索引類型支援選擇為全域或者本地

        重要

        全域二級索引的第一列主鍵可根據需要選擇任意主鍵列或者預定義列,本地二級索引的第一列主鍵必須和資料表的第一列主鍵相同。

        全域二級索引以非同步方式將資料表中被索引的列和主鍵列的資料自動同步到索引表中,正常情況下同步延遲達到毫秒層級;本地二級索引以同步方式將資料表中被索引的列和主鍵列的資料自動同步到索引表中,當資料寫入資料表後,即可從索引表中查詢到資料。

  5. 單擊確定

管理資料表

請根據實際需要執行相應操作管理資料表。

操作

說明

列出表名稱

資料表列表頁簽,查看執行個體內的所有資料表名稱。

更新表資訊

  1. 資料表列表頁簽,單擊資料表名稱。

  2. 基本詳情頁簽的基本資料地區,單擊修改表屬性

  3. 修改表屬性對話方塊,根據需要修改資料生命週期、最大版本數、資料有效版本偏差、是否允許更新。

  4. 單擊確定

查詢表描述資訊

  1. 資料表列表頁簽,單擊資料表名稱。

  2. 基本詳情頁簽,查看錶資訊。

    基本資料地區,您可以查看錶的名稱、最大版本數、資料生命週期、資料有效版本偏差、是否允許更新等資訊;在進階功能地區,您可以查看錶主鍵列表、預定義列資訊等。

管理預定義列

  • 添加預定義列

    1. 資料表列表頁簽,單擊資料表名稱。

    2. 基本詳情頁簽的進階功能地區,單擊添加預定義列

    3. 添加預定義列對話方塊,單擊添加預定義列,然後填寫預定義列名稱並選擇欄位類型。

    4. 單擊確定

  • 刪除預定義列

    基本詳情頁簽的進階功能地區,單擊預定義列對應的image.png表徵圖,然後在刪除預定義列對話方塊中單擊確定

刪除資料表

  1. 資料表列表頁簽,單擊資料表操作列的image.png表徵圖,然後單擊刪除

  2. 刪除資料表對話方塊,確認表資訊正確,單擊刪除

開發整合

您可以使用以下命令列工具或SDK進行資料表操作。

功能

介面

調用方式

建立資料表

CreateTable

更新表配置

UpdateTable

列出表名稱

ListTable

查詢表描述資訊

DescribeTable

刪除資料表

DeleteTable

添加預定義列

AddDefinedColumn

通過SDK:JavaGo

刪除預定義列

DeleteDefinedColumn

通過SDK:JavaGo