閱讀380 返回首頁    go 小米 go 小米6


表格存儲的表__開發指南_表格存儲-阿裏雲

創建表格存儲的表時,需要指定表名、主鍵和預留讀/寫吞吐量。在傳統數據庫中,表具有預定義的結構信息,比如表的名稱、主鍵、列名和類型,表中的所有行都具有相同的列集合。表格存儲是 NoSQL 數據庫,除了主鍵需要格式外,沒有其他的格式信息。本章將介紹表的概念和使用。

表名

表格存儲的表的名稱必須符合以下約束:

  • 由英文字符(a-z)或(A-Z),數字(0-9)和下劃線(_)組成。

  • 首字母必須為英文字母(a-z)、(A-Z)或下劃線(_)。

  • 大小寫敏感。

  • 長度在 1~255 字符之間。

  • 同一個實例下不能有同名的表,但不同實例內的表名字可以相同。

主鍵

創建表格存儲的表時必須指定表的主鍵。主鍵包含 1~4 個主鍵列,每個主鍵列都有名字和類型。表格存儲對主鍵列的名字和類型都有限製,詳細信息可以參考表格存儲數據模型的主鍵一節。

表格存儲根據表的主鍵索引數據,表中的行按照它們的主鍵進行升序排序。

配置預留讀/寫吞吐量

為確保應用獲得穩定、低延時的服務,應用可以在創建表的時候指定預留讀/寫吞吐量。如果預留讀/寫吞吐量不為 0,表格存儲根據預留讀/寫吞吐量來為表分配相應的資源,滿足應用的預留吞吐量需求,同時根據配置的預留讀/寫吞吐量收取相應費用。應用可以根據自身的業務需求動態上調和下調表的預留讀/寫吞吐量。預留讀/寫吞吐量通過讀服務能力單元和寫服務能力單元這兩個數值來設置。

通過 UpdateTable 操作可以更新表的預留讀/寫吞吐量。預留讀/寫吞吐量的更新有如下規則:

  • 一張表上的兩次更新的間隔必須大於 2 分鍾。例如,12:43 AM 更新了某個表的預留讀/寫吞吐量,那麼隻有在 12:45 AM 之後才能再次更新該表的預留讀/寫吞吐量。更新間隔必須大於 2 分鍾的限製是針對表的,在 12:43 AM ~ 12:45 AM 之間,用戶還能更新其他表的預留讀/寫吞吐量。

  • 每個自然日內(UTC 時間 00:00:00 到第二天的 00:00:00,北京時間早上 8 點到第二天早上 8 點),上調或者下調預留讀/寫吞吐量的總次數不做限製,但是兩次調整之間的時間間隔仍然需要大於 2 分鍾。調整預留讀/寫吞吐量的定義是,隻要讀服務能力單元或寫服務能力單元配置其中一項進行了更新,則此次操作被視為對表進行了更新。

  • 預留讀/寫吞吐量調整完畢後 1 分鍾內生效。

對於訪問消耗的讀/寫吞吐量中超出預留讀/寫吞吐量的部分會計入按量讀/寫吞吐量,並根據按量讀/寫吞吐量單價進行計費。

由於預留讀/寫吞吐量在單價上低於按量讀/寫吞吐量,配置合適的預留讀/寫吞吐量可以進一步降低成本。例如,在用戶剛建表之後如果需要導入大量數據,可以設置較大的預留寫吞吐量,能夠以較低的寫成本將數據導入進來,當數據導入完畢後,再將預留讀/寫吞吐量下調。

分片鍵下的數據量限製

表格存儲按照分片鍵的範圍對表的數據進行分區,擁有相同分片鍵的行會被劃分到同一個分片。為了防止分片過大無法切分,建議單個分片鍵下的所有行數據大小之和不要超過 1 GB。

建表後加載時間

表格存儲的表在被創建之後需要 1 分鍾進行加載,在此期間對該表的讀/寫數據操作均會失敗。應用程序應該等待表加載完畢後再進行數據操作。

最佳實踐

表格存儲表的最佳實踐

使用表格存儲的 SDK 進行表操作

JAVA-SDK (NEW) — 表操作

Python-SDK — 表操作

最後更新:2016-12-05 18:13:00

  上一篇:go 工具篇__最佳實踐_表格存儲-阿裏雲
  下一篇:go 表格存儲的數據操作__開發指南_表格存儲-阿裏雲