用戶在rule.xml中配置枚舉值文件的路徑以及片段索引是字符串還是數字,DBLE會在啟動時將枚舉值文件加載到內存中形成映射表。
在DBLE的運行過程中,當用戶使用該算法訪問表時,將提取WHERE子句中的碎片索引值,並通過直接查找映射表獲得碎片編號。
與MyCat的相似分割算法相比
中間件
DBLE
我的貓
分段算法的類型枚舉分區算法分段枚舉
這兩個中間件在枚舉分段算法的使用上沒有區別。
開發中的註意事項
碎片索引1。整數(可以是負數)或字符串(不包括=和換行符)
碎片索引2。枚舉值不能重復。
Male=0Male=1
或者
123=1123=2
會導致分片策略加載錯誤。
碎片索引3。不同的枚舉值可以映射到同壹個片段。
Mr = 0 Mrs = 1 miss = 1 ms = 1123 = 0
註意操作和維護
擴容:1。不需要數據重新平衡來增加枚舉值。
產能擴張2。當增加枚舉值的片段數量時,需要遷移本地數據。
縮1。減少枚舉值需要重新平衡數據。
產能萎縮2。當減少枚舉值的片段數量時,需要遷移本地數據。
配置註意點
配置項1。在rule.xml中,可配置的項目是?& ltproperty name="defaultNode " >、& ltproperty name="mapFile " >和
配置項目2。在rule.xml中配置?& ltproperty name="defaultNode " >?標簽,沒有必要配置此項。如果未配置此項,當用戶的碎片索引值落在mapFile定義的範圍內時,DBLE將報告錯誤。如果需要配置,它必須是壹個非負整數。當用戶的碎片索引值落在mapFile定義的範圍內時,DBLE會將這個值路由到MySQL碎片。
配置項目3。安裝?使成形
配置項目4。編輯由映射文件配置的文件。
記錄格式為:= & lt片段號>
枚舉值可以是整數,也可以是任意字符(除了=和換行符),片段號必須是非負整數,記錄用換行符分隔,壹行只能有壹條記錄。枚舉值不能是字符串“DEFAULT_NODE”,允許在行首用“//”和“#”標註。
配置項目5。安裝?使成形