@clickzetta/cz-cli-darwin-x64 0.3.17 → 0.3.19
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.
- package/bin/cz-cli +0 -0
- package/bin/skills/clickzetta-access-control/SKILL.md +243 -0
- package/bin/skills/clickzetta-access-control/eval_cases.jsonl +3 -0
- package/bin/skills/clickzetta-access-control/references/dynamic-masking.md +86 -0
- package/bin/skills/clickzetta-access-control/references/grant-revoke.md +103 -0
- package/bin/skills/clickzetta-access-control/references/role-management.md +66 -0
- package/bin/skills/clickzetta-access-control/references/user-management.md +61 -0
- package/bin/skills/clickzetta-ai-vector-search/SKILL.md +160 -0
- package/bin/skills/clickzetta-ai-vector-search/eval_cases.jsonl +4 -0
- package/bin/skills/clickzetta-ai-vector-search/references/vector-search.md +155 -0
- package/bin/skills/clickzetta-batch-sync-pipeline/SKILL.md +386 -0
- package/bin/skills/clickzetta-cdc-sync-pipeline/SKILL.md +548 -0
- package/bin/skills/clickzetta-data-ingest-pipeline/SKILL.md +220 -0
- package/bin/skills/clickzetta-data-ingest-pipeline/eval_cases.jsonl +5 -0
- package/bin/skills/clickzetta-data-retention/SKILL.md +160 -0
- package/bin/skills/clickzetta-data-retention/eval_cases.jsonl +5 -0
- package/bin/skills/clickzetta-data-retention/references/lifecycle-reference.md +175 -0
- package/bin/skills/clickzetta-dw-modeling/SKILL.md +259 -0
- package/bin/skills/clickzetta-dw-modeling/eval_cases.jsonl +4 -0
- package/bin/skills/clickzetta-dw-modeling/references/modeling-patterns.md +100 -0
- package/bin/skills/clickzetta-dynamic-table/SKILL.md +112 -0
- package/bin/skills/clickzetta-dynamic-table/best-practices/dimension-table-join-guide.md +257 -0
- package/bin/skills/clickzetta-dynamic-table/best-practices/medallion-and-stream-patterns.md +124 -0
- package/bin/skills/clickzetta-dynamic-table/best-practices/non-partitioned-merge-into-warning.md +96 -0
- package/bin/skills/clickzetta-dynamic-table/best-practices/performance-optimization.md +109 -0
- package/bin/skills/clickzetta-external-function/SKILL.md +203 -0
- package/bin/skills/clickzetta-external-function/eval_cases.jsonl +4 -0
- package/bin/skills/clickzetta-external-function/references/external-function-ddl.md +171 -0
- package/bin/skills/clickzetta-file-import-pipeline/SKILL.md +156 -0
- package/bin/skills/clickzetta-index-manager/SKILL.md +140 -0
- package/bin/skills/clickzetta-index-manager/eval_cases.jsonl +5 -0
- package/bin/skills/clickzetta-index-manager/references/bloomfilter-index.md +67 -0
- package/bin/skills/clickzetta-index-manager/references/index-management.md +73 -0
- package/bin/skills/clickzetta-index-manager/references/inverted-index.md +80 -0
- package/bin/skills/clickzetta-index-manager/references/vector-index.md +81 -0
- package/bin/skills/clickzetta-kafka-ingest-pipeline/SKILL.md +751 -0
- package/bin/skills/clickzetta-kafka-ingest-pipeline/eval_cases.jsonl +5 -0
- package/bin/skills/clickzetta-kafka-ingest-pipeline/references/kafka-pipe-syntax.md +324 -0
- package/bin/skills/clickzetta-monitoring/SKILL.md +199 -0
- package/bin/skills/clickzetta-monitoring/eval_cases.jsonl +5 -0
- package/bin/skills/clickzetta-monitoring/references/job-history-analysis.md +97 -0
- package/bin/skills/clickzetta-monitoring/references/show-jobs.md +48 -0
- package/bin/skills/clickzetta-oss-ingest-pipeline/SKILL.md +537 -0
- package/bin/skills/clickzetta-query-optimizer/SKILL.md +156 -0
- package/bin/skills/clickzetta-query-optimizer/eval_cases.jsonl +5 -0
- package/bin/skills/clickzetta-query-optimizer/references/explain.md +56 -0
- package/bin/skills/clickzetta-query-optimizer/references/hints-and-sortkey.md +78 -0
- package/bin/skills/clickzetta-query-optimizer/references/optimize.md +65 -0
- package/bin/skills/clickzetta-query-optimizer/references/result-cache.md +49 -0
- package/bin/skills/clickzetta-query-optimizer/references/show-jobs.md +42 -0
- package/bin/skills/clickzetta-realtime-sync-pipeline/SKILL.md +276 -0
- package/bin/skills/clickzetta-sql-pipeline-manager/SKILL.md +379 -0
- package/bin/skills/clickzetta-sql-pipeline-manager/evals/evals.json +166 -0
- package/bin/skills/clickzetta-sql-pipeline-manager/references/dynamic-table.md +185 -0
- package/bin/skills/clickzetta-sql-pipeline-manager/references/materialized-view.md +129 -0
- package/bin/skills/clickzetta-sql-pipeline-manager/references/pipe.md +222 -0
- package/bin/skills/clickzetta-sql-pipeline-manager/references/table-stream.md +125 -0
- package/bin/skills/clickzetta-table-stream-pipeline/SKILL.md +206 -0
- package/bin/skills/clickzetta-vcluster-manager/SKILL.md +212 -0
- package/bin/skills/clickzetta-vcluster-manager/references/vc-cache.md +54 -0
- package/bin/skills/clickzetta-vcluster-manager/references/vcluster-ddl.md +150 -0
- package/bin/skills/clickzetta-volume-manager/SKILL.md +292 -0
- package/bin/skills/clickzetta-volume-manager/references/volume-ddl.md +199 -0
- package/bin/skills/cz-cli/SKILL.md +1 -1
- package/bin/skills/cz-cli-inner/SKILL.md +8 -0
- package/package.json +1 -1
- /package/bin/skills/{dt-creator → clickzetta-dynamic-table/dt-creator}/SKILL.md +0 -0
- /package/bin/skills/{dt-creator → clickzetta-dynamic-table/dt-creator}/references/dt-declaration-strategy.md +0 -0
- /package/bin/skills/{dt-creator → clickzetta-dynamic-table/dt-creator}/references/incremental-config-reference.md +0 -0
- /package/bin/skills/{dt-creator → clickzetta-dynamic-table/dt-creator}/references/refresh-history-guide.md +0 -0
- /package/bin/skills/{dt-creator → clickzetta-dynamic-table/dt-creator}/references/sql-limitations.md +0 -0
- /package/bin/skills/{dynamic-table-alter → clickzetta-dynamic-table/dynamic-table-alter}/SKILL.md +0 -0
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# Bloom Filter 索引参考
|
|
2
|
+
|
|
3
|
+
> 来源:https://www.yunqi.tech/documents/CREATE-BLOOMFILTER-INDEX
|
|
4
|
+
|
|
5
|
+
## 适用场景
|
|
6
|
+
|
|
7
|
+
高基数列(如 ID、邮箱、手机号)的**等值查询**加速。通过跳过不含目标值的数据文件,减少 I/O。
|
|
8
|
+
|
|
9
|
+
不支持的列类型:INTERVAL、STRUCT、MAP、ARRAY。
|
|
10
|
+
|
|
11
|
+
## 建表时创建
|
|
12
|
+
|
|
13
|
+
```sql
|
|
14
|
+
CREATE TABLE orders (
|
|
15
|
+
order_id INT,
|
|
16
|
+
customer_id INT,
|
|
17
|
+
amount DOUBLE,
|
|
18
|
+
INDEX order_id_idx (order_id) BLOOMFILTER COMMENT 'bloom filter on order_id',
|
|
19
|
+
INDEX customer_id_idx (customer_id) BLOOMFILTER
|
|
20
|
+
) USING parquet;
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## 已有表添加
|
|
24
|
+
|
|
25
|
+
```sql
|
|
26
|
+
CREATE BLOOMFILTER INDEX [IF NOT EXISTS] index_name
|
|
27
|
+
ON TABLE [schema.]table_name(column_name)
|
|
28
|
+
[COMMENT 'comment']
|
|
29
|
+
[PROPERTIES ('key' = 'value')];
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
### ngram 分词器(用于字符串模糊匹配)
|
|
33
|
+
|
|
34
|
+
```sql
|
|
35
|
+
CREATE BLOOMFILTER INDEX idx_ngram
|
|
36
|
+
ON TABLE demo(col_name)
|
|
37
|
+
PROPERTIES ('analyzer' = 'ngram', 'n' = '3');
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
`n` 为 ngram 长度,例如 n=4 时 "Lakehouse" 被索引为 "Lake"、"akeh"、"keho"...
|
|
41
|
+
|
|
42
|
+
## 注意事项
|
|
43
|
+
|
|
44
|
+
- **只对新写入数据生效**,旧数据不生效
|
|
45
|
+
- 旧数据需要生效:执行 `INSERT OVERWRITE table SELECT * FROM table` 重写数据
|
|
46
|
+
- 一张表可以创建多个 Bloom Filter 索引
|
|
47
|
+
- 目前只支持**单列索引**
|
|
48
|
+
|
|
49
|
+
## 示例(完整流程)
|
|
50
|
+
|
|
51
|
+
```sql
|
|
52
|
+
-- 建表时指定
|
|
53
|
+
CREATE TABLE t (
|
|
54
|
+
order_id INT,
|
|
55
|
+
customer_id INT,
|
|
56
|
+
INDEX order_id_index (order_id) BLOOMFILTER COMMENT 'BLOOMFILTER'
|
|
57
|
+
);
|
|
58
|
+
|
|
59
|
+
-- 查看索引
|
|
60
|
+
SHOW INDEX FROM t;
|
|
61
|
+
|
|
62
|
+
-- 查看索引详情
|
|
63
|
+
DESC INDEX order_id_index;
|
|
64
|
+
|
|
65
|
+
-- 删除索引
|
|
66
|
+
DROP INDEX order_id_index;
|
|
67
|
+
```
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
# 索引管理命令参考
|
|
2
|
+
|
|
3
|
+
> 来源:https://www.yunqi.tech/documents/build-inverted-index、DROP-INDEX、SHOW-INDEX、DESC-INDEX
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## BUILD INDEX(为存量数据构建索引)
|
|
8
|
+
|
|
9
|
+
支持向量索引和倒排索引,**不支持 Bloom Filter**。
|
|
10
|
+
|
|
11
|
+
```sql
|
|
12
|
+
-- 全表构建
|
|
13
|
+
BUILD INDEX index_name ON [schema.]table_name;
|
|
14
|
+
|
|
15
|
+
-- 指定分区构建(支持 =, !=, >, >=, <, <=)
|
|
16
|
+
BUILD INDEX index_name ON table_name
|
|
17
|
+
WHERE partition_col1 = '2024-01-01' AND partition_col2 = 'us';
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
说明:
|
|
21
|
+
- `BUILD INDEX` 是**同步任务**,执行过程消耗计算资源
|
|
22
|
+
- 大分区表建议**按分区逐批**构建,避免单次消耗过多资源
|
|
23
|
+
- 进度可通过 Job Profile 查看
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## DROP INDEX(删除索引)
|
|
28
|
+
|
|
29
|
+
```sql
|
|
30
|
+
DROP INDEX [IF EXISTS] index_name;
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
注意:删除索引**不会立即释放存储空间**,后续新增数据不再构建该索引数据。
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
## SHOW INDEX(列出表的所有索引)
|
|
38
|
+
|
|
39
|
+
```sql
|
|
40
|
+
SHOW INDEX [IN|FROM] [schema.]table_name [LIMIT num];
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
示例:
|
|
44
|
+
```sql
|
|
45
|
+
SHOW INDEX FROM orders;
|
|
46
|
+
SHOW INDEX FROM my_schema.orders;
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## DESC INDEX(查看索引详情)
|
|
52
|
+
|
|
53
|
+
```sql
|
|
54
|
+
DESC INDEX [EXTENDED] index_name;
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
- 基础模式:显示名称、创建时间、类型、所属表、列名
|
|
58
|
+
- `EXTENDED`:额外显示索引大小(倒排索引支持,Bloom Filter 暂不支持)
|
|
59
|
+
|
|
60
|
+
示例输出:
|
|
61
|
+
```
|
|
62
|
+
+--------------------------+--------------------------+
|
|
63
|
+
| info_name | info_value |
|
|
64
|
+
+--------------------------+--------------------------+
|
|
65
|
+
| name | order_year_index |
|
|
66
|
+
| creator | my_user |
|
|
67
|
+
| created_time | 2024-12-27 10:51:58.977 |
|
|
68
|
+
| index_type | inverted |
|
|
69
|
+
| table_name | t |
|
|
70
|
+
| table_column | order_year |
|
|
71
|
+
| total_index_size | 296 |
|
|
72
|
+
+--------------------------+--------------------------+
|
|
73
|
+
```
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
# 倒排索引参考
|
|
2
|
+
|
|
3
|
+
> 来源:https://www.yunqi.tech/documents/create-inverted-index
|
|
4
|
+
|
|
5
|
+
## 适用场景
|
|
6
|
+
|
|
7
|
+
文本搜索、关键词匹配。支持数值、日期、字符串列。字符串列必须指定分词器。
|
|
8
|
+
|
|
9
|
+
## 分词器选择
|
|
10
|
+
|
|
11
|
+
| 分词器 | 适用场景 | 说明 |
|
|
12
|
+
|---|---|---|
|
|
13
|
+
| `keyword` | 精确匹配 | 不分词,整个字符串作为一个词根 |
|
|
14
|
+
| `english` | 英文文本 | 识别连续 ASCII 字母和数字,转小写 |
|
|
15
|
+
| `chinese` | 中英文混合 | 识别中文和英文,过滤标点,英文转小写 |
|
|
16
|
+
| `unicode` | 多语言 | 基于 Unicode 文本分割算法,支持多语言 |
|
|
17
|
+
|
|
18
|
+
数值和日期类型**不需要**指定 PROPERTIES。
|
|
19
|
+
|
|
20
|
+
## 建表时创建
|
|
21
|
+
|
|
22
|
+
```sql
|
|
23
|
+
CREATE TABLE articles (
|
|
24
|
+
id INT,
|
|
25
|
+
title STRING,
|
|
26
|
+
content STRING,
|
|
27
|
+
INDEX id_idx (id) INVERTED,
|
|
28
|
+
INDEX title_idx (title) INVERTED PROPERTIES('analyzer'='chinese'),
|
|
29
|
+
INDEX content_idx (content) INVERTED PROPERTIES('analyzer'='english')
|
|
30
|
+
);
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## 已有表添加
|
|
34
|
+
|
|
35
|
+
```sql
|
|
36
|
+
CREATE INVERTED INDEX [IF NOT EXISTS] index_name
|
|
37
|
+
ON TABLE [schema.]table_name(column_name)
|
|
38
|
+
[COMMENT 'comment']
|
|
39
|
+
[PROPERTIES('analyzer'='english|chinese|keyword|unicode')];
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## 注意事项
|
|
43
|
+
|
|
44
|
+
- **只对新写入数据生效**,旧数据需用 `BUILD INDEX` 命令补建
|
|
45
|
+
- 只支持**单列索引**
|
|
46
|
+
|
|
47
|
+
## 查询语法
|
|
48
|
+
|
|
49
|
+
```sql
|
|
50
|
+
-- 匹配任意词(OR)
|
|
51
|
+
SELECT * FROM articles WHERE match_any(content, 'keyword1 keyword2');
|
|
52
|
+
|
|
53
|
+
-- 匹配所有词(AND)
|
|
54
|
+
SELECT * FROM articles WHERE match_all(content, 'keyword1 keyword2');
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## 完整示例
|
|
58
|
+
|
|
59
|
+
```sql
|
|
60
|
+
-- 建表
|
|
61
|
+
CREATE TABLE t (
|
|
62
|
+
order_id INT,
|
|
63
|
+
order_year STRING,
|
|
64
|
+
INDEX order_id_index (order_id) INVERTED COMMENT 'INVERTED'
|
|
65
|
+
);
|
|
66
|
+
|
|
67
|
+
-- 给已有列添加索引
|
|
68
|
+
CREATE INVERTED INDEX order_year_index
|
|
69
|
+
ON TABLE public.t(order_year)
|
|
70
|
+
PROPERTIES('analyzer'='chinese');
|
|
71
|
+
|
|
72
|
+
-- 对存量数据构建索引
|
|
73
|
+
BUILD INDEX order_year_index ON public.t;
|
|
74
|
+
|
|
75
|
+
-- 查询
|
|
76
|
+
SELECT * FROM t WHERE match_all(order_year, '2023');
|
|
77
|
+
|
|
78
|
+
-- 查看索引详情
|
|
79
|
+
DESC INDEX EXTENDED order_year_index;
|
|
80
|
+
```
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
# 向量索引参考
|
|
2
|
+
|
|
3
|
+
> 来源:https://www.yunqi.tech/documents/create-vector-index
|
|
4
|
+
|
|
5
|
+
## 适用场景
|
|
6
|
+
|
|
7
|
+
语义相似度搜索、RAG 检索、推荐系统。基于 HNSW 算法。
|
|
8
|
+
|
|
9
|
+
## 建表时创建
|
|
10
|
+
|
|
11
|
+
```sql
|
|
12
|
+
CREATE TABLE embeddings (
|
|
13
|
+
id INT,
|
|
14
|
+
vec VECTOR(FLOAT, 512),
|
|
15
|
+
INDEX vec_idx (vec) USING VECTOR PROPERTIES(
|
|
16
|
+
"scalar.type" = "f32",
|
|
17
|
+
"distance.function" = "l2_distance"
|
|
18
|
+
)
|
|
19
|
+
);
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## 已有表添加
|
|
23
|
+
|
|
24
|
+
```sql
|
|
25
|
+
CREATE VECTOR INDEX [IF NOT EXISTS] index_name
|
|
26
|
+
ON TABLE [schema.]table_name(column_name)
|
|
27
|
+
PROPERTIES(
|
|
28
|
+
"property1" = "value1",
|
|
29
|
+
...
|
|
30
|
+
);
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## PROPERTIES 参数说明
|
|
34
|
+
|
|
35
|
+
| 参数 | 可选值 | 默认值 | 说明 |
|
|
36
|
+
|---|---|---|---|
|
|
37
|
+
| `distance.function` | `l2_distance`, `cosine_distance`, `jaccard_distance`, `hamming_distance` | `cosine_distance` | 距离函数 |
|
|
38
|
+
| `scalar.type` | `f32`, `f16`, `i8`, `b1` | `f32` | 向量元素类型 |
|
|
39
|
+
| `m` | 建议不超过 1000 | `16` | HNSW 最大邻居数 |
|
|
40
|
+
| `ef.construction` | 建议不超过 5000 | `128` | HNSW 构建时候选集大小 |
|
|
41
|
+
| `reuse.vector.column` | `true`, `false` | `false` | 复用 vector column 数据节省存储 |
|
|
42
|
+
| `compress.codec` | `uncompressed`, `zstd`, `lz4` | `uncompressed` | 压缩算法(复用 column 时不生效) |
|
|
43
|
+
| `compress.level` | `fastest`, `default`, `best` | `default` | 压缩级别 |
|
|
44
|
+
|
|
45
|
+
## 向量列类型与索引元素类型对应
|
|
46
|
+
|
|
47
|
+
| 索引元素类型(scalar.type) | 支持的向量列类型 |
|
|
48
|
+
|---|---|
|
|
49
|
+
| `f32` | int, float |
|
|
50
|
+
| `f16` | int, float |
|
|
51
|
+
| `i8` | tinyint, int, float |
|
|
52
|
+
| `b1` | tinyint, int, float(按位建索引需设 `conversion.rule=as_bits`) |
|
|
53
|
+
|
|
54
|
+
## 注意事项
|
|
55
|
+
|
|
56
|
+
- **只对新写入数据生效**,旧数据需用 `BUILD INDEX` 命令补建
|
|
57
|
+
|
|
58
|
+
## 完整示例
|
|
59
|
+
|
|
60
|
+
```sql
|
|
61
|
+
-- 建表时创建向量索引
|
|
62
|
+
CREATE TABLE test_vector (
|
|
63
|
+
vec VECTOR(FLOAT, 4),
|
|
64
|
+
id INT,
|
|
65
|
+
INDEX vec_idx (vec) USING VECTOR PROPERTIES(
|
|
66
|
+
"scalar.type" = "f32",
|
|
67
|
+
"distance.function" = "l2_distance"
|
|
68
|
+
)
|
|
69
|
+
);
|
|
70
|
+
|
|
71
|
+
-- 已有表添加向量索引
|
|
72
|
+
CREATE VECTOR INDEX vec_idx
|
|
73
|
+
ON TABLE public.test_vector(vec)
|
|
74
|
+
PROPERTIES(
|
|
75
|
+
"scalar.type" = "f32",
|
|
76
|
+
"distance.function" = "cosine_distance"
|
|
77
|
+
);
|
|
78
|
+
|
|
79
|
+
-- 对存量数据构建索引
|
|
80
|
+
BUILD INDEX vec_idx ON public.test_vector;
|
|
81
|
+
```
|