@clickzetta/cz-cli-darwin-x64 0.3.18 → 0.3.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/bin/cz-cli +0 -0
  2. package/bin/skills/clickzetta-access-control/SKILL.md +243 -0
  3. package/bin/skills/clickzetta-access-control/eval_cases.jsonl +3 -0
  4. package/bin/skills/clickzetta-access-control/references/dynamic-masking.md +86 -0
  5. package/bin/skills/clickzetta-access-control/references/grant-revoke.md +103 -0
  6. package/bin/skills/clickzetta-access-control/references/role-management.md +66 -0
  7. package/bin/skills/clickzetta-access-control/references/user-management.md +61 -0
  8. package/bin/skills/clickzetta-ai-vector-search/SKILL.md +160 -0
  9. package/bin/skills/clickzetta-ai-vector-search/eval_cases.jsonl +4 -0
  10. package/bin/skills/clickzetta-ai-vector-search/references/vector-search.md +155 -0
  11. package/bin/skills/clickzetta-data-retention/SKILL.md +160 -0
  12. package/bin/skills/clickzetta-data-retention/eval_cases.jsonl +5 -0
  13. package/bin/skills/clickzetta-data-retention/references/lifecycle-reference.md +175 -0
  14. package/bin/skills/clickzetta-dw-modeling/SKILL.md +259 -0
  15. package/bin/skills/clickzetta-dw-modeling/eval_cases.jsonl +4 -0
  16. package/bin/skills/clickzetta-dw-modeling/references/modeling-patterns.md +100 -0
  17. package/bin/skills/clickzetta-external-function/SKILL.md +203 -0
  18. package/bin/skills/clickzetta-external-function/eval_cases.jsonl +4 -0
  19. package/bin/skills/clickzetta-external-function/references/external-function-ddl.md +171 -0
  20. package/bin/skills/clickzetta-index-manager/SKILL.md +140 -0
  21. package/bin/skills/clickzetta-index-manager/eval_cases.jsonl +5 -0
  22. package/bin/skills/clickzetta-index-manager/references/bloomfilter-index.md +67 -0
  23. package/bin/skills/clickzetta-index-manager/references/index-management.md +73 -0
  24. package/bin/skills/clickzetta-index-manager/references/inverted-index.md +80 -0
  25. package/bin/skills/clickzetta-index-manager/references/vector-index.md +81 -0
  26. package/bin/skills/clickzetta-lakehouse-connect/SKILL.md +218 -0
  27. package/bin/skills/clickzetta-lakehouse-connect/eval_cases.jsonl +3 -0
  28. package/bin/skills/clickzetta-lakehouse-connect/evals/evals.json +35 -0
  29. package/bin/skills/clickzetta-lakehouse-connect/references/config-file.md +435 -0
  30. package/bin/skills/clickzetta-lakehouse-connect/references/jdbc.md +478 -0
  31. package/bin/skills/clickzetta-lakehouse-connect/references/python-sdk.md +225 -0
  32. package/bin/skills/clickzetta-lakehouse-connect/references/sqlalchemy.md +468 -0
  33. package/bin/skills/clickzetta-lakehouse-connect/references/zettapark-session.md +445 -0
  34. package/bin/skills/clickzetta-manage-comments/SKILL.md +219 -0
  35. package/bin/skills/clickzetta-manage-comments/eval_cases.jsonl +3 -0
  36. package/bin/skills/clickzetta-metadata/SKILL.md +483 -0
  37. package/bin/skills/clickzetta-metadata/eval_cases.jsonl +5 -0
  38. package/bin/skills/clickzetta-metadata/references/instance-views-reference.md +276 -0
  39. package/bin/skills/clickzetta-metadata/references/metering-views-reference.md +137 -0
  40. package/bin/skills/clickzetta-metadata/references/show-desc-reference.md +326 -0
  41. package/bin/skills/clickzetta-metadata/references/views-reference.md +271 -0
  42. package/bin/skills/clickzetta-monitoring/SKILL.md +199 -0
  43. package/bin/skills/clickzetta-monitoring/eval_cases.jsonl +5 -0
  44. package/bin/skills/clickzetta-monitoring/references/job-history-analysis.md +97 -0
  45. package/bin/skills/clickzetta-monitoring/references/show-jobs.md +48 -0
  46. package/bin/skills/clickzetta-overview/SKILL.md +102 -0
  47. package/bin/skills/clickzetta-overview/eval_cases.jsonl +5 -0
  48. package/bin/skills/clickzetta-overview/references/brands-and-endpoints.md +79 -0
  49. package/bin/skills/clickzetta-overview/references/object-model.md +311 -0
  50. package/bin/skills/clickzetta-overview/references/studio-modules.md +173 -0
  51. package/bin/skills/clickzetta-query-optimizer/eval_cases.jsonl +5 -0
  52. package/bin/skills/cz-cli/SKILL.md +1 -1
  53. package/bin/skills/cz-cli-inner/SKILL.md +8 -0
  54. package/package.json +1 -1
