@clickzetta/cz-cli-linux-x64 0.3.4 → 0.3.5

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 (118) hide show
  1. package/bin/cz-cli +0 -0
  2. package/package.json +1 -1
  3. package/bin/skills/clickzetta-access-control/SKILL.md +0 -243
  4. package/bin/skills/clickzetta-access-control/references/dynamic-masking.md +0 -86
  5. package/bin/skills/clickzetta-access-control/references/grant-revoke.md +0 -103
  6. package/bin/skills/clickzetta-access-control/references/role-management.md +0 -66
  7. package/bin/skills/clickzetta-access-control/references/user-management.md +0 -61
  8. package/bin/skills/clickzetta-ai-vector-search/SKILL.md +0 -160
  9. package/bin/skills/clickzetta-ai-vector-search/references/vector-search.md +0 -155
  10. package/bin/skills/clickzetta-app-python-sdk/SKILL.md +0 -153
  11. package/bin/skills/clickzetta-app-python-sdk/references/bulkload.md +0 -196
  12. package/bin/skills/clickzetta-app-python-sdk/references/connector.md +0 -143
  13. package/bin/skills/clickzetta-app-python-sdk/references/realtime.md +0 -122
  14. package/bin/skills/clickzetta-batch-sync-pipeline/SKILL.md +0 -293
  15. package/bin/skills/clickzetta-bi-connect/SKILL.md +0 -176
  16. package/bin/skills/clickzetta-bi-connect/references/bi-tools.md +0 -170
  17. package/bin/skills/clickzetta-cdc-sync-pipeline/SKILL.md +0 -457
  18. package/bin/skills/clickzetta-concepts/SKILL.md +0 -282
  19. package/bin/skills/clickzetta-concepts/references/brands-and-endpoints.md +0 -79
  20. package/bin/skills/clickzetta-concepts/references/object-model.md +0 -311
  21. package/bin/skills/clickzetta-data-ingest-pipeline/SKILL.md +0 -165
  22. package/bin/skills/clickzetta-data-lifecycle/SKILL.md +0 -211
  23. package/bin/skills/clickzetta-data-lifecycle/references/lifecycle-reference.md +0 -175
  24. package/bin/skills/clickzetta-data-recovery/SKILL.md +0 -215
  25. package/bin/skills/clickzetta-data-recovery/evals/evals.json +0 -35
  26. package/bin/skills/clickzetta-data-science/SKILL.md +0 -125
  27. package/bin/skills/clickzetta-data-science/references/bitmap-profile.md +0 -146
  28. package/bin/skills/clickzetta-data-science/references/data-patterns.md +0 -110
  29. package/bin/skills/clickzetta-data-science/references/setup.md +0 -160
  30. package/bin/skills/clickzetta-data-science/references/stats-functions.md +0 -195
  31. package/bin/skills/clickzetta-data-science/references/write-and-infer.md +0 -122
  32. package/bin/skills/clickzetta-data-science/references/zettapark-api.md +0 -156
  33. package/bin/skills/clickzetta-data-sharing/SKILL.md +0 -160
  34. package/bin/skills/clickzetta-data-sharing/references/share-ddl.md +0 -134
  35. package/bin/skills/clickzetta-dba-guide/SKILL.md +0 -540
  36. package/bin/skills/clickzetta-dw-modeling/SKILL.md +0 -259
  37. package/bin/skills/clickzetta-dw-modeling/references/modeling-patterns.md +0 -100
  38. package/bin/skills/clickzetta-dynamic-table/SKILL.md +0 -112
  39. package/bin/skills/clickzetta-dynamic-table/best-practices/dimension-table-join-guide.md +0 -257
  40. package/bin/skills/clickzetta-dynamic-table/best-practices/medallion-and-stream-patterns.md +0 -124
  41. package/bin/skills/clickzetta-dynamic-table/best-practices/non-partitioned-merge-into-warning.md +0 -96
  42. package/bin/skills/clickzetta-dynamic-table/best-practices/performance-optimization.md +0 -109
  43. package/bin/skills/clickzetta-dynamic-table/dt-creator/SKILL.md +0 -15
  44. package/bin/skills/clickzetta-dynamic-table/dt-creator/references/dt-declaration-strategy.md +0 -185
  45. package/bin/skills/clickzetta-dynamic-table/dt-creator/references/incremental-config-reference.md +0 -429
  46. package/bin/skills/clickzetta-dynamic-table/dt-creator/references/refresh-history-guide.md +0 -268
  47. package/bin/skills/clickzetta-dynamic-table/dt-creator/references/sql-limitations.md +0 -80
  48. package/bin/skills/clickzetta-dynamic-table/dynamic-table-alter/SKILL.md +0 -190
  49. package/bin/skills/clickzetta-external-catalog/SKILL.md +0 -120
  50. package/bin/skills/clickzetta-external-catalog/references/external-catalog-ddl.md +0 -130
  51. package/bin/skills/clickzetta-external-function/SKILL.md +0 -203
  52. package/bin/skills/clickzetta-external-function/references/external-function-ddl.md +0 -171
  53. package/bin/skills/clickzetta-file-import-pipeline/SKILL.md +0 -156
  54. package/bin/skills/clickzetta-index-manager/SKILL.md +0 -140
  55. package/bin/skills/clickzetta-index-manager/references/bloomfilter-index.md +0 -67
  56. package/bin/skills/clickzetta-index-manager/references/index-management.md +0 -73
  57. package/bin/skills/clickzetta-index-manager/references/inverted-index.md +0 -80
  58. package/bin/skills/clickzetta-index-manager/references/vector-index.md +0 -81
  59. package/bin/skills/clickzetta-information-schema/SKILL.md +0 -367
  60. package/bin/skills/clickzetta-information-schema/references/instance-views-reference.md +0 -276
  61. package/bin/skills/clickzetta-information-schema/references/metering-views-reference.md +0 -137
  62. package/bin/skills/clickzetta-information-schema/references/views-reference.md +0 -271
  63. package/bin/skills/clickzetta-java-sdk/SKILL.md +0 -186
  64. package/bin/skills/clickzetta-java-sdk/references/bulkload.md +0 -163
  65. package/bin/skills/clickzetta-java-sdk/references/realtime.md +0 -212
  66. package/bin/skills/clickzetta-kafka-ingest-pipeline/SKILL.md +0 -639
  67. package/bin/skills/clickzetta-kafka-ingest-pipeline/references/kafka-pipe-syntax.md +0 -324
  68. package/bin/skills/clickzetta-lakehouse-connect/SKILL.md +0 -218
  69. package/bin/skills/clickzetta-lakehouse-connect/evals/evals.json +0 -35
  70. package/bin/skills/clickzetta-lakehouse-connect/references/config-file.md +0 -435
  71. package/bin/skills/clickzetta-lakehouse-connect/references/jdbc.md +0 -478
  72. package/bin/skills/clickzetta-lakehouse-connect/references/python-sdk.md +0 -225
  73. package/bin/skills/clickzetta-lakehouse-connect/references/sqlalchemy.md +0 -468
  74. package/bin/skills/clickzetta-lakehouse-connect/references/zettapark-session.md +0 -445
  75. package/bin/skills/clickzetta-manage-comments/SKILL.md +0 -219
  76. package/bin/skills/clickzetta-metadata-query/SKILL.md +0 -298
  77. package/bin/skills/clickzetta-metadata-query/references/show-desc-reference.md +0 -326
  78. package/bin/skills/clickzetta-monitoring/SKILL.md +0 -199
  79. package/bin/skills/clickzetta-monitoring/references/job-history-analysis.md +0 -97
  80. package/bin/skills/clickzetta-monitoring/references/show-jobs.md +0 -48
  81. package/bin/skills/clickzetta-oss-ingest-pipeline/SKILL.md +0 -427
  82. package/bin/skills/clickzetta-query-optimizer/SKILL.md +0 -156
  83. package/bin/skills/clickzetta-query-optimizer/references/explain.md +0 -56
  84. package/bin/skills/clickzetta-query-optimizer/references/hints-and-sortkey.md +0 -78
  85. package/bin/skills/clickzetta-query-optimizer/references/optimize.md +0 -65
  86. package/bin/skills/clickzetta-query-optimizer/references/result-cache.md +0 -49
  87. package/bin/skills/clickzetta-query-optimizer/references/show-jobs.md +0 -42
  88. package/bin/skills/clickzetta-realtime-sync-pipeline/SKILL.md +0 -197
  89. package/bin/skills/clickzetta-semantic-view/SKILL.md +0 -207
  90. package/bin/skills/clickzetta-semantic-view/references/semantic-view-reference.md +0 -167
  91. package/bin/skills/clickzetta-spark-flink-connector/SKILL.md +0 -92
  92. package/bin/skills/clickzetta-spark-flink-connector/references/flink.md +0 -147
  93. package/bin/skills/clickzetta-spark-flink-connector/references/spark.md +0 -132
  94. package/bin/skills/clickzetta-sql-pipeline-manager/SKILL.md +0 -379
  95. package/bin/skills/clickzetta-sql-pipeline-manager/evals/evals.json +0 -166
  96. package/bin/skills/clickzetta-sql-pipeline-manager/references/dynamic-table.md +0 -185
  97. package/bin/skills/clickzetta-sql-pipeline-manager/references/materialized-view.md +0 -129
  98. package/bin/skills/clickzetta-sql-pipeline-manager/references/pipe.md +0 -222
  99. package/bin/skills/clickzetta-sql-pipeline-manager/references/table-stream.md +0 -125
  100. package/bin/skills/clickzetta-sql-syntax-guide/SKILL.md +0 -172
  101. package/bin/skills/clickzetta-sql-syntax-guide/references/ddl-reference.md +0 -350
  102. package/bin/skills/clickzetta-sql-syntax-guide/references/dml-reference.md +0 -279
  103. package/bin/skills/clickzetta-sql-syntax-guide/references/dql-reference.md +0 -504
  104. package/bin/skills/clickzetta-sql-syntax-guide/references/functions-reference.md +0 -372
  105. package/bin/skills/clickzetta-sql-syntax-guide/references/migration-databricks.md +0 -260
  106. package/bin/skills/clickzetta-sql-syntax-guide/references/migration-snowflake.md +0 -382
  107. package/bin/skills/clickzetta-sql-syntax-guide/references/vs-snowflake.md +0 -346
  108. package/bin/skills/clickzetta-sql-syntax-guide/references/vs-spark.md +0 -229
  109. package/bin/skills/clickzetta-studio-overview/SKILL.md +0 -170
  110. package/bin/skills/clickzetta-studio-overview/references/studio-modules.md +0 -173
  111. package/bin/skills/clickzetta-table-stream-pipeline/SKILL.md +0 -206
  112. package/bin/skills/clickzetta-vcluster-manager/SKILL.md +0 -212
  113. package/bin/skills/clickzetta-vcluster-manager/references/vc-cache.md +0 -54
  114. package/bin/skills/clickzetta-vcluster-manager/references/vcluster-ddl.md +0 -150
  115. package/bin/skills/clickzetta-volume-manager/SKILL.md +0 -292
  116. package/bin/skills/clickzetta-volume-manager/references/volume-ddl.md +0 -199
  117. package/bin/skills/clickzetta-zettapark/SKILL.md +0 -248
  118. package/bin/skills/clickzetta-zettapark/references/zettapark-api.md +0 -283
