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 61252ac [DistSQL doc]Adjust the `sharding table rule` doc,
distinguish `Auto Table` and `Table` (#13991)
61252ac is described below
commit 61252acaf51a19daed052b175fa73b5ccbdf175d
Author: lanchengx <[email protected]>
AuthorDate: Wed Dec 8 14:41:08 2021 +0800
[DistSQL doc]Adjust the `sharding table rule` doc, distinguish `Auto Table`
and `Table` (#13991)
* Sharding table rule document distinguish table type.
---
.../syntax/rdl/rule-definition/sharding.cn.md | 38 +++++++++++++-------
.../syntax/rdl/rule-definition/sharding.en.md | 40 ++++++++++++++--------
2 files changed, 51 insertions(+), 27 deletions(-)
diff --git
a/docs/document/content/user-manual/shardingsphere-proxy/distsql/syntax/rdl/rule-definition/sharding.cn.md
b/docs/document/content/user-manual/shardingsphere-proxy/distsql/syntax/rdl/rule-definition/sharding.cn.md
index cedb53f..4a747ed 100644
---
a/docs/document/content/user-manual/shardingsphere-proxy/distsql/syntax/rdl/rule-definition/sharding.cn.md
+++
b/docs/document/content/user-manual/shardingsphere-proxy/distsql/syntax/rdl/rule-definition/sharding.cn.md
@@ -89,6 +89,7 @@ algorithmProperty:
- `shardingAlgorithm` 能够被不同的 `Sharding Table Rule` 复用,因此在执行 `DROP SHARDING
TABLE RULE` 时,对应的 `shardingAlgorithm` 不会被移除
- 如需移除 `shardingAlgorithm`,请执行 `DROP SHARDING ALGORITHM`
- `strategyType`
指定分片策略,请参考[分片策略](/cn/features/sharding/concept/sharding/#%E5%88%86%E7%89%87%E7%AD%96%E7%95%A5)
+- `Sharding Table Rule` 同时支持 `Auto Table` 和 `Table` 两种类型,两者在语法上有所差异,对应配置文件请参考
[数据分片](/cn/user-manual/shardingsphere-jdbc/yaml-config/rules/sharding/)
### Sharding Binding Table Rule
@@ -119,32 +120,43 @@ DROP SHARDING BROADCAST TABLE RULES (tableName [,
tableName] ...)
### Sharding Table Rule
+*Auto Table*
```sql
CREATE SHARDING TABLE RULE t_order (
RESOURCES(resource_0,resource_1),
-SHARDING_COLUMN=order_id,
-TYPE(NAME=hash_mod,PROPERTIES("sharding-count"=4)),
+SHARDING_COLUMN=order_id,TYPE(NAME=hash_mod,PROPERTIES("sharding-count"=4)),
GENERATED_KEY(COLUMN=another_id,TYPE(NAME=snowflake,PROPERTIES("worker-id"=123)))
-),t_order_item (
+);
+
+ALTER SHARDING TABLE RULE t_order (
+RESOURCES(resource_0,resource_1,resource_2,resource_3),
+SHARDING_COLUMN=order_id,TYPE(NAME=hash_mod,PROPERTIES("sharding-count"=16)),
+GENERATED_KEY(COLUMN=another_id,TYPE(NAME=snowflake,PROPERTIES("worker-id"=123)))
+);
+
+DROP SHARDING TABLE RULE t_order;
+
+DROP SHARDING ALGORITHM t_order_hash_mod;
+```
+
+*Table*
+
+```sql
+CREATE SHARDING TABLE RULE t_order_item (
DATANODES("resource_${0..1}.t_order_item_${0..1}"),
DATABASE_STRATEGY(TYPE=standard,SHARDING_COLUMN=user_id,SHARDING_ALGORITHM=database_inline),
TABLE_STRATEGY(TYPE=standard,SHARDING_COLUMN=order_id,SHARDING_ALGORITHM=table_inline),
GENERATED_KEY(COLUMN=another_id,TYPE(NAME=snowflake,PROPERTIES("worker-id"=123)))
);
-ALTER SHARDING TABLE RULE t_order (
-RESOURCES(resource_0,resource_1,resource_2,resource_3),
-SHARDING_COLUMN=order_id,
-TYPE(NAME=hash_mod,PROPERTIES("sharding-count"=16)),
-GENERATED_KEY(COLUMN=another_id,TYPE(NAME=snowflake,PROPERTIES("worker-id"=123)))
-),t_order_item (
+ALTER SHARDING TABLE RULE t_order_item (
DATANODES("resource_${0..3}.t_order_item${0..3}"),
DATABASE_STRATEGY(TYPE=standard,SHARDING_COLUMN=user_id,SHARDING_ALGORITHM=database_inline),
TABLE_STRATEGY(TYPE=standard,SHARDING_COLUMN=order_id,SHARDING_ALGORITHM=table_inline),
GENERATED_KEY(COLUMN=another_id,TYPE(NAME=uuid,PROPERTIES("worker-id"=123)))
);
-DROP SHARDING TABLE RULE t_order, t_order_item;
+DROP SHARDING TABLE RULE t_order_item;
CREATE DEFAULT SHARDING DATABASE STRATEGY (
TYPE = standard,SHARDING_COLUMN=order_id,SHARDING_ALGORITHM=algorithmsName
@@ -153,16 +165,16 @@ TYPE =
standard,SHARDING_COLUMN=order_id,SHARDING_ALGORITHM=algorithmsName
CREATE SHARDING ALGORITHM database_inline (
TYPE(NAME=inline,PROPERTIES("algorithm-expression"="resource_${user_id % 2}"))
),table_inline (
-TYPE(NAME=inline,PROPERTIES("algorithm-expression"="resource_${order_id % 2}"))
+TYPE(NAME=inline,PROPERTIES("algorithm-expression"="t_order_item_${order_id %
2}"))
);
ALTER SHARDING ALGORITHM database_inline (
TYPE(NAME=inline,PROPERTIES("algorithm-expression"="resource_${user_id % 4}"))
),table_inline (
-TYPE(NAME=inline,PROPERTIES("algorithm-expression"="resource_${order_id % 4}"))
+TYPE(NAME=inline,PROPERTIES("algorithm-expression"="t_order_item_${order_id %
4}"))
);
-DROP SHARDING ALGORITHM t_order_hash_mod;
+DROP SHARDING ALGORITHM database_inline;
```
### Sharding Binding Table Rule
diff --git
a/docs/document/content/user-manual/shardingsphere-proxy/distsql/syntax/rdl/rule-definition/sharding.en.md
b/docs/document/content/user-manual/shardingsphere-proxy/distsql/syntax/rdl/rule-definition/sharding.en.md
index fc6fe58..77950a8 100644
---
a/docs/document/content/user-manual/shardingsphere-proxy/distsql/syntax/rdl/rule-definition/sharding.en.md
+++
b/docs/document/content/user-manual/shardingsphere-proxy/distsql/syntax/rdl/rule-definition/sharding.en.md
@@ -89,6 +89,7 @@ algorithmProperty:
- `shardingAlgorithm` can be reused by different `Sharding Table Rule`, so
when executing `DROP SHARDING TABLE RULE`, the corresponding
`shardingAlgorithm` will not be removed
- To remove `shardingAlgorithm`, please execute `DROP SHARDING ALGORITHM`
- `strategyType` specifies the sharding strategy,please refer to[Sharding
Strategy](/en/features/sharding/concept/sharding/#sharding-strategy)
+- `Sharding Table Rule` supports both `Auto Table` and `Table` at the same
time. The two types are different in syntax. For the corresponding
configuration file, please refer to
[Sharding](/en/user-manual/shardingsphere-jdbc/yaml-config/rules/sharding/)
### Sharding Binding Table Rule
@@ -119,32 +120,43 @@ DROP SHARDING BROADCAST TABLE RULES
### Sharding Table Rule
+*Auto Table*
```sql
CREATE SHARDING TABLE RULE t_order (
RESOURCES(resource_0,resource_1),
-SHARDING_COLUMN=order_id,
-TYPE(NAME=hash_mod,PROPERTIES("sharding-count"=4)),
+SHARDING_COLUMN=order_id,TYPE(NAME=hash_mod,PROPERTIES("sharding-count"=4)),
GENERATED_KEY(COLUMN=another_id,TYPE(NAME=snowflake,PROPERTIES("worker-id"=123)))
-),t_order_item (
+);
+
+ALTER SHARDING TABLE RULE t_order (
+RESOURCES(resource_0,resource_1,resource_2,resource_3),
+SHARDING_COLUMN=order_id,TYPE(NAME=hash_mod,PROPERTIES("sharding-count"=16)),
+GENERATED_KEY(COLUMN=another_id,TYPE(NAME=snowflake,PROPERTIES("worker-id"=123)))
+);
+
+DROP SHARDING TABLE RULE t_order;
+
+DROP SHARDING ALGORITHM t_order_hash_mod;
+```
+
+*Table*
+
+```sql
+CREATE SHARDING TABLE RULE t_order_item (
DATANODES("resource_${0..1}.t_order_item_${0..1}"),
DATABASE_STRATEGY(TYPE=standard,SHARDING_COLUMN=user_id,SHARDING_ALGORITHM=database_inline),
TABLE_STRATEGY(TYPE=standard,SHARDING_COLUMN=order_id,SHARDING_ALGORITHM=table_inline),
GENERATED_KEY(COLUMN=another_id,TYPE(NAME=snowflake,PROPERTIES("worker-id"=123)))
);
-ALTER SHARDING TABLE RULE t_order (
-RESOURCES(resource_0,resource_1,resource_2,resource_3),
-SHARDING_COLUMN=order_id,
-TYPE(NAME=hash_mod,PROPERTIES("sharding-count"=16)),
-GENERATED_KEY(COLUMN=another_id,TYPE(NAME=snowflake,PROPERTIES("worker-id"=123)))
-),t_order_item (
-DATANODES("resource_${0..3}.t_order_item_${0..3}"),
+ALTER SHARDING TABLE RULE t_order_item (
+DATANODES("resource_${0..3}.t_order_item${0..3}"),
DATABASE_STRATEGY(TYPE=standard,SHARDING_COLUMN=user_id,SHARDING_ALGORITHM=database_inline),
TABLE_STRATEGY(TYPE=standard,SHARDING_COLUMN=order_id,SHARDING_ALGORITHM=table_inline),
GENERATED_KEY(COLUMN=another_id,TYPE(NAME=uuid,PROPERTIES("worker-id"=123)))
);
-DROP SHARDING TABLE RULE t_order, t_order_item;
+DROP SHARDING TABLE RULE t_order_item;
CREATE DEFAULT SHARDING DATABASE STRATEGY (
TYPE = standard,SHARDING_COLUMN=order_id,SHARDING_ALGORITHM=algorithmsName
@@ -153,16 +165,16 @@ TYPE =
standard,SHARDING_COLUMN=order_id,SHARDING_ALGORITHM=algorithmsName
CREATE SHARDING ALGORITHM database_inline (
TYPE(NAME=inline,PROPERTIES("algorithm-expression"="resource_${user_id % 2}"))
),table_inline (
-TYPE(NAME=inline,PROPERTIES("algorithm-expression"="resource_${order_id % 2}"))
+TYPE(NAME=inline,PROPERTIES("algorithm-expression"="t_order_item_${order_id %
2}"))
);
ALTER SHARDING ALGORITHM database_inline (
TYPE(NAME=inline,PROPERTIES("algorithm-expression"="resource_${user_id % 4}"))
),table_inline (
-TYPE(NAME=inline,PROPERTIES("algorithm-expression"="resource_${order_id % 4}"))
+TYPE(NAME=inline,PROPERTIES("algorithm-expression"="t_order_item_${order_id %
4}"))
);
-DROP SHARDING ALGORITHM t_order_hash_mod;
+DROP SHARDING ALGORITHM database_inline;
```
### Sharding Binding Table Rule