@@ -0,0 +1,311 @@
1
+ # ClickZetta Lakehouse 对象模型完整参考
2
+
3
+ > 来源:官方产品文档 yunqi.tech
4
+ > 参考:clickzetta-lakehouse-architecture.html
5
+
6
+ ---
7
+
8
+ ## ClickZetta 独特概念速查
9
+
10
+ | 概念 | 独特之处 | 常见误区 |
11
+ |---|---|---|
12
+ | CRU | 跨云统一算力单位,旧规格 XS/S/M/L 已迁移为数字 1/2/4/8 | 不是 Snowflake Credit,不是 DBU |
13
+ | VCluster 三类型 | GP/AP/Integration 各有适用场景,Dynamic Table 必须用 GP | AP 集群不支持小文件合并 |
14
+ | Dynamic Table | CBO 自适应增量/全量,`OR REPLACE` 保留数据 | 最小 1 分钟,非秒级流式 |
15
+ | Table Stream | 需先 `ALTER TABLE SET PROPERTIES ('change_tracking'='true')` | 实时写入数据需等 1 分钟才可读 |
16
+ | Pipe | 每个 Pipe 对应独立 Volume,不可复用 | 不是 Snowflake Snowpipe,无自动触发 |
17
+ | Synonym | 支持跨 Schema 别名,VOLUME/FUNCTION 类型需显式声明关键字 | 不是视图,不复制数据 |
18
+ | 权限体系 | 无超级用户;实例角色与工作空间角色互不影响 | instance_admin 不能直接操作工作空间数据 |
19
+ | Workspace | 连接时必须指定,≈ Snowflake Database | 不是 Databricks Workspace(那个是实例级) |
20
+ | Schema TYPE | MANAGED(内部托管)/ EXTERNAL(外部数据湖) | EXTERNAL Schema 不支持 DML |
21
+
22
+ ---
23
+
24
+ ## 完整对象层级
25
+
26
+ ```
27
+ 账户 (Account)
28
+ │ 全局唯一 · SSO/MFA · 实名认证
29
+
30
+ └── 服务实例 (Instance)
31
+ │ 资源隔离 · 多云多地域 · Instance Role
32
+
33
+ └── 工作空间 (Workspace)
34
+ │ 业务隔离 · Workspace Role · VCluster 绑定 · 任务调度
35
+
36
+ ├── Schema(数据库/命名空间)
37
+ │ │ MANAGED / EXTERNAL 类型
38
+ │ │
39
+ │ ├── 内部表 (Managed Table) — Iceberg · ACID · Time Travel · 索引
40
+ │ ├── 外部表 (External Table) — Delta/Hudi/Kafka · 只读
41
+ │ ├── 视图 (View) — 虚拟 · 无存储
42
+ │ ├── 动态表 (Dynamic Table) — 声明式增量刷新
43
+ │ ├── 物化视图 (Materialized View) — 预计算 · 定时刷新
44
+ │ ├── Volume — User/Table/External(OSS/S3/COS)
45
+ │ ├── Table Stream — CDC 变更捕获
46
+ │ ├── Pipe — Kafka/OSS 持续导入
47
+ │ ├── 函数 / External Function — SQL UDF / Python / Java
48
+ │ ├── 索引 — BloomFilter / Inverted / Vector(HNSW)
49
+ │ └── 同义词 (Synonym) — 跨 Schema 别名
50
+
51
+ ├── Share — 跨账户零拷贝数据共享
52
+ ├── Connection — Storage(OSS/COS/S3) / API(云函数)
53
+ └── External Catalog — Hive HMS / Iceberg REST / Databricks Unity
54
+ ```
55
+
56
+ ---
57
+
58
+ ## 工作空间(Workspace)详解
59
+
60
+ ### 核心定位
61
+
62
+ Workspace 是 ClickZetta 中**业务隔离的最小单元**,也是连接时必须指定的对象。
63
+
64
+ - 等同于 Snowflake 的 **Database**,或 Databricks 的 **Catalog**
65
+ - 每个 Workspace 有独立的:用户角色、VCluster、任务调度、INFORMATION_SCHEMA
66
+ - 连接参数中的 `workspace` 字段即指定此对象
67
+
68
+ ### 管理命令
69
+
70
+ ```sql
71
+ -- 查看所有工作空间(需 instance_admin)
72
+ SHOW WORKSPACES;
73
+
74
+ -- 查看工作空间详情
75
+ DESC WORKSPACE my_workspace;
76
+
77
+ -- 修改注释
78
+ ALTER WORKSPACE my_workspace SET COMMENT '生产环境';
79
+
80
+ -- 查看属性
81
+ SHOW PROPERTIES IN WORKSPACE my_workspace;
82
+ ```
83
+
84
+ ### DESC WORKSPACE 输出字段
85
+
86
+ | 字段 | 说明 |
87
+ |---|---|
88
+ | name | 工作空间名称 |
89
+ | creator | 创建者 |
90
+ | created_time | 创建时间 |
91
+ | last_modified_time | 最后修改时间 |
92
+ | comment | 注释 |
93
+
94
+ ---
95
+
96
+ ## Schema 详解
97
+
98
+ ### 核心定位
99
+
100
+ Schema 是 ClickZetta 中的**命名空间**,用于组织数据对象。
101
+
102
+ - 等同于传统数据库的 **Database** 或 **Schema**(注意:不同系统叫法不同)
103
+ - 是权限授予的边界(可对整个 Schema 授权)
104
+ - 类型:`MANAGED`(平台托管存储)/ `EXTERNAL`(外部数据湖路径)
105
+
106
+ ### 管理命令
107
+
108
+ ```sql
109
+ -- 创建 Schema
110
+ CREATE SCHEMA my_schema;
111
+
112
+ -- 创建外部 Schema(指向外部数据湖)
113
+ CREATE EXTERNAL SCHEMA ext_schema LOCATION 'oss://bucket/path/';
114
+
115
+ -- 切换默认 Schema
116
+ USE SCHEMA my_schema;
117
+
118
+ -- 查看所有 Schema
119
+ SHOW SCHEMAS;
120
+
121
+ -- 查看 Schema 详情
122
+ DESC SCHEMA my_schema;
123
+
124
+ -- 修改 Schema
125
+ ALTER SCHEMA my_schema RENAME TO new_schema;
126
+ ALTER SCHEMA my_schema SET COMMENT '数据仓库层';
127
+
128
+ -- 删除 Schema(需先删除其中的对象)
129
+ DROP SCHEMA my_schema;
130
+ DROP SCHEMA IF EXISTS my_schema CASCADE; -- 级联删除所有对象
131
+ ```
132
+
133
+ ---
134
+
135
+ ## VCluster(计算集群)详解
136
+
137
+ ### 三种类型对比
138
+
139
+ | 属性 | 通用型 (GENERAL) | 分析型 (ANALYTICS) | 同步型 (INTEGRATION) |
140
+ |---|---|---|---|
141
+ | 适用场景 | ETL、批量导入、Ad-Hoc | 高并发 BI、在线查询 | 数据集成、CDC 同步 |
142
+ | 弹性方式 | 纵向(规格扩缩) | 横向(副本数 1-10) | — |
143
+ | 最小规格 | 1 CRU | 1 CRU | 0.25 CRU |
144
+ | 最大规格 | 256 CRU | 256 CRU | 256 CRU |
145
+ | 规格步长 | 1 CRU | 2^n CRU | 0.25 CRU |
146
+ | 本地缓存 | 不支持 | 支持(PRELOAD) | 不支持 |
147
+ | 小文件合并 | 支持(Dynamic Table 推荐) | 不支持 | — |
148
+
149
+ ### 任务类型与集群对应
150
+
151
+ | 任务类型 | 推荐集群 |
152
+ |---|---|
153
+ | SQL ETL / 批量导入 | 通用型 |
154
+ | Ad-Hoc 查询 / BI | 分析型 |
155
+ | Dynamic Table(低频大量) | 通用型 |
156
+ | Dynamic Table(高频小量) | 分析型 |
157
+ | 离线同步 / 实时同步 / CDC | 同步型 |
158
+ | Python / Shell / JDBC 任务 | 不使用 VCluster |
159
+
160
+ ### 管理命令
161
+
162
+ ```sql
163
+ -- 创建通用型集群
164
+ CREATE VCLUSTER my_gp TYPE GENERAL SIZE 4;
165
+
166
+ -- 创建分析型集群(弹性 1-4 副本)
167
+ CREATE VCLUSTER my_ap TYPE ANALYTICS SIZE 8 MIN_INSTANCE 1 MAX_INSTANCE 4;
168
+
169
+ -- 启动 / 停止
170
+ ALTER VCLUSTER my_gp RESUME;
171
+ ALTER VCLUSTER my_gp SUSPEND;
172
+
173
+ -- 查看所有集群
174
+ SHOW VCLUSTERS;
175
+ ```
176
+
177
+ ---
178
+
179
+ ## 用户与权限体系
180
+
181
+ ### 用户层级
182
+
183
+ ```
184
+ 全局账号用户(Global User)
185
+ │ 在账户层面管理,user_name 全局唯一
186
+
187
+ └── 服务实例用户(Instance User)
188
+ │ 全局用户自动同步,默认获得 instance_user 角色(无数据权限)
189
+
190
+ └── 工作空间用户(Workspace User)
191
+ 通过 GRANT ROLE 授予工作空间角色后才能操作数据
192
+ ```
193
+
194
+ ### 用户类型
195
+
196
+ | 类型 | 说明 |
197
+ |---|---|
198
+ | 普通用户 | 代表实际人员,可 Web 登录 |
199
+ | 系统服务用户 | 平台内置,默认禁用(如 sysservice_auto_mv) |
200
+ | 自定义服务用户 | 用于自动化程序,不可 Web 登录,可用 JDBC |
201
+
202
+ ### 预置角色
203
+
204
+ | 角色 | 级别 | 权限范围 |
205
+ |---|---|---|
206
+ | instance_admin | 实例级 | 管理所有工作空间、用户、External Catalog |
207
+ | instance_user | 实例级 | 默认角色,无数据权限 |
208
+ | workspace_admin | 工作空间级 | 管理空间内所有对象和用户 |
209
+ | workspace_dev | 工作空间级 | 读写权限 + 任务管理 |
210
+ | workspace_analyst | 工作空间级 | 只读权限 |
211
+
212
+ ### 授权命令
213
+
214
+ ```sql
215
+ -- 将角色授予用户
216
+ GRANT ROLE workspace_dev TO USER alice;
217
+
218
+ -- 授予表权限
219
+ GRANT SELECT ON TABLE my_schema.my_table TO ROLE analyst_role;
220
+ GRANT SELECT ON ALL TABLES IN SCHEMA my_schema TO ROLE analyst_role;
221
+
222
+ -- 授予 information_schema 查询权限
223
+ GRANT ALL ON ALL VIEWS IN SCHEMA information_schema TO ROLE analyst_role;
224
+
225
+ -- 撤销权限
226
+ REVOKE SELECT ON TABLE my_schema.my_table FROM ROLE analyst_role;
227
+
228
+ -- 创建自定义角色(仅工作空间级,仅 SQL)
229
+ CREATE ROLE my_custom_role;
230
+ ```
231
+
232
+ ---
233
+
234
+ ## 数据类型速查
235
+
236
+ | 分类 | 类型 |
237
+ |---|---|
238
+ | 整数 | TINYINT / SMALLINT / INT / BIGINT |
239
+ | 浮点 | FLOAT / DOUBLE / DECIMAL(p,s) |
240
+ | 字符串 | CHAR(n) / VARCHAR(n) / STRING(最大 16MB) |
241
+ | 时间 | DATE / TIMESTAMP(带时区 LTZ)/ TIMESTAMP_NTZ / INTERVAL |
242
+ | 布尔 | BOOLEAN |
243
+ | 复杂 | ARRAY\<T\> / MAP\<K,V\> / STRUCT\<field:type,...\> |
244
+ | AI 专用 | VECTOR(FLOAT, n)(最大 65535 维)/ VECTOR(TINYINT, n) |
245
+ | 特殊 | JSON / BINARY / BITMAP(Roaring Bitmap) |
246
+
247
+ ---
248
+
249
+ ## 平台架构层次
250
+
251
+ ```
252
+ 客户端层:Studio IDE · JDBC/ODBC · Python SDK · ZettaPark · BI 工具 · MCP Server
253
+
254
+ 计算层:VCluster(GENERAL / ANALYTICS / INTEGRATION)
255
+
256
+ 服务层:SQL 解析优化 · 向量化执行引擎 · Dynamic Table · AI Gateway · Result Cache
257
+
258
+ 存储层:内部表(Iceberg) · 外部表 · Volume · Time Travel · External Catalog · Share
259
+
260
+ 底层对象存储:阿里云 OSS · AWS S3 · 腾讯云 COS
261
+ ```
262
+
263
+ **存算分离**:计算层和存储层独立扩展,VCluster 停止时不产生计算费用,存储按 GiB 计费。
264
+
265
+ ---
266
+
267
+ ## 数据对象横向对比
268
+
269
+ ### Dynamic Table vs Materialized View vs View
270
+
271
+ | 维度 | 动态表 (Dynamic Table) | 物化视图 (Materialized View) | 视图 (View) |
272
+ |---|---|---|---|
273
+ | 数据存储 | 有(物化) | 有(物化) | 无(虚拟) |
274
+ | 刷新方式 | 自动增量/全量(CBO 决策) | 手动或定时全量 | 每次查询实时执行 |
275
+ | 最小刷新间隔 | 1 分钟 | 无限制(手动) | — |
276
+ | Time Travel | 支持 | 不支持 | 不支持 |
277
+ | UNDROP | 支持 | 不支持 | 不支持 |
278
+ | CREATE OR REPLACE | 支持(保留数据和权限) | 支持 | 支持 |
279
+ | 推荐集群 | GP(通用型) | GP 或 AP | — |
280
+ | 适用场景 | 实时 ETL、多层级联 | BI 加速、固定聚合 | 简单逻辑封装 |
281
+
282
+ ### Table Stream 两种模式
283
+
284
+ | 模式 | 捕获内容 | 典型用途 |
285
+ |---|---|---|
286
+ | STANDARD | INSERT + UPDATE_BEFORE + UPDATE_AFTER + DELETE | CDC UPSERT,MERGE INTO 消费 |
287
+ | APPEND_ONLY | 仅 INSERT | 日志追加,简单 ETL |
288
+
289
+ **STANDARD 模式的 delta 语义**:记录两个 offset 之间的净变化。若一行先 INSERT 后 DELETE,delta 中该行消失(不会出现 INSERT+DELETE 两条记录)。
290
+
291
+ ### Pipe 两种导入模式
292
+
293
+ | 模式 | 触发方式 | 适用场景 | 云支持 |
294
+ |---|---|---|---|
295
+ | LIST_PURGE | 定期扫描 Volume 目录 | 通用,任何对象存储 | 全部 |
296
+ | EVENT_NOTIFICATION | 云消息队列事件触发 | 低延迟,近实时 | 仅阿里云 OSS + AWS S3 |
297
+
298
+ ---
299
+
300
+ ## 地域与连接信息
301
+
302
+ | 云服务商 | 地域 | 区域代码 | API Endpoint |
303
+ |---|---|---|---|
304
+ | 阿里云 | 华东2(上海) | cn-shanghai-alicloud | cn-shanghai-alicloud.api.clickzetta.com |
305
+ | 腾讯云 | 华东(上海) | ap-shanghai-tencentcloud | ap-shanghai-tencentcloud.api.clickzetta.com |
306
+ | 腾讯云 | 华北(北京) | ap-beijing-tencentcloud | ap-beijing-tencentcloud.api.clickzetta.com |
307
+ | 腾讯云 | 华南(广州) | ap-guangzhou-tencentcloud | ap-guangzhou-tencentcloud.api.clickzetta.com |
308
+ | AWS | 北京 | cn-north-1-aws | cn-north-1-aws.api.clickzetta.com |
309
+
310
+ JDBC URL 格式:`jdbc:clickzetta://<instance_name>.<region_id>.api.clickzetta.com/`
311
+
@@ -0,0 +1,173 @@
1
+ # Studio 各模块详细说明
2
+
3
+ > 来源:https://www.yunqi.tech/documents/LakehouseStudioTour 等官方文档
4
+
5
+ ---
6
+
7
+ ## 任务类型完整列表
8
+
9
+ | 任务类型 | 触发方式 | 使用 VCluster | 典型用途 |
10
+ |---|---|---|---|
11
+ | SQL 任务 | 周期调度 / 手动 | GP 或 AP | ETL、Ad-Hoc 查询、DDL 操作 |
12
+ | Python 任务 | 周期调度 / 手动 | 不使用 | ZettaPark 数据处理、文件操作 |
13
+ | Shell 任务 | 周期调度 / 手动 | 不使用 | 系统命令、文件处理 |
14
+ | JDBC 任务 | 周期调度 / 手动 | 不使用 | 操作 MySQL/Hive/ClickHouse 等 |
15
+ | 动态表任务 | 向导式创建 | GP 或 AP | 声明式增量计算 |
16
+ | 离线同步任务 | 周期调度 | 同步型 | 全量/增量批量同步 |
17
+ | 实时同步任务(单表) | 持续运行 | 同步型 | Kafka/MySQL/PG 实时写入 |
18
+ | 多表实时 CDC | 持续运行 | 同步型 | 整库镜像、分库分表合并 |
19
+ | 组合任务 | 周期调度 | 取决于子任务 | 封装多个任务统一调度 |
20
+ | 虚拟节点 | 周期调度 | 不使用 | 占位节点,用于依赖编排 |
21
+
22
+ ---
23
+
24
+ ## 任务状态说明
25
+
26
+ | 状态 | 含义 |
27
+ |---|---|
28
+ | 已提交,有修改 | 任务已提交到生产,但本地有未提交的修改 |
29
+ | 已提交,无修改 | 生产版本与本地版本一致 |
30
+ | 已下线 | 任务已停止调度 |
31
+ | 未提交 | 仅在开发环境,未发布到生产 |
32
+
33
+ ---
34
+
35
+ ## 调度配置关键参数
36
+
37
+ ### Cron 表达式示例
38
+
39
+ ```
40
+ # 每天凌晨 2 点执行
41
+ 0 2 * * *
42
+
43
+ # 每小时执行一次
44
+ 0 * * * *
45
+
46
+ # 每 5 分钟执行一次
47
+ */5 * * * *
48
+
49
+ # 每月 1 号凌晨 1 点执行
50
+ 0 1 1 * *
51
+ ```
52
+
53
+ ### 依赖策略
54
+
55
+ | 策略 | 说明 | 适用场景 |
56
+ |---|---|---|
57
+ | 默认 | 上游当天实例完成后触发下游 | 标准 ETL 链路 |
58
+ | 向前 | 上游最近一个完成的实例触发 | 上游频率高于下游 |
59
+ | 向前就近 | 上游最近且时间最接近的实例触发 | 时间对齐要求高 |
60
+
61
+ ---
62
+
63
+ ## 任务参数内置时间函数
64
+
65
+ | 表达式 | 含义 | 示例(今天 2024-01-15) |
66
+ |---|---|---|
67
+ | `$[yyyy-MM-dd]` | 当天日期 | 2024-01-15 |
68
+ | `$[yyyy-MM-dd, -1d]` | 昨天 | 2024-01-14 |
69
+ | `$[yyyy-MM-dd, +1d]` | 明天 | 2024-01-16 |
70
+ | `$[yyyyMM]` | 当月 | 202401 |
71
+ | `$[yyyyMM, -1M]` | 上月 | 202312 |
72
+ | `$[yyyy-MM-dd HH:mm:ss]` | 当前时间 | 2024-01-15 10:30:00 |
73
+ | `$[HH:mm:ss]` | 当前时间(仅时分秒) | 10:30:00 |
74
+ | `sys_plan_datetime` | 任务计划执行时间 | 系统内置参数 |
75
+
76
+ ---
77
+
78
+ ## 数据质量规则六大维度
79
+
80
+ | 维度 | 说明 | 示例规则 |
81
+ |---|---|---|
82
+ | 完整性 | 字段非空率 | `user_id` 非空率 ≥ 99% |
83
+ | 唯一性 | 主键/唯一键重复检测 | `order_id` 无重复 |
84
+ | 一致性 | 跨表数据一致 | 订单表与明细表金额一致 |
85
+ | 准确性 | 数值范围合理性 | `age` 在 0-150 之间 |
86
+ | 有效性 | 格式/枚举值合法 | `status` 在 ['active','inactive'] 中 |
87
+ | 及时性 | 数据更新时效 | 每天 8 点前数据已更新 |
88
+
89
+ ### 触发方式
90
+
91
+ - **定时触发**:Cron 表达式,独立于任务调度
92
+ - **调度任务触发**:绑定到某个 SQL/同步任务,任务完成后自动触发质量检测
93
+ - **手动触发**:在 Studio 界面手动执行
94
+
95
+ ---
96
+
97
+ ## 数据目录(Data Catalog)功能
98
+
99
+ ### 表详情页六大 Tab
100
+
101
+ | Tab | 内容 |
102
+ |---|---|
103
+ | 详情 | DDL 语句(一键复制)、权限管理入口 |
104
+ | 字段 | 字段名/类型/描述/主键/标准化标签 |
105
+ | 预览 | 100 行数据预览(需 SELECT 权限 + 指定 VCluster) |
106
+ | 血缘 | 上下游表关系图(数据血缘) |
107
+ | 作业 | 该表相关的查询历史 |
108
+ | 上传 | 本地文件直接上传到表 |
109
+
110
+ ### 搜索支持的过滤条件
111
+
112
+ - 对象类型:Table / View / Materialized View
113
+ - 工作空间 / Schema
114
+ - 创建时间范围
115
+ - 负责人
116
+
117
+ ---
118
+
119
+ ## 运维监控告警
120
+
121
+ ### 内置告警规则
122
+
123
+ | 规则 | 触发条件 |
124
+ |---|---|
125
+ | 周期任务实例运行失败 | 任务实例执行失败 |
126
+ | 数据质量检测失败 | 质量规则校验不通过 |
127
+ | Pipe 延迟告警 | Kafka/OSS Pipe 消费延迟超阈值 |
128
+ | 同步任务失败 | 离线/实时同步任务异常 |
129
+ | 自定义规则 | 用户自定义 SQL 条件 |
130
+
131
+ ### 告警通知渠道
132
+
133
+ - 飞书 webhook
134
+ - 企业微信 webhook
135
+ - 邮件(部分版本)
136
+
137
+ ---
138
+
139
+ ## 数据同步支持的数据源(部分)
140
+
141
+ ### 离线同步(批量)
142
+
143
+ MySQL · PostgreSQL · SQL Server · Oracle · Aurora · PolarDB · ClickHouse · Hive · HDFS · OSS/S3/COS · Lakehouse
144
+
145
+ ### 实时同步(CDC)
146
+
147
+ MySQL(Binlog)· PostgreSQL(WAL)· Kafka(JSON/Avro/CSV)
148
+
149
+ ### 连接方式
150
+
151
+ - 公网直连
152
+ - SSH Tunnel(连接 VPC 内数据库)
153
+ - 私网连接(PrivateLink)
154
+
155
+ ---
156
+
157
+ ## Python 任务中使用数据源
158
+
159
+ Studio Python 任务内置 `clickzetta-dbutils` 工具包,可直接使用预配置的数据源:
160
+
161
+ ```python
162
+ from clickzetta import dbutils
163
+
164
+ # 使用预配置的 Lakehouse 数据源
165
+ conn = dbutils.get_connection('my_lakehouse_datasource')
166
+ cursor = conn.cursor()
167
+ cursor.execute("SELECT * FROM my_schema.my_table LIMIT 10")
168
+ rows = cursor.fetchall()
169
+ print(rows)
170
+
171
+ # 使用预配置的 MySQL 数据源
172
+ mysql_conn = dbutils.get_connection('my_mysql_datasource')
173
+ ```
@@ -0,0 +1,5 @@
1
+ {"case_id":"001","type":"should_call","user_input":"为什么这个 JOIN 查询这么慢?SELECT t1.user_id, t2.tenant_name FROM public.dim_studio_user_dmin_f t1 JOIN public.dim_studio_tenant_dmin_f t2 ON t1.tenant_id = t2.tenant_id","expected_skill":"clickzetta-query-optimizer","expected_output_contains":["JOIN","优化"]}
2
+ {"case_id":"002","type":"should_call","user_input":"public.dwd_studio_lakehouse_jobs_dd_i 表适合设置什么 Sort Key?","expected_skill":"clickzetta-query-optimizer","expected_output_contains":["sort","key"]}
3
+ {"case_id":"003","type":"should_call","user_input":"怎么开启结果缓存?Result Cache 的使用限制是什么?","expected_skill":"clickzetta-query-optimizer","expected_output_contains":["cache","cz.sql.enable"]}
4
+ {"case_id":"004","type":"should_call","user_input":"表有很多小文件影响查询性能,怎么合并优化?","expected_skill":"clickzetta-query-optimizer","expected_output_contains":["OPTIMIZE","小文件"]}
5
+ {"case_id":"005","type":"should_call","user_input":"怎么用 EXPLAIN 分析执行计划?Map Join 什么时候用?","expected_skill":"clickzetta-query-optimizer","expected_output_contains":["EXPLAIN","Map Join"]}
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: cz-cli-v2
2
+ name: cz-cli
3
3
  description: Route ALL ClickZetta Lakehouse operations to cz-cli: SQL, Studio tasks, tables, pipelines, profiles. Use when user mentions ClickZetta, Lakehouse, cz-cli, or needs profile/connection configuration.
4
4
  ---
5
5
 
@@ -70,6 +70,14 @@ cz-cli job result <job-id> Fetch job result set
70
70
 
71
71
  cz-cli status Check connection status
72
72
  cz-cli profile list List connection profiles
73
+
74
+ cz-cli datasource list [--type <type>] [--name <filter>]
75
+ List external data sources (type: mysql/kafka/redis/postgresql/...)
76
+ cz-cli datasource catalogs <name_or_id> List catalogs (databases/topics/buckets) in a data source
77
+ cz-cli datasource objects <name_or_id> <catalog>
78
+ List objects (tables/topics/collections) in a catalog
79
+ cz-cli datasource describe <name_or_id> <catalog> <object>
80
+ Show object metadata (columns, types)
73
81
  ```
74
82
 
75
83
  ## Output Formats
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@clickzetta/cz-cli-darwin-x64",
3
- "version": "0.3.18",
3
+ "version": "0.3.20",
4
4
  "description": "cz-cli binary for macOS x64 (Intel)",
5
5
  "os": ["darwin"],
6
6
  "cpu": ["x64"],