This is an automated email from the ASF dual-hosted git repository.

zhangliang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git


The following commit(s) were added to refs/heads/master by this push:
     new 92c49788d1c Add property documentation for CosIdModShardingAlgorithm, 
CosIdIntervalShardingAlgorithm and CosIdSnowflakeIntervalShardingAlgorithm 
(#20922)
92c49788d1c is described below

commit 92c49788d1c3b60e2bc1bfcb3575ef3cb6a53eb7
Author: Ling Hengqian <[email protected]>
AuthorDate: Sun Sep 11 20:15:00 2022 +0800

    Add property documentation for CosIdModShardingAlgorithm, 
CosIdIntervalShardingAlgorithm and CosIdSnowflakeIntervalShardingAlgorithm 
(#20922)
---
 .../common-config/builtin-algorithm/sharding.cn.md | 54 ++++++++++++++++
 .../common-config/builtin-algorithm/sharding.en.md | 71 +++++++++++++++++++---
 2 files changed, 117 insertions(+), 8 deletions(-)

diff --git 
a/docs/document/content/user-manual/common-config/builtin-algorithm/sharding.cn.md
 
b/docs/document/content/user-manual/common-config/builtin-algorithm/sharding.cn.md
index 09e9d1027dd..3fa70f0d2ca 100644
--- 
a/docs/document/content/user-manual/common-config/builtin-algorithm/sharding.cn.md
+++ 
b/docs/document/content/user-manual/common-config/builtin-algorithm/sharding.cn.md
@@ -21,6 +21,20 @@ ShardingSphere 内置提供了多种分片算法,按照类型可以划分为
 | -------------- | -------- | ------ |
 | sharding-count | int      | 分片数量 |
 
+#### 基于 CosId 的取模分片算法
+
+基于 `me.ahoo.cosid:cosid-core` 的工具类实现的取模分片算法。
+参考 https://github.com/apache/shardingsphere/issues/14047 的讨论。
+
+类型:COSID_MOD
+
+可配置属性:
+
+| *属性名称*          | *数据类型* | *说明*                 |
+|-------------------| -------- |------------------------|
+| mod               | int      | 分片数量                 |
+| logic-name-prefix | String   | 分片数据源或真实表的前缀格式 |
+
 #### 哈希取模分片算法
 
 类型:HASH_MOD
@@ -103,6 +117,46 @@ Apache ShardingSphere 内置的标准分片算法实现类包括:
 | datetime-interval-amount (?) | int      | 分片键时间间隔,超过该时间间隔将进入下一分片             
                                                                                
                                 | 1       |
 | datetime-interval-unit (?)   | String   | 分片键时间间隔单位,必须遵循 Java ChronoUnit 
的枚举值。例如:MONTHS                                                                  
                                     | DAYS    |
 
+#### 基于 CosId 的固定时间范围的分片算法
+
+基于 `me.ahoo.cosid:cosid-core` 的工具类实现的固定时间范围的分片算法。
+当分片键为 JSR-310 的所含类或与时间相关的类,将转换为`java.time.LocalDateTime`后再做下一步分片。
+参考 https://github.com/apache/shardingsphere/issues/14047 的讨论。
+
+类型:COSID_INTERVAL
+
+可配置属性:
+
+| *属性名称*                 | *数据类型* | *说明*                                       
                                                | *默认值* |
+|--------------------------|---------|--------------------------------------------------------------------------------------------|
 ------- |
+| zone-id                  | String  | 时区,必须遵循 `java.time.ZoneId` 的所含值。 
例如:Asia/Shanghai                                          |         |
+| logic-name-prefix        | String  | 分片数据源或真实表的前缀格式                          
                                                   |         |
+| datetime-lower           | String  | 时间分片下界值,格式与 `yyyy-MM-dd HH:mm:ss` 
的时间戳格式一致                                                  |         |
+| datetime-upper           | String  | 时间分片上界值,格式与 `yyyy-MM-dd HH:mm:ss` 
的时间戳格式一致                                                  |         |
+| sharding-suffix-pattern  | String  | 分片数据源或真实表的后缀格式,必须遵循 Java 
DateTimeFormatter 的格式,必须和 `datetime-interval-unit` 保持一致。例如:yyyyMM |         |
+| datetime-interval-unit   | String  | 分片键时间间隔单位,必须遵循 Java ChronoUnit 
的枚举值。例如:MONTHS                                              |         |
+| datetime-interval-amount | int     | 分片键时间间隔,超过该时间间隔将进入下一分片                  
                                                   |         |
+
+#### 基于 CosId 的雪花ID固定时间范围的分片算法
+
+基于 `me.ahoo.cosid:cosid-core` 的工具类实现的雪花ID固定时间范围的分片算法。
+当分片键为 JSR-310 的所含类或与时间相关的类,将转换为`java.time.LocalDateTime`后再做下一步分片。
+参考 https://github.com/apache/shardingsphere/issues/14047 的讨论。
+
+类型:COSID_INTERVAL_SNOWFLAKE
+
+可配置属性:
+
+| *属性名称*                | *数据类型* | *说明*                                        
                                                      | *默认值* |
+|--------------------------|---------|---------------------------------------------------------------------------------------------------|
 ------- |
+| zone-id                  | String  | 时区,必须遵循 `java.time.ZoneId` 的所含值。 
例如:Asia/Shanghai                                                 |         |
+| logic-name-prefix        | String  | 分片数据源或真实表的前缀格式                          
                                                          |         |
+| datetime-lower           | String  | 时间分片下界值,格式与 `yyyy-MM-dd HH:mm:ss` 
的时间戳格式一致                                                        |         |
+| datetime-upper           | String  | 时间分片上界值,格式与 `yyyy-MM-dd HH:mm:ss` 
的时间戳格式一致                                                        |         |
+| sharding-suffix-pattern  | String  | 分片数据源或真实表的后缀格式,必须遵循 Java 
DateTimeFormatter 的格式,必须和 `datetime-interval-unit` 保持一致。例如:yyyyMM        |      
   |
+| datetime-interval-unit   | String  | 分片键时间间隔单位,必须遵循 Java ChronoUnit 
的枚举值。例如:MONTHS                                                     |         |
+| datetime-interval-amount | int     | 分片键时间间隔,超过该时间间隔将进入下一分片                  
                                                          |         |
+
 ### 复合分片算法
 
 #### 复合行表达式分片算法
diff --git 
a/docs/document/content/user-manual/common-config/builtin-algorithm/sharding.en.md
 
b/docs/document/content/user-manual/common-config/builtin-algorithm/sharding.en.md
index ffb14ded913..df6bf478f29 100644
--- 
a/docs/document/content/user-manual/common-config/builtin-algorithm/sharding.en.md
+++ 
b/docs/document/content/user-manual/common-config/builtin-algorithm/sharding.en.md
@@ -23,6 +23,20 @@ Attributes:
 | -------------- | ---------- | -------------- |
 | sharding-count | int        | Sharding count |
 
+#### Modulo sharding algorithm provided by CosId
+
+Modulo sharding algorithm implemented by the tool class based on 
`me.ahoo.cosid:cosid-core`.
+See the discussion at https://github.com/apache/shardingsphere/issues/14047 .
+
+Type: COSID_MOD
+
+Attributes:
+
+| *Name*          | *DataType* | *Description*                                 
    |
+|-------------------| -------- 
|---------------------------------------------------|
+| mod               | int      | Sharding count                                
    |
+| logic-name-prefix | String   | Prefix pattern of sharding data sources or 
tables |
+
 #### Hash Modulo Sharding Algorithm
 
 Type: HASH_MOD
@@ -97,14 +111,55 @@ Type: INTERVAL
 
 Attributes:
 
-| *Name*                       | *DataType* | *Description*                    
                                                                                
                                                                                
                               | *Default Value* |
-| ---------------------------- | ---------- | 
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
 --------------- |
-| datetime-pattern             | String     | Timestamp pattern of sharding 
value, must can be transformed to Java LocalDateTime. For example: yyyy-MM-dd 
HH:mm:ss, yyyy-MM-dd or HH:mm:ss etc. But Gy-MM etc. related to 
`java.time.chrono.JapaneseDate` are not supported   | -               |
-| datetime-lower               | String     | Datetime sharding lower 
boundary, pattern is defined `datetime-pattern`                                 
                                                                                
                                        | -               |
-| datetime-upper (?)           | String     | Datetime sharding upper 
boundary, pattern is defined `datetime-pattern`                                 
                                                                                
                                        | Now             |
-| sharding-suffix-pattern      | String     | Suffix pattern of sharding data 
sources or tables, must can be transformed to Java LocalDateTime, must be 
consistent with `datetime-interval-unit`. For example: yyyyMM                   
                                      | -               |
-| datetime-interval-amount (?) | int        | Interval of sharding value       
                                                                                
                                                                                
                               | 1               |
-| datetime-interval-unit (?)   | String     | Unit of sharding value interval, 
must can be transformed to Java ChronoUnit's Enum value. For example: MONTHS    
                                                                                
                               | DAYS            |
+| *Name*                       | *DataType* | *Description*                    
                                                                                
                                                                                
                             | *Default Value* |
+| ---------------------------- | ---------- 
|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
 --------------- |
+| datetime-pattern             | String     | Timestamp pattern of sharding 
value, must can be transformed to Java LocalDateTime. For example: yyyy-MM-dd 
HH:mm:ss, yyyy-MM-dd or HH:mm:ss etc. But Gy-MM etc. related to 
`java.time.chrono.JapaneseDate` are not supported | -               |
+| datetime-lower               | String     | Datetime sharding lower 
boundary, pattern is defined `datetime-pattern`                                 
                                                                                
                                      | -               |
+| datetime-upper (?)           | String     | Datetime sharding upper 
boundary, pattern is defined `datetime-pattern`                                 
                                                                                
                                      | Now             |
+| sharding-suffix-pattern      | String     | Suffix pattern of sharding data 
sources or tables, must can be transformed to Java LocalDateTime, must be 
consistent with `datetime-interval-unit`. For example: yyyyMM                   
                                    | -               |
+| datetime-interval-amount (?) | int        | Interval of sharding value, 
after which the next shard will be entered                                      
                                                                                
                                                                            | 1 
              |
+| datetime-interval-unit (?)   | String     | Unit of sharding value interval, 
must can be transformed to Java ChronoUnit's Enum value. For example: MONTHS    
                                                                                
                             | DAYS            |
+
+#### Fixed interval sharding algorithm provided by CosId
+
+A fixed time range sharding algorithm implemented by the tool class based on 
`me.ahoo.cosid:cosid-core`.
+When the sharding key is a JSR-310 containing class or a time-related class, 
it will be converted to `java.time.LocalDateTime` before the next sharding.
+See the discussion at https://github.com/apache/shardingsphere/issues/14047.
+
+Type:COSID_INTERVAL
+
+Attributes:
+
+| *Name*                   | *DataType*  | *Description*                       
                                                                                
                                                    | *Default Value* |
+|--------------------------|---------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
 ------- |
+| zone-id                  | String  | Time zone, which must follow the 
contained value of `java.time.ZoneId`. For example: Asia/Shanghai               
                                                       |         |
+| logic-name-prefix        | String  | Prefix pattern of sharding data sources 
or tables                                                                       
                                                |         |
+| datetime-lower           | String  | Datetime sharding lower boundary, 
pattern is consistent with the timestamp format of `yyyy-MM-dd HH:mm:ss`        
                                                      |         |
+| datetime-upper           | String  | Datetime sharding upper boundary, 
pattern is consistent with the timestamp format of `yyyy-MM-dd HH:mm:ss`        
                                                      |         |
+| sharding-suffix-pattern  | String  | Suffix pattern of sharding data sources 
or tables, must can be transformed to Java LocalDateTime, must be consistent 
with `datetime-interval-unit`. For example: yyyyMM |         |
+| datetime-interval-unit   | String  | Unit of sharding value interval, must 
can be transformed to Java ChronoUnit's Enum value. For example: MONTHS         
                                                  |         |
+| datetime-interval-amount | int     | Interval of sharding value, after which 
the next shard will be entered                                                  
                                                                                
          |
+
+#### Snowflake key-based fixed interval sharding algorithm provided by CosId
+
+Snowflake ID sharding algorithm with fixed time range implemented by tool 
class based on `me.ahoo.cosid:cosid-core`.
+When the sharding key is a JSR-310 containing class or a time-related class, 
it will be converted to `java.time.LocalDateTime` before the next sharding.
+See the discussion at https://github.com/apache/shardingsphere/issues/14047.
+
+Type:COSID_INTERVAL_SNOWFLAKE
+
+Attributes:
+
+| *Name*                   | *DataType*  | *Description*                       
                                                                                
                                               | *Default Value* |
+|--------------------------|---------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
 ------- |
+| zone-id                  | String  | Time zone, which must follow the 
contained value of `java.time.ZoneId`. For example: Asia/Shanghai               
                                                       |         |
+| logic-name-prefix        | String  | Prefix pattern of sharding data sources 
or tables                                                                       
                                                |         |
+| datetime-lower           | String  | Datetime sharding lower boundary, 
pattern is consistent with the timestamp format of `yyyy-MM-dd HH:mm:ss`        
                                                      |         |
+| datetime-upper           | String  | Datetime sharding upper boundary, 
pattern is consistent with the timestamp format of `yyyy-MM-dd HH:mm:ss`        
                                                      |         |
+| sharding-suffix-pattern  | String  | Suffix pattern of sharding data sources 
or tables, must can be transformed to Java LocalDateTime, must be consistent 
with `datetime-interval-unit`. For example: yyyyMM |         |
+| datetime-interval-unit   | String  | Unit of sharding value interval, must 
can be transformed to Java ChronoUnit's Enum value. For example: MONTHS         
                                                  |         |
+| datetime-interval-amount | int     | Interval of sharding value, after which 
the next shard will be entered                                                  
                                                          |
+
 
 ### Complex Sharding Algorithm
 

Reply via email to