Clickzetta 系统技能工具集 - 包含性能分析、诊断等专业工具
Project description
Clickzetta Skills
Clickzetta 系统技能工具集 - 包含性能分析、诊断等专业工具的 Python 包。
包含的技能
1. Job Performance Analyzer (作业性能分析器)
自动诊断 Clickzetta Job 性能问题的工具,分析执行计划(plan.json)和运行概况(job_profile.json),识别瓶颈并给出参数优化建议。
命令: cz-analyze-job
支持场景:
- 增量计算(REFRESH)
- AP模式
- GP模式
- Compaction
- 各类SQL场景
已实现规则:
- Stage/Operator 级别优化 (7条规则)
- 状态表优化 (6条规则)
2. SQL History Expert (SQL历史专家)
分析 SQL 执行历史,识别性能趋势和异常。
命令: cz-sql-history
3. Table Stats Expert (表统计专家)
分析表统计信息,提供优化建议。
命令: cz-table-stats
安装
使用 Makefile(推荐)
# 进入项目目录
cd cz_skills
# 安装
make install
# 开发模式安装(可编辑)
make install-dev
# 卸载
make uninstall
手动安装
# 构建
python3 -m build
# 安装
pip3 install dist/clickzetta_skills-*.whl
使用
Job Performance Analyzer
# 分析性能问题
cz-analyze-job plan.json job_profile.json ./output
# 查看帮助
cz-analyze-job
SQL History Expert
# 分析 SQL 历史
cz-sql-history <options>
Table Stats Expert
# 分析表统计
cz-table-stats <options>
列出所有技能
make list-skills
开发
添加新技能
- 在根目录下创建新的技能目录(使用连字符命名)
- 实现技能逻辑
- 在
pyproject.toml的[project.scripts]中添加命令入口 - 在
[tool.hatch.build.targets.wheel]中添加包名和映射
示例结构:
cz_skills/
├── pyproject.toml
├── Makefile
├── README.md
├── job-performance-analyzer/ # 目录名用连字符
│ ├── __init__.py
│ ├── __main__.py # 包含 main() 函数
│ └── ...
├── sql-history-expert/
│ ├── __init__.py
│ ├── __main__.py
│ └── ...
└── your-new-skill/ # 新技能
├── __init__.py
├── __main__.py
└── ...
在 pyproject.toml 中添加:
[project.scripts]
cz-your-skill = "your_skill.__main__:main"
[tool.hatch.build.targets.wheel]
packages = ["job-performance-analyzer", "sql-history-expert", "your-new-skill"]
[tool.hatch.build.targets.wheel.force-include]
"job-performance-analyzer" = "job_performance_analyzer"
"sql-history-expert" = "sql_history_expert"
"your-new-skill" = "your_skill"
运行测试
make test
构建发布
# 构建
make build
# 上传到 PyPI(需要配置 twine)
make upload
许可证
Apache-2.0
作者
Clickzetta Team
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file clickzetta_skills-1.0.3.tar.gz.
File metadata
- Download URL: clickzetta_skills-1.0.3.tar.gz
- Upload date:
- Size: 35.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e8a9ce05a6b19eec125bfad5c519a48317286af6317f4c3bd8c454ef35ae2c5f
|
|
| MD5 |
ba6e3a5706649b5c3803d598a83b331a
|
|
| BLAKE2b-256 |
99ee96af6aecba0cc040ece56f652823a7c8bc2961a795d5f102999320904bd1
|
File details
Details for the file clickzetta_skills-1.0.3-py3-none-any.whl.
File metadata
- Download URL: clickzetta_skills-1.0.3-py3-none-any.whl
- Upload date:
- Size: 55.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fe314f6ce3e999979b75e7fd247ce22cfc6b1a4d12411a3494741d99cefdccab
|
|
| MD5 |
b29904e4616f796f4f5639f35cdfd5cc
|
|
| BLAKE2b-256 |
1e73000816186918209036ec7eb71bbf223c1c16457fcae2155c7c87e6fc1d8f
|