「SequoiaDB巨杉資料庫」alter()概述2
引數
-
options
( Object, 必填 )通過
options
引數可以修改集合屬性,如指定集合的分割槽鍵, 是否以壓縮的形式插入資料等。可組合使用options
的如下選項:-
ReplSize
( Int32 ):寫操作需同步的副本數。其可選取值如下:- -1:表示寫請求需同步到該複製組若干活躍的節點之後,資料庫寫操作才 返回應答給客戶端。
- 0:表示寫請求需同步到該複製組的所有節點之後,資料庫寫操作才返回應 答給客戶端。
- 1 - 7:表示寫請求需同步到該複製組指定數量個節點之後,資料庫寫操作 才返回應答給客戶端。
格式:
ReplSize: <num>
-
ShardingKey
( Object格式:
ShardingKey:{<欄位1> : <1|-1>,[<欄位2> : <1|-1>, ...]}
- 已有的 ShardingKey 會被修改成新的 ShardingKey
- 集合只能存在於一個數據組中,或者集合為沒有掛載子表的主表
-
ShardingType
( String ):分割槽方式,預設為 hash 分割槽。其可選取值如下:- "hash":hash 分割槽。
- "range":範圍分割槽。
格式:
ShardingType : "hash" | "range"
- 集合只能存在於一個數據組中
-
Partition
( Int32 ):分割槽數。僅當選擇 hash 分割槽時填寫, 代表了 hash 分割槽的個數。其值必須是2的冪。 範圍在[2^3,2^20]。格式:
Partition : <分割槽數>
- 集合只能存在於一個數據組中
-
AutoSplit
( Bool ):標識新集合是否開啟自動切分功能格式:
AutoSplit : true | false
- 集合設定新的 hash 分割槽鍵後,可以使用該選項進行自動切分
-
EnsureShardingIndex
( Bool ):標識是否建立分割槽索引- 預設值是 true
-
Compressed
( Bool ):標識集合是否開啟資料壓縮功能。格式:
Compressed : true | false
- 如果設定 Compressed 為 true,而沒有指定 CompressionType,則 CompressionType 為 "snappy"
-
CompressionType
( String ):集合的壓縮演算法,"snappy" 或者 "lzw"。- "snappy":使用 snappy 演算法壓縮。
- "lzw":使用 lzw 演算法壓縮。
格式:
CompressionType : "snappy" | "lzw"
-
StrictDataMode
( Bool ):標識對該集合的操作是否開啟嚴格資料型別模式格式:
StrictDataMode : true | false
-
AutoIncrement
( Object ):自增欄位格式:
AutoIncrement : <option>
- 自增欄位可以修改的屬性有CurrentValue, Increment, StartValue, MinValue, MaxValue, CacheSize, AcquireSize, Cycled, Generated。
屬性具體功能請參考 。
- 自增欄位可以修改的屬性有CurrentValue, Increment, StartValue, MinValue, MaxValue, CacheSize, AcquireSize, Cycled, Generated。
Note:
- 各個選項的具體使用方式見 。
- 分割槽集合不能修改與分割槽相關的屬性,如 ShardingKey、Partition 等。
- EnsureShardingIndex 和 AutoSplit 僅對當前該次操作生效,僅當修改分割槽屬性,如 ShardingKey 等時有效
-
點選瞭解更多資訊