@@ -1,435 +0,0 @@
1
- # 配置文件管理 — connections.json 详细参考
2
-
3
- 本文档详细说明 ClickZetta Lakehouse 的连接配置文件格式、搜索路径、多连接管理以及 Docker 部署方式。所有内容基于 `mcp-clickzetta-server` 项目中的真实代码。
4
-
5
- ## 目录
6
-
7
- - [JSON 配置文件格式](#json-配置文件格式)
8
- - [五级搜索路径](#五级搜索路径)
9
- - [多连接管理](#多连接管理)
10
- - [环境变量备选](#环境变量备选)
11
- - [Docker / Kubernetes 部署配置](#docker--kubernetes-部署配置)
12
- - [system_config 参数说明](#system_config-参数说明)
13
- - [适用场景](#适用场景)
14
- - [常见问题排查](#常见问题排查)
15
- - [完整配置模板](#完整配置模板)
16
-
17
- ---
18
-
19
- ## JSON 配置文件格式
20
-
21
- 配置文件 `connections.json` 包含两个顶层对象:`connections`(连接数组)和 `system_config`(系统级配置)。
22
-
23
- ### 基本结构
24
-
25
- ```json
26
- {
27
- "connections": [
28
- {
29
- "is_default": true,
30
- "connection_name": "dev",
31
- "service": "cn-shanghai-alicloud.api.clickzetta.com",
32
- "username": "my_user",
33
- "password": "my_password",
34
- "instance": "my_instance",
35
- "workspace": "my_workspace",
36
- "schema": "public",
37
- "vcluster": "default_ap",
38
- "description": "开发环境",
39
- "hints": {
40
- "sdk.job.timeout": 300,
41
- "query_tag": "dev-queries"
42
- }
43
- }
44
- ],
45
- "system_config": {
46
- "allow_write": true,
47
- "prefetch": false,
48
- "log_level": "INFO",
49
- "exclude_tools": []
50
- }
51
- }
52
- ```
53
-
54
- ### 连接字段说明
55
-
56
- | 字段 | 类型 | 必填 | 默认值 | 说明 |
57
- |:--|:--|:--|:--|:--|
58
- | `connection_name` | string | ✅ | — | 连接名称,用于在多连接中唯一标识 |
59
- | `service` | string | ✅ | — | API 服务地址,如 `cn-shanghai-alicloud.api.clickzetta.com` |
60
- | `username` | string | ✅ | — | 登录用户名 |
61
- | `password` | string | ✅ | — | 登录密码 |
62
- | `instance` | string | ✅ | — | 实例名称 |
63
- | `workspace` | string | ✅ | — | 工作空间名称 |
64
- | `schema` | string | ✅ | — | 默认 Schema |
65
- | `vcluster` | string | ❌ | `"default_ap"` | 虚拟集群名称 |
66
- | `is_default` | boolean | ❌ | `false` | 是否为默认连接 |
67
- | `description` | string | ❌ | `""` | 连接描述信息 |
68
- | `hints` | object | ❌ | 见下方 | SDK 运行时参数 |
69
-
70
- ### hints 默认值
71
-
72
- 当 `hints` 未配置时,系统自动使用以下默认值:
73
-
74
- ```json
75
- {
76
- "sdk.job.timeout": 300,
77
- "query_tag": "Query from MCP Server",
78
- "cz.storage.parquet.vector.index.read.memory.cache": "true",
79
- "cz.storage.parquet.vector.index.read.local.cache": "false",
80
- "cz.sql.table.scan.push.down.filter": "true",
81
- "cz.sql.table.scan.enable.ensure.filter": "true",
82
- "cz.storage.always.prefetch.internal": "true",
83
- "cz.optimizer.generate.columns.always.valid": "true",
84
- "cz.sql.index.prewhere.enabled": "true",
85
- "cz.storage.parquet.enable.io.prefetch": "false"
86
- }
87
- ```
88
-
89
- ---
90
-
91
- ## 五级搜索路径
92
-
93
- `ConnectionManager` 按以下优先级(从高到低)搜索配置文件,找到第一个可访问的文件即停止:
94
-
95
- | 优先级 | 路径 | 适用场景 |
96
- |:--|:--|:--|
97
- | 1(最高) | `/app/.clickzetta/lakehouse_connection/connections.json` | Docker 统一路径(推荐) |
98
- | 2 | `/app/config/lakehouse_connection/connections.json` | 旧版 Docker 兼容路径 |
99
- | 3 | `config/lakehouse_connection/connections.json` | 项目目录相对路径(本地开发) |
100
- | 4 | `~/.clickzetta/connections.json` | 用户主目录(仅非 Docker 环境) |
101
- | 5(最低) | `/app/.clickzetta/connections.json` | 简化 Docker 路径 |
102
-
103
- > **Windows Docker 环境**:系统会自动检测并添加额外的 Windows Docker 友好路径。
104
-
105
- ### 搜索逻辑源码参考
106
-
107
- ```python
108
- # 来自 connection_manager.py
109
- class ConnectionManager:
110
- UNIFIED_CONFIG_FILE = "/app/.clickzetta/lakehouse_connection/connections.json"
111
- DOCKER_CONFIG_FILE = "/app/config/lakehouse_connection/connections.json"
112
- DEFAULT_CONFIG_FILE = "config/lakehouse_connection/connections.json"
113
- USER_CONFIG_FILE = os.path.expanduser("~/.clickzetta/connections.json")
114
- SIMPLE_CONFIG_FILE = "/app/.clickzetta/connections.json"
115
- ```
116
-
117
- ### 指定配置文件路径
118
-
119
- 也可以在初始化时直接指定配置文件路径,跳过搜索逻辑:
120
-
121
- ```python
122
- from mcp_clickzetta_server.connection_manager import ConnectionManager
123
-
124
- # 使用指定路径
125
- conn_manager = ConnectionManager(config_file="/path/to/my/connections.json")
126
- ```
127
-
128
- ---
129
-
130
- ## 多连接管理
131
-
132
- ### 配置多个连接
133
-
134
- 在 `connections` 数组中定义多个连接,通过 `is_default` 标记默认连接:
135
-
136
- ```json
137
- {
138
- "connections": [
139
- {
140
- "is_default": true,
141
- "connection_name": "dev",
142
- "service": "cn-shanghai-alicloud.api.clickzetta.com",
143
- "username": "dev_user",
144
- "password": "dev_password",
145
- "instance": "dev_instance",
146
- "workspace": "dev_workspace",
147
- "schema": "public",
148
- "vcluster": "default_ap",
149
- "description": "开发环境"
150
- },
151
- {
152
- "connection_name": "staging",
153
- "service": "cn-shanghai-alicloud.api.clickzetta.com",
154
- "username": "staging_user",
155
- "password": "staging_password",
156
- "instance": "staging_instance",
157
- "workspace": "staging_workspace",
158
- "schema": "public",
159
- "vcluster": "default_ap",
160
- "description": "预发布环境"
161
- },
162
- {
163
- "connection_name": "prod",
164
- "service": "cn-shanghai-alicloud.api.clickzetta.com",
165
- "username": "prod_user",
166
- "password": "prod_password",
167
- "instance": "prod_instance",
168
- "workspace": "prod_workspace",
169
- "schema": "public",
170
- "vcluster": "default_ap",
171
- "description": "生产环境",
172
- "hints": {
173
- "sdk.job.timeout": 600,
174
- "query_tag": "production-queries"
175
- }
176
- }
177
- ],
178
- "system_config": {
179
- "allow_write": false,
180
- "log_level": "WARNING"
181
- }
182
- }
183
- ```
184
-
185
- ### 连接选择规则
186
-
187
- 1. 如果有 `is_default: true` 的连接,自动设为活跃连接
188
- 2. 如果有多个 `is_default: true`,使用最后一个
189
- 3. 如果没有默认连接,使用第一个有效连接
190
- 4. `service` 为 `"not_configured"` 的占位配置会被自动跳过
191
-
192
- ### 代码中切换连接
193
-
194
- ```python
195
- from mcp_clickzetta_server.connection_manager import ConnectionManager
196
-
197
- conn_manager = ConnectionManager()
198
-
199
- # 列出所有可用连接
200
- connections = conn_manager.list_connections()
201
- for conn in connections:
202
- print(f" {conn['name']}: {conn.get('description', '')}")
203
-
204
- # 切换到指定连接
205
- result = conn_manager.switch_connection("prod")
206
- print(f"已切换到: {result}")
207
-
208
- # 获取当前活跃连接配置
209
- active_config = conn_manager.get_active_config()
210
- print(f"当前连接: {active_config.connection_name}")
211
- print(f"工作空间: {active_config.workspace}")
212
-
213
- # 设置新的默认连接
214
- conn_manager.set_default_connection("staging")
215
-
216
- # 验证连接配置是否完整
217
- validation = conn_manager.validate_connection("dev")
218
- print(f"验证结果: {validation}")
219
- ```
220
-
221
- ---
222
-
223
- ## 环境变量备选
224
-
225
- 当没有找到配置文件时,系统会创建占位配置并启动。以下环境变量可用于配置连接参数:
226
-
227
- ### 连接参数环境变量
228
-
229
- | 环境变量 | 对应字段 | 说明 |
230
- |:--|:--|:--|
231
- | `CLICKZETTA_SERVICE` | `service` | API 服务地址 |
232
- | `CLICKZETTA_USERNAME` | `username` | 用户名 |
233
- | `CLICKZETTA_PASSWORD` | `password` | 密码 |
234
- | `CLICKZETTA_INSTANCE` | `instance` | 实例名称 |
235
- | `CLICKZETTA_WORKSPACE` | `workspace` | 工作空间 |
236
- | `CLICKZETTA_SCHEMA` | `schema` | 默认 Schema |
237
- | `CLICKZETTA_VCLUSTER` | `vcluster` | 虚拟集群(默认 `default_ap`) |
238
-
239
- ### 系统配置环境变量覆盖
240
-
241
- 以下环境变量可覆盖 `system_config` 中的对应配置(优先级最高):
242
-
243
- | 环境变量 | 对应配置 | 示例值 |
244
- |:--|:--|:--|
245
- | `MCP_ALLOW_WRITE` | `allow_write` | `"true"` / `"false"` |
246
- | `MCP_PREFETCH` | `prefetch` | `"true"` / `"false"` |
247
- | `MCP_LOG_LEVEL` | `log_level` | `"DEBUG"` / `"INFO"` / `"WARNING"` / `"ERROR"` |
248
- | `MCP_EXCLUDE_TOOLS` | `exclude_tools` | `"tool1,tool2,tool3"` |
249
-
250
- ### 相似度搜索环境变量
251
-
252
- | 环境变量 | 对应配置 |
253
- |:--|:--|
254
- | `Similar_table_name` | `similar_search.table_name` |
255
- | `Similar_embedding_column_name` | `similar_search.embedding_column_name` |
256
- | `Similar_content_column_name` | `similar_search.content_column_name` |
257
- | `Similar_other_columns_name` | `similar_search.other_columns_name` |
258
- | `Similar_partition_scope` | `similar_search.partition_scope` |
259
-
260
- ### 云存储环境变量
261
-
262
- | 环境变量 | 对应配置 |
263
- |:--|:--|
264
- | `AWS_ACCESS_KEY_ID` | `cloud_storage.aws_access_key_id` |
265
- | `AWS_SECRET_ACCESS_KEY` | `cloud_storage.aws_secret_access_key` |
266
- | `AWS_REGION` | `cloud_storage.aws_region` |
267
-
268
- ### 配置优先级
269
-
270
- 系统配置的加载优先级(从高到低):
271
-
272
- 1. **环境变量**(最高优先级)
273
- 2. **配置文件中的 `system_config`**
274
- 3. **内置默认值**(最低优先级)
275
-
276
- ---
277
-
278
- ## Docker / Kubernetes 部署配置
279
-
280
- ### docker-compose.yml
281
-
282
- ```yaml
283
- services:
284
- mcp-server:
285
- image: mcp-clickzetta-server:latest
286
- volumes:
287
- # 推荐:挂载到统一路径(优先级 1)
288
- - ./config/connections.json:/app/.clickzetta/lakehouse_connection/connections.json:ro
289
- environment:
290
- # 可选:通过环境变量覆盖系统配置
291
- - MCP_ALLOW_WRITE=false
292
- - MCP_LOG_LEVEL=INFO
293
- ```
294
-
295
- ### 使用旧版路径
296
-
297
- ```yaml
298
- services:
299
- mcp-server:
300
- image: mcp-clickzetta-server:latest
301
- volumes:
302
- # 旧版兼容路径(优先级 2)
303
- - ./config/connections.json:/app/config/lakehouse_connection/connections.json:ro
304
- ```
305
-
306
- ### Kubernetes ConfigMap
307
-
308
- ```yaml
309
- apiVersion: v1
310
- kind: ConfigMap
311
- metadata:
312
- name: clickzetta-config
313
- data:
314
- connections.json: |
315
- {
316
- "connections": [
317
- {
318
- "is_default": true,
319
- "connection_name": "prod",
320
- "service": "cn-shanghai-alicloud.api.clickzetta.com",
321
- "username": "prod_user",
322
- "password": "prod_password",
323
- "instance": "prod_instance",
324
- "workspace": "prod_workspace",
325
- "schema": "public",
326
- "vcluster": "default_ap"
327
- }
328
- ],
329
- "system_config": {
330
- "allow_write": false,
331
- "log_level": "WARNING"
332
- }
333
- }
334
- ---
335
- apiVersion: apps/v1
336
- kind: Deployment
337
- metadata:
338
- name: mcp-server
339
- spec:
340
- template:
341
- spec:
342
- containers:
343
- - name: mcp-server
344
- volumeMounts:
345
- - name: config
346
- mountPath: /app/.clickzetta/lakehouse_connection/connections.json
347
- subPath: connections.json
348
- readOnly: true
349
- volumes:
350
- - name: config
351
- configMap:
352
- name: clickzetta-config
353
- ```
354
-
355
- > **安全提示**:生产环境建议使用 Kubernetes Secret 替代 ConfigMap 存储密码。
356
-
357
- ---
358
-
359
- ## system_config 参数说明
360
-
361
- ### 核心参数
362
-
363
- | 参数 | 类型 | 默认值 | 说明 |
364
- |:--|:--|:--|:--|
365
- | `allow_write` | boolean | `false` | 是否允许写操作(INSERT/UPDATE/DELETE) |
366
- | `prefetch` | boolean | `true` | 是否启用数据预取 |
367
- | `log_level` | string | `"INFO"` | 日志级别:`DEBUG` / `INFO` / `WARNING` / `ERROR` |
368
- | `exclude_tools` | array | `[]` | 需要排除的工具列表 |
369
-
370
- ---
371
-
372
- ## 适用场景
373
-
374
- | 场景 | 推荐配置方式 | 说明 |
375
- |:--|:--|:--|
376
- | 本地开发 | `~/.clickzetta/connections.json` | 用户主目录,个人配置 |
377
- | 团队共享 | `config/lakehouse_connection/connections.json` | 项目目录,可纳入版本管理 |
378
- | Docker 部署 | 挂载到 `/app/.clickzetta/lakehouse_connection/` | 统一路径,推荐方式 |
379
- | Kubernetes | ConfigMap / Secret | 声明式配置管理 |
380
- | CI/CD 流水线 | 环境变量 | 无需配置文件,适合自动化 |
381
- | 多环境切换 | 多连接 + `switch_connection()` | 在同一配置文件中管理多个环境 |
382
-
383
- ---
384
-
385
- ## 常见问题排查
386
-
387
- ### 配置文件未找到
388
-
389
- ```
390
- WARNING: 未找到任何可用的配置文件
391
- ```
392
-
393
- **解决方案**:
394
- 1. 确认文件存在于五级搜索路径之一
395
- 2. 检查文件权限:`chmod 600 connections.json`
396
- 3. Docker 环境检查挂载是否正确
397
-
398
- ### JSON 格式错误
399
-
400
- ```
401
- ERROR: 配置文件JSON格式错误
402
- ```
403
-
404
- **解决方案**:
405
- 1. 使用 JSON 验证工具检查格式
406
- 2. 确保所有字符串使用双引号
407
- 3. 检查是否有多余的逗号
408
- 4. 确保中文字符使用 UTF-8 编码保存
409
-
410
- ### 连接配置缺少必需字段
411
-
412
- 每个连接必须包含以下 7 个必需字段:
413
-
414
- ```
415
- connection_name, service, username, password, instance, workspace, schema
416
- ```
417
-
418
- ### 占位配置被跳过
419
-
420
- `service` 设置为 `"not_configured"` 的连接会被自动跳过。确保所有生产连接都配置了正确的 `service` 地址。
421
-
422
- ---
423
-
424
- ## 完整配置模板
425
-
426
- 参考项目中的模板文件:`config/connections-template.json`
427
-
428
- ```bash
429
- # 复制模板并修改
430
- cp config/connections-template.json ~/.clickzetta/connections.json
431
- # 编辑配置
432
- vim ~/.clickzetta/connections.json
433
- # 设置文件权限(保护密码)
434
- chmod 600 ~/.clickzetta/connections.json
435
- ```