给出 MVP 阶段的蓝图设计文档
好的,我们可以在 PoC 基础上升级到 MVP 阶段,MVP 阶段的重点是 验证业务价值和最小可用闭环,不仅仅是技术可行性,而是真正能被业务使用,同时为后续企业级扩展打基础。
下面是完整的 CMDB MVP 阶段蓝图设计文档。
CMDB MVP 阶段蓝图设计文档
1. 项目概述
项目名称:CMDB MVP(Minimum Viable Product)
目标:在 PoC 成功的基础上,构建最小可用产品版本,实现核心 CI 管理、关系管理、查询和基础可视化,能够为业务提供实际价值,并验证企业级扩展的可行性。
核心价值假设:
- 核心业务资产可以通过 CMDB 被统一管理
- 业务拓扑关系可视化能提高故障定位效率
- API 可供上游系统(监控、发布、ITSM)消费
- 数据治理和一致性机制可支撑后续扩展
2. MVP 范围与边界
| 范围 | 描述 |
|---|---|
| CI 类型 | 主机(Host)、应用(App)、服务(Service)、数据库(DB)、中间件(Middleware) |
| 关系类型 | 部署于(App → Host)、依赖(App → Service/DB/Middleware)、归属关系(CI → 业务单元) |
| 数据源 | 云平台 API、现有 CMDB 数据库、监控系统、手工导入 |
| 核心功能 | CI 管理(增删改查)、关系管理、API 查询、拓扑可视化、数据同步、基础数据治理 |
| 非 MVP 范围 | 高可用架构、多租户管理、复杂权限体系、高级智能化分析 |
说明:MVP 阶段的目标是 业务闭环可用,PoC 阶段的技术可行性已经验证。
3. 技术架构蓝图
3.1 架构概览
+---------------------------+
| 前端 UI |
| - 拓扑可视化 |
| - CI 列表 / 搜索 |
+-----------+---------------+
|
v
+---------------------------+
| API 层 / 网关 |
| - REST / GraphQL |
| - 请求路由/权限控制 |
+-----------+---------------+
|
v
+---------------------------+
| CMDB 核心层 |
| - CI / Relation 管理 |
| - 拓扑构建与递归查询 |
| - 数据治理与校验 |
+-----------+---------------+
|
v
+---------------------------+
| 数据存储层 |
| - 关系型数据库(MySQL) |
| - 图数据库(Neo4j / JanusGraph)|
+-----------+---------------+
^
|
+---------------------------+
| 数据采集适配器 |
| - 云平台 API |
| - 现有 CMDB / 监控系统 |
| - CSV / Excel 导入 |
+---------------------------+
3.2 架构说明
-
API 层 / 网关
- 支持统一接口供内部系统调用
- 初步实现权限控制(读写控制)
- 支持灰度路由和审计日志
-
CMDB 核心层
- CI/Relation CRUD 管理
- 拓扑查询与可视化支持
- 数据治理:字段完整性、关系完整性校验
- 支持增量同步
-
数据采集适配器
- 支持多个数据源
- ETL / API Pull / Webhook 等多种模式
- 增量与全量同步
-
存储
- 图数据库存储关系(查询拓扑、依赖链)
- 关系型数据库存储属性与元数据
- 未来可扩展存储层(分库、分片)
4. 数据模型设计(MVP 扩展)
4.1 CI 示例(扩展字段)
| 字段 | 类型 | 描述 |
|---|---|---|
| ci_id | string | 唯一标识 |
| ci_type | string | CI 类型(Host / App / Service / DB / Middleware) |
| name | string | CI 名称 |
| owner | string | 责任人 |
| status | string | 状态(Active/Inactive/Deprecated) |
| environment | string | 环境(Prod/Test/Dev) |
| metadata | JSON | 扩展信息(版本、IP、标签、业务线) |
| last_updated | datetime | 最近更新时间 |
4.2 Relation 示例
| 字段 | 类型 | 描述 |
|---|---|---|
| rel_id | string | 唯一标识 |
| source_ci_id | string | 源 CI |
| target_ci_id | string | 目标 CI |
| rel_type | string | 部署/依赖/归属 |
| importance | string | 重要性(High/Medium/Low) |
| metadata | JSON | 扩展信息 |
| last_updated | datetime | 更新时间 |
5. 核心功能清单(MVP)
| 功能 | 描述 | 验证目标 |
|---|---|---|
| CI 管理 | 增删改查 CI | 基本 CRUD 可用,属性完整 |
| 关系管理 | 增删改查关系 | 拓扑关系完整,查询正确 |
| 数据采集 | 多源自动同步 | 采集成功率 ≥95% |
| API 接口 | REST / GraphQL | 上游系统能调用,返回正确数据 |
| 拓扑可视化 | 可展示业务/应用拓扑 | 前端能显示 100~500 CI 节点 |
| 数据治理 | 完整性、依赖关系校验 | 异常 CI/关系报警 |
| 日志与监控 | API 调用、数据同步 | 关键指标可观测(延迟、错误率) |
6. 性能与规模目标
| 指标 | MVP 目标 | 说明 |
|---|---|---|
| CI 数量 | 1,000~5,000 | 支撑初期业务线 |
| Relation 数量 | 5,000~10,000 | 拓扑关系查询可用 |
| API 查询延迟 | <300ms | 单次查询 1~5 CI + 依赖链 |
| 数据同步频率 | 支持每 15~30 分钟增量 | 满足业务近实时需求 |
7. 风险与缓解
| 风险 | 缓解措施 |
|---|---|
| 数据源变化频繁 | 支持动态配置同步规则、增量同步机制 |
| 拓扑查询性能差 | 使用图数据库索引,优化递归查询 |
| API 错误或调用异常 | 增加幂等性设计、重试机制 |
| 前端可视化复杂度高 | 只展示核心业务链路,支持折叠/分页 |
8. 团队配置与周期
| 角色 | 人数 | 职责 |
|---|---|---|
| 架构师 | 1 | 设计 MVP 架构、数据模型、同步方案 |
| 后端开发 | 2~3 | API、数据存储、同步逻辑 |
| 前端开发 | 1~2 | 拓扑可视化、列表查询、仪表盘 |
| DevOps | 1 | 部署、数据接入、监控 |
| 产品/PM | 1 | 功能需求、场景验证、用户反馈收集 |
周期:6~12 周,产出可供业务使用的 MVP 版本
9. MVP 成功标准
-
业务可用性
- 至少一个业务线的 CI/Relation 能够被实际使用
- API 接口可供监控、ITSM 等系统调用
-
数据可用性
- 数据采集成功率 ≥95%
- 关系拓扑完整性 ≥95%
-
性能指标
- 查询延迟满足 <300ms
- 数据同步延迟 ≤30 分钟
-
用户反馈
- 核心业务线反馈“能用、能解决问题”
- 收集改进意见,为企业级迭代提供参考
10. 输出交付物
- MVP 架构图
- 数据模型文档(CI/Relation 扩展字段与关系)
- 数据采集适配器代码与配置
- API 接口文档(REST/GraphQL)
- 拓扑可视化前端 Demo
- 数据治理与校验工具(基础报表/异常日志)
- MVP 验证报告(数据一致性、性能、用户体验反馈)
💡 总结
- PoC 验证技术可行性
- MVP 验证业务可用性
- 企业级建设扩展:在 MVP 基础上增加权限、多租户、历史审计、智能化分析和大规模数据治理
MVP 是 CMDB 从概念到可用的关键阶段,必须保证业务闭环和核心场景可用,为企业级平台打下坚实基础。
