Skip to content

Commit b033baf

Browse files
💬Generate LLM translations (#2199)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: z <[email protected]>
1 parent a966020 commit b033baf

File tree

15 files changed

+297
-163
lines changed

15 files changed

+297
-163
lines changed

docs/cn/sql-reference/10-sql-commands/00-ddl/04-task/01-ddl-create_task.md

Lines changed: 33 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,16 @@ sidebar_position: 1
55

66
import FunctionDescription from '@site/src/components/FunctionDescription';
77

8-
<FunctionDescription description="Introduced or updated: v1.2.371"/>
8+
<FunctionDescription description="Introduced or updated: v1.2.738"/>
99

10-
CREATE TASK 语句用于定义一个新的 task,该 task 按照预定的时间表或基于 dag 的 task 图执行指定的 SQL 语句。
10+
CREATE TASK 语句用于定义一个新的 task,该 task 按照计划的时间表或基于 dag 的 task 图执行指定的 SQL 语句。
1111

1212
**注意:** 此功能仅在 Databend Cloud 中开箱即用。
1313

1414
## 语法
1515

1616
```sql
17-
CREATE TASK [ IF NOT EXISTS ] <name>
17+
CREATE [ OR REPLACE ] TASK [ IF NOT EXISTS ] <name>
1818
WAREHOUSE = <string>
1919
SCHEDULE = { <num> MINUTE | <num> SECOND | USING CRON <expr> <time_zone> }
2020
[ AFTER <string> [ , <string> , ... ]]
@@ -27,39 +27,39 @@ AS
2727
<sql>
2828
```
2929

30-
| 参数 | 描述 |
31-
| ------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------- |
32-
| IF NOT EXISTS | 可选。如果指定,则仅当不存在同名的 task 时才会创建 task。 |
33-
| name | task 的名称。这是一个必填字段。 |
34-
| WAREHOUSE | 必需。指定用于 task 的虚拟计算集群。 |
35-
| SCHEDULE | 必需。定义 task 运行的时间表。可以以分钟为单位指定,也可以使用 CRON 表达式以及时区指定。 |
36-
| SUSPEND_TASK_AFTER_NUM_FAILURES | 可选。task 在自动暂停之前连续失败的次数。 |
37-
| AFTER | 列出必须在当前 task 启动之前完成的 task。 |
38-
| WHEN boolean_expr | task 运行必须为 true 的条件。 |
39-
| [ERROR_INTEGRATION](../16-notification/index.md) | 可选。用于 task 错误通知的通知集成的名称,并应用特定的 [task 错误负载 ](./10-task-error-integration-payload.md)|
40-
| COMMENT | 可选。一个字符串,用作 task 的注释或描述。 |
41-
| session_parameter | 可选。指定在 task 运行期间用于 task 的会话参数。 |
42-
| sql | task 将执行的 SQL 语句,它可以是单个语句或脚本。这是一个必填字段。 |
30+
| 参数 | 描述 |
31+
| ------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
32+
| IF NOT EXISTS | 可选。如果指定,则仅当不存在同名的 task 时才会创建 task。 |
33+
| name | task 的名称。这是一个必填字段。 |
34+
| WAREHOUSE | 必需。指定用于 task 的虚拟计算集群。 |
35+
| SCHEDULE | 必需。定义 task 运行的时间表。可以以分钟为单位指定,也可以使用 CRON 表达式以及时区指定。 |
36+
| SUSPEND_TASK_AFTER_NUM_FAILURES | 可选。task 在自动挂起之前连续失败的次数。 |
37+
| AFTER | 列出必须在此 task 启动之前完成的 task。 |
38+
| WHEN boolean_expr | task 运行必须为 true 的条件。 |
39+
| [ERROR_INTEGRATION](../16-notification/index.md) | 可选。用于 task 错误通知的通知集成的名称,并应用特定的 [task 错误负载 ](./10-task-error-integration-payload.md) |
40+
| COMMENT | 可选。一个字符串文字,用作 task 的注释或描述。 |
41+
| session_parameter | 可选。指定在 task 运行期间用于 task 的会话参数。 |
42+
| sql | task 将执行的 SQL 语句,它可以是单个语句或脚本。这是一个必填字段。 |
4343

4444
### 使用说明
4545

4646
- 必须为独立 task 或 task DAG 中的根 task 定义时间表;否则,task 仅在手动使用 EXECUTE TASK 执行时运行。
4747
- 无法为 DAG 中的子 task 指定时间表。
48-
- 创建 task 后,必须执行 ALTER TASK … RESUME,task 才会根据 task 定义中指定的参数运行。
48+
- 创建 task 后,必须先执行 ALTER TASK … RESUME,然后 task 才能根据 task 定义中指定的参数运行。
4949
- When Condition 仅支持 `<boolean_expression>` 的子集
5050
task WHEN 子句中支持以下内容:
5151

52-
- [STREAM_STATUS](../../../20-sql-functions/17-table-functions/stream-status.md) 支持在 SQL 表达式中进行评估。此函数指示指定的 stream 是否包含更改跟踪数据。您可以使用此函数来评估指定的 stream 在开始当前运行之前是否包含更改数据。如果结果为 FALSE,则 task 不运行。
52+
- [STREAM_STATUS](../../../20-sql-functions/17-table-functions/stream-status.md) 支持在 SQL 表达式中进行评估。此函数指示指定的流是否包含更改跟踪数据。您可以使用此函数评估指定的流是否包含更改数据,然后再启动当前运行。如果结果为 FALSE,则 task 不运行。
5353
- 布尔运算符,例如 AND、OR、NOT 等。
5454
- 数值、字符串和布尔类型之间的转换。
5555
- 比较运算符,例如等于、不等于、大于、小于等。
56+
57+
:::note
58+
警告:在 task 中使用 STREAM_STATUS 时,引用流时必须包含数据库名称(例如,`STREAM_STATUS('mydb.stream_name')`)。
59+
:::
5660

57-
:::note
58-
警告:在 task 中使用 STREAM_STATUS 时,引用 stream 时必须包含数据库名称(例如,`STREAM_STATUS('mydb.stream_name')`)。
59-
:::
60-
61-
- 多个从单个表 stream 中使用更改数据的 task 检索不同的增量。当 task 使用 DML 语句使用 stream 中的更改数据时,stream 会提前偏移量。更改数据不再可供下一个 task 使用。目前,我们建议只有一个 task 使用 stream 中的更改数据。可以为同一表创建多个 stream,并由不同的 task 使用。
62-
- Task 不会在每次执行时重试;每次执行都是串行的。每个脚本 SQL 逐个执行,没有并行执行。这确保了 task 执行的顺序和依赖关系得到维护。
61+
- 多个从单个表流中使用更改数据的 task 检索不同的增量。当 task 使用 DML 语句使用流中的更改数据时,流会前进偏移量。更改数据不再可供下一个 task 使用。目前,我们建议只有一个 task 使用流中的更改数据。可以为同一表创建多个流,并由不同的 task 使用。
62+
- task 不会在每次执行时重试;每次执行都是串行的。每个脚本 SQL 逐个执行,没有并行执行。这确保了 task 执行的顺序和依赖关系得以维护。
6363
- 基于间隔的 task 以严格的方式遵循固定的间隔点。这意味着如果当前 task 执行时间超过间隔单位,则下一个 task 将立即执行。否则,下一个 task 将等待直到下一个间隔单位被触发。例如,如果一个 task 定义为 1 秒的间隔,并且一个 task 执行需要 1.5 秒,则下一个 task 将立即执行。如果一个 task 执行需要 0.5 秒,则下一个 task 将等待直到下一个 1 秒间隔刻度开始。
6464

6565
### 关于 Cron 表达式的重要说明
@@ -73,33 +73,28 @@ AS
7373
5. **月份** (1-12 或 JAN-DEC)
7474
6. **星期几** (0-6,其中 0 是星期日,或 SUN-SAT)
7575

76-
#### Cron 表达式示例:
77-
78-
- **每天太平洋时间上午 9:00:00:**
76+
#### Cron 表达式示例:
7977

78+
- **太平洋时间每天上午 9:00:00:**
8079
- `USING CRON '0 0 9 * * *' 'America/Los_Angeles'`
8180

8281
- **每分钟:**
83-
8482
- `USING CRON '0 * * * * *' 'UTC'`
8583
- 这会在每分钟的开始时运行 task。
8684

8785
- **每小时的第 15 分钟:**
88-
8986
- `USING CRON '0 15 * * * *' 'UTC'`
9087
- 这会在每小时的 15 分钟后运行 task。
9188

92-
- **每个星期一中午 12:00:00:**
93-
89+
- **每个星期一的下午 12:00:00:**
9490
- `USING CRON '0 0 12 * * 1' 'UTC'`
9591
- 这会在每个星期一的中午运行 task。
9692

97-
- **每个月的第一天午夜:**
98-
93+
- **每个月的第一天的午夜:**
9994
- `USING CRON '0 0 0 1 * *' 'UTC'`
10095
- 这会在每个月的第一天的午夜运行 task。
10196

102-
- **每个工作日上午 8:30:00:**
97+
- **每个工作日的上午 8:30:00:**
10398
- `USING CRON '0 30 8 * * 1-5' 'UTC'`
10499
- 这会在每个工作日(星期一至星期五)的上午 8:30 运行 task。
105100

@@ -125,7 +120,7 @@ AS
125120
INSERT INTO compaction_test.test VALUES((1));
126121
```
127122

128-
此示例创建一个名为 mytask 的 task(如果它尚不存在)。该 task 被分配给 system 计算集群,并计划每 2 分钟运行一次。如果连续失败三次,它将被暂停。该 task 执行一个 INSERT 操作到 compaction_test.test 表中。
123+
此示例创建一个名为 mytask 的 task(如果该 task 尚不存在)。该 task 被分配给 system 计算集群,并计划每 2 分钟运行一次。如果连续失败三次,它将被挂起。该 task 执行一个 INSERT 操作到 compaction_test.test 表中。
129124

130125
```sql
131126
CREATE TASK IF NOT EXISTS daily_sales_summary
@@ -145,7 +140,7 @@ ASINSERT INTO data_warehouse.orders
145140
SELECT * FROM staging.orders;
146141
```
147142

148-
在此示例中,创建了一个名为 process_orders 的 task,并将其定义为在 task1 和 task2 成功完成后运行。这对于在 task 的有向无环图 (DAG) 中创建依赖关系非常有用。该 task 使用 'etl' 计算集群并将数据从暂存区传输到数仓
143+
在此示例中,创建了一个名为 process_orders 的 task,并将其定义为在 task1 和 task2 成功完成后运行。这对于在有向无环图 (DAG) 中创建依赖关系非常有用。该 task 使用 'etl' 计算集群,并将数据从暂存区域传输到数仓
149144

150145
```sql
151146
CREATE TASK IF NOT EXISTS hourly_data_cleanup
@@ -158,7 +153,7 @@ WHERE archived_date < DATEADD(HOUR, -24, CURRENT_TIMESTAMP());
158153

159154
```
160155

161-
在此示例中,创建了一个名为 hourly_data_cleanup 的 task。它使用 maintenance 计算集群,并计划每小时运行一次。该 task 从 archived_data 表中删除早于 24 小时的数据。该 task 仅在 change_stream stream 包含更改数据时运行
156+
在此示例中,创建了一个名为 hourly_data_cleanup 的 task。它使用 maintenance 计算集群,并计划每小时运行一次。该 task 从 archived_data 表中删除早于 24 小时的数据。该 task 仅在 change_stream 流包含更改数据时运行
162157

163158
```sql
164159
CREATE TASK IF NOT EXISTS mytask
@@ -174,4 +169,4 @@ BEGIN
174169
END;
175170
```
176171

177-
在此示例中,创建了一个名为 mytask 的 task。它使用 mywh 计算集群,并计划每 30 秒运行一次。该 task 执行一个 BEGIN 块,其中包含一个 INSERT 语句和一个 DELETE 语句。该 task 在执行完两个语句后提交事务。当 task 失败时,它将触发名为 myerror 的错误集成。
172+
在此示例中,创建了一个名为 mytask 的 task。它使用 mywh 计算集群,并计划每 30 秒运行一次。该 task 执行一个 BEGIN 块,其中包含一个 INSERT 语句和一个 DELETE 语句。该 task 在执行完两个语句后提交事务。当 task 失败时,它将触发名为 myerror 的错误集成。

0 commit comments

Comments
 (0)