dolphindb-csmar-importlisted
Install: claude install-skill dolphindb/DolphinX_Skill
# CSMAR 历史数据导入 — DolphinX 版
将 CSMAR(国泰安)高频历史行情数据文件自动导入 DolphinDB 分布式数据库。本 skill 运行于 **DolphinDB Web 平台**,全部操作通过 `.dos` 脚本在服务端完成。
## 执行要求
加载本文件后,**立即从步骤 1 开始执行,不要额外确认**。每个步骤的结果直接驱动下一步。所有需要在服务器执行的内容都通过 dos 脚本完成,无需收集连接信息(Web 平台已登录)。
## 执行步骤
### 1. 环境检查与前置准备
先调用 `check-env` 技能完成以下工作:
1. **zip 插件检查**:检查 DolphinDB 是否已加载 zip 插件,未加载则自动安装并加载
2. **easy_csmar 模块上传**:将 `scripts/DolphinDBModules/easy_csmar/` 下的模块源文件通过 `uploadModule()` 写入 DolphinDB 服务端
**判断逻辑:**
- **check-env 执行成功**:继续下一步
- **check-env 执行失败**:终止流程,向用户展示 check-env 输出的错误信息
### 2. 收集机器信息并推荐并行度
在 DolphinDB Web 平台执行:`scripts/machine_info_collection.dos`
脚本行为:
- 读取 `maxMemSize` / `license()['maxMemoryPerNode']` / `maxBatchJobWorker` / `license()['maxCoresPerNode']`
- 按以下逻辑计算推荐并行度:
- 内存约束:`min(maxMemSize, maxMemoryPerNode) / 2 / 8`(安全内存的一半,按 8GB/任务)
- 并发约束:`min(maxBatchJobWorker, maxCoresPerNode)`
- 最终推荐:取两者较小值(最小为 1)
- 输出形如 `RECOMMENDED_PARALLEL=<数值>` 的标识行
**从执行结果中匹配 `RECOMMENDED_PARALLEL=` 行提取数值**,作为下一步的推荐并行度。
### 3. 收集数据导入参数
向用户��问以下信息:
- **文件路径**:CSV 或 ZIP 文件存储的绝对路径(示例:`/hdd/hdd4/csmar/`)
- **数据类型**:`snapshot`(快照)/ `entrust`(委托)/ `trade`(成交)/ `tick`(TICK合并)/ `orderqueue`(委托队列)
- **起始日期**:格式 YYYYMMDD(示例:`20260429`)
- **结束日期**:格式 YYYYMMDD(示例:`20260429`)
- **数据库名称**:DolphinDB 数据库路径(默认值:`dfs://level2_stock_db`)
> 表名固定为 `snapshot`、`entrust`、`trade`、`tick`、`orderqueue`,无需用户填写。
### 4. 确认参数
向用户展示汇总信息并确认:
```
请确认以下导入参数:
推荐并行度:
- 推荐值:{recommended_parallel}
(基于服务器内存和并发能力计算)
- 如需修改,请选择"自定义并行度"
数据导入参数:
- 数据类型: