Files
model-platform/docs/database/A卡运维平台-功能页面表关系-V0.1.md

124 lines
10 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# A 卡运维平台功能、页面与表关系 V0.1
> 日期:2026-09-01
> 依据:对外原型 V1.10、三库边界确认、`model_platform` 18 张表、`model_deploy` 16 张表及银行表待补结论。
> 状态:分析稿;用于共同确认 `model_operations` V0.2,暂不执行删表或改表。
## 1. 当前结论
最终系统由三个数据库组成:
- `model_platform`:模型开发平台,提供统一登录、角色、项目空间、脚本、调度和对象存储。
- `model_deploy`:模型部署平台,提供模型、版本、部署详情、运行节点和聚合监控指标;银行表及模型—银行关系由模型方补充。
- `model_operations`:我方运维业务库,承载判级、处理、报告、流程、文档、配置和操作统计。
已确认从我方库删除重复主数据表:
- `ops_banks`
- `ops_model_instances`
- `ops_model_versions`
删除后,我方目标表为 **21 张**。其中 16 张归属明确,5 张仍需共同决定是否保留为“标准化快照/读模型”。
## 2. 三库关联原则
- 不建立跨数据库物理外键。
- 我方内部主键继续使用 `CHAR(26)` ULID。
- 开发平台引用使用 `platform_user_id/platform_workspace_id CHAR(26)`
- 部署平台引用使用 `deploy_id/deploy_version_id/bank_id BIGINT`,最终类型以模型方银行表为准。
- 报告、判级和流程必须保存生成时快照,不能因为模型方后续修改名称或版本而改变历史。
- 前端不直接访问数据库,全部通过我方后端聚合三个库的数据。
## 3. 前端页面与功能、表关系
对外原型 V1.10 当前共有 **13 个前端页面**,页面与数据关系如下。
| 前端页面 | 主要功能 | 我方表(model_operations | 外部只读表 | 主要写入动作 |
|---|---|---|---|---|
| 我的工作台 | KPI、待办、关注、催办、最近动态 | `ops_monitor_evaluations``ops_monitor_reviews``ops_reports``ops_workflows``ops_workflow_stages``ops_usage_events` | `model_deploy`、银行表;用户显示名来自 `model_platform.users` | 页面本身只读;操作跳转到处理、报告或流程接口 |
| 平台使用统计 | 登录、需求、报告阅读和下载统计 | `ops_usage_events` | `model_platform.users/roles` | 系统自动记录行为事件 |
| 模型大类概览 | 大类卡片、银行筛选、本行/同业 KS/PSI、趋势、等级下钻 | `ops_model_categories``ops_monitor_results``ops_monitor_evaluations` | `model_deploy.model_deploy``model_version`、模型方银行及关系表 | 只读聚合 |
| 已上线模型详情 | 模型版本、开发时点指标、生命周期、评分逻辑、材料入口 | `ops_documents`;必要时读取标准化监控快照 | `model_deploy``model_version``model_details`、银行及关系表;文件来自 `model_platform.storage_objects` | 上传评分逻辑或材料时写 `ops_documents` |
| 模型监控概览 | 月度明细、多维筛选、异常等级和监控结果等级 | `ops_monitor_results``ops_monitor_evaluations``ops_monitor_reviews` | 模型、版本、银行名称来自 `model_deploy` | 只读;处理动作进入复核表 |
| 模型监控详情 | 排序性、KS/PSI、IV/CSI、分布、命中规则、两段处理 | `ops_monitor_results``ops_monitor_feature_metrics``ops_monitor_distributions``ops_monitor_evaluations``ops_monitor_reviews``ops_reports` | `model_deploy``model_version``model_monitor_aggr` | 模型团队初审、业务团队终审写 `ops_monitor_reviews` |
| 监控 / 诊断报告 | 自动生成、模型团队编辑、发送业务团队、导出 | `ops_reports``ops_report_revisions``ops_report_template_versions``ops_prompt_versions``ops_monitor_evaluations` | 模型、版本、银行信息来自 `model_deploy` | 系统建报告;模型团队新增修订并发送;写 Outbox |
| 报告汇总 | 历史报告查询、阅读状态、筛选和导出 | `ops_reports``ops_report_revisions` | 模型、版本、银行信息来自 `model_deploy` | 阅读/下载写 `ops_usage_events` |
| 全流程进度 | 需求发起、七阶段流转、预计日期、复用通用模型、催办 | `ops_workflows``ops_workflow_stages``ops_documents``ops_outbox_events` | 银行、模型、版本来自 `model_deploy`;用户来自 `model_platform` | 业务发起、模型推进、业务确认均写流程表 |
| 文档知识库 | 按银行、模型、版本、环节检索流程材料 | `ops_documents``ops_workflows``ops_workflow_stages` | 文件元数据来自 `model_platform.storage_objects`;模型信息来自 `model_deploy` | 上传/确认材料写 `ops_documents` |
| 监控等级规则 | 13 行规则矩阵、版本发布、回滚、阈值影响测算 | `ops_rule_versions``ops_rule_items``ops_monitor_evaluations``ops_monitor_results` | 模型与银行信息来自 `model_deploy` | 管理员发布规则;系统按新版本生成判级快照 |
| 报告 Prompt 管理 | Prompt 编辑、版本、发布和历史样本回归 | `ops_prompt_versions``ops_prompt_regression_runs``ops_report_template_versions` | 历史监控样本来自部署/运维数据 | 模型团队维护 Prompt;系统写回归结果 |
| 系统配置 | 报告频率、输出日期、模板版本、通知、手动重算 | `ops_bank_report_configs``ops_report_template_versions``ops_outbox_events` | 银行列表来自模型方银行表;角色权限来自 `model_platform` | 管理员修改配置并触发后台事件 |
## 4. 我方 21 张表逐表归属
### 4.1 数据接入与标准化(5 张,均需定案)
| 表 | 作用 | 写入方 | 主要页面 | 当前判断 |
|---|---|---|---|---|
| `ops_model_categories` | 标准A卡/白户A卡/大额A卡/反欺诈评分业务分类 | 我方管理员或种子 | 模型大类概览、规则、流程 | 暂留;若模型方补业务大类字段,可改为映射表 |
| `ops_monitor_batches` | 月度数据批次、修订号和发布状态 | 同步任务 | 监控、报告、系统配置 | 建议保留,模型方当前无批次/修订/发布结构 |
| `ops_monitor_results` | 月度排序性、KS、PSI及样本快照 | 同步任务 | 大类、监控、报告 | 建议保留为标准化月度快照,不由模型团队手工写 |
| `ops_monitor_feature_metrics` | 特征级 IV/CSI及变化 | 同步任务 | 监控详情、诊断报告 | 建议保留;`model_monitor_aggr` 只有通用 metricName,结构不足 |
| `ops_monitor_distributions` | 评分区间和特征分箱分布 | 同步任务 | 监控详情、诊断报告 | 建议保留;模型方当前 SQL 无对应结构 |
### 4.2 判级与处理(4 张,归属明确)
| 表 | 写入方 | 主要页面 |
|---|---|---|
| `ops_rule_versions` | 管理员 | 监控等级规则 |
| `ops_rule_items` | 管理员 | 监控等级规则 |
| `ops_monitor_evaluations` | 判级服务 | 工作台、概览、详情、报告 |
| `ops_monitor_reviews` | 模型团队初审、业务团队终审 | 工作台、监控详情 |
### 4.3 报告与 AI 治理(6 张,归属明确)
| 表 | 写入方 | 主要页面 |
|---|---|---|
| `ops_report_template_versions` | 管理员 | 报告、系统配置 |
| `ops_prompt_versions` | 模型团队/管理员 | Prompt 管理、报告 |
| `ops_prompt_regression_runs` | 回归任务 | Prompt 管理 |
| `ops_reports` | 报告生成服务、模型团队发送 | 报告、报告汇总、工作台 |
| `ops_report_revisions` | 报告生成服务、模型团队编辑 | 报告、报告汇总 |
| `ops_bank_report_configs` | 管理员 | 系统配置 |
### 4.4 流程、材料与使用统计(4 张,归属明确)
| 表 | 写入方 | 主要页面 |
|---|---|---|
| `ops_workflows` | 业务团队发起、流程服务维护 | 全流程进度、工作台 |
| `ops_workflow_stages` | 模型团队/业务团队操作,流程服务落库 | 全流程进度、工作台 |
| `ops_documents` | 模型团队/业务团队上传,文档服务落库 | 流程、知识库、模型详情 |
| `ops_usage_events` | 系统自动记录 | 平台使用统计、报告汇总 |
### 4.5 异步可靠性(2 张,归属明确)
| 表 | 写入方 | 主要用途 |
|---|---|---|
| `ops_outbox_events` | 与业务操作同事务写入 | 判级、报告、提醒、超时、流程通知 |
| `ops_consumer_inbox` | 后台消费者 | 防止任务重复执行 |
## 5. 关键写入责任
- 模型方只写 `model_deploy`,不直接写我方判级、报告和流程表。
- 我方同步任务从 `model_deploy` 读取数据,规范化后写入 4 张 `ops_monitor_*` 快照表。
- 业务团队和模型团队不直接执行 SQL;其页面操作通过后端服务写入复核、报告修订、流程阶段和文档表。
- 管理员通过页面维护规则、模板、Prompt 和按银行配置。
- 后台任务通过 Outbox/Inbox 处理判级、报告生成、催办和超时默认流转。
## 6. 需要共同定案的 5 项
1. **统一身份主源**:前端登录继续以 `model_platform.users/roles/workspaces` 为准,还是改用 `model_deploy.sys_user/sys_project_space`。建议继续使用现有 `model_platform` 登录。
2. **模型大类来源**:模型方是否在 `model_deploy` 增加标准A/白户A/大额A/反欺诈业务分类;若不增加,我方保留 `ops_model_categories` 与部署模型的映射。
3. **监控快照保留**:是否接受我方把 `model_monitor_aggr` 转换为稳定的月度结果、特征和分布快照。建议保留,避免历史报告随源数据变化。
4. **银行关系结构**:模型方补充一对多还是多对多关系。通用模型存在多银行复用,建议 `bank + model_deploy_bank` 两张表。
5. **缺失监控字段**:排序性、CSI、特征分箱、基准期/当期分布、样本量和批次修订由模型方新增结构还是通过固定 `extra JSON` 提供。建议明确字段表,不依赖无约束 JSON。
## 7. 建议的下一步
先不要再次执行 V0.1 完整建表脚本。按本文件共同确认上述 5 项后:
1. 输出 `model_operations` V0.2 正式表清单。
2. 生成 V0.1 → V0.2 的非破坏性迁移 SQL。
3. 给模型方一份只读表、字段和样例数据需求清单。
4. 再生成 ORM 与首条“模型列表—详情—单月监控结果”真实接口。