24 KiB
数据资源盘点系统 - Python 技术人员工作量文档
📋 文档说明
本文档分析数据资源盘点系统中所有涉及大模型技术和需要 Python 开发的功能接口,为 Python 技术人员提供详细的工作量评估和开发任务清单。
文档版本: v1.0
更新日期: 2025-01-XX
适用范围: 数据资源盘点模块
🎯 系统概述
数据资源盘点系统是一个企业级数据资产管理平台的核心模块,通过 AI 大模型技术实现智能化的数据资产识别、分析和价值挖掘。系统主要包含 4 个核心步骤:
- 数据盘点 (InventoryStep): 智能识别数据资产、PII 敏感信息、重要数据
- 背景调研 (ContextStep): 收集企业信息,触发场景挖掘
- 价值挖掘 (ValueStep): AI 推荐潜在应用场景
- 成果交付 (DeliveryStep): 生成完整的数据资产盘点工作总结报告
📊 功能模块分析与工作量评估
模块一:数据盘点智能分析服务
1.1 文档解析服务
功能描述: 解析上传的数据字典文档(Excel/Word),提取表结构信息
涉及页面: InventoryStep.vue - 方案一(已有文档导入)
Python 开发任务:
- 文档解析接口 (
/api/v1/inventory/parse-document)- Excel 文件解析(支持 .xlsx, .xls)
- Word 文件解析(支持 .doc, .docx)
- PDF 文档解析(如需要)
- 表结构信息提取(表名、字段名、字段类型、注释)
技术栈:
openpyxl/pandas(Excel 解析)python-docx(Word 解析)PyPDF2/pdfplumber(PDF 解析,如需要)
工作量评估: 5 人日
- 接口开发: 2 人日
- 文档解析逻辑: 2 人日
- 单元测试和异常处理: 1 人日
输入数据格式:
{
"file_path": "string", // 上传文件路径
"file_type": "excel | word | pdf",
"project_id": "string"
}
输出数据格式:
{
"success": true,
"data": {
"tables": [
{
"raw_name": "t_user_base_01",
"fields": [
{
"raw_name": "user_id",
"type": "varchar(64)",
"comment": ""
}
]
}
],
"total_tables": 10
}
}
1.2 SQL 脚本结果解析服务
功能描述: 解析 IT 执行 SQL 脚本后导出的 Excel/CSV 结果文件
涉及页面: InventoryStep.vue - 方案二(IT 脚本提取)
Python 开发任务:
- SQL 结果解析接口 (
/api/v1/inventory/parse-sql-result)- Excel/CSV 文件解析
- 提取表名、字段名、字段类型等信息
技术栈:
pandas(CSV/Excel 解析)
工作量评估: 2 人日
- 接口开发: 1 人日
- 数据验证和清洗: 1 人日
输入数据格式:
{
"file_path": "string",
"file_type": "excel | csv",
"project_id": "string"
}
输出数据格式: 同 1.1
1.3 业务表导入解析服务
功能描述: 解析业务人员手动导出的核心业务表(Excel/CSV)
涉及页面: InventoryStep.vue - 方案三(业务关键表导入)
Python 开发任务:
- 业务表解析接口 (
/api/v1/inventory/parse-business-tables)- 批量文件解析
- 表结构识别
技术栈:
pandas(批量文件处理)
工作量评估: 3 人日
- 批量文件处理: 2 人日
- 异常处理和进度反馈: 1 人日
输入数据格式:
{
"files": ["file_path1", "file_path2", ...],
"project_id": "string"
}
输出数据格式: 同 1.1
1.4 数据资产智能识别服务 ⭐⭐⭐ 核心功能
功能描述: 使用大模型识别数据资产的中文名称、业务含义、PII 敏感信息、重要数据特征
涉及页面: InventoryStep.vue - AI 盘点处理阶段
Python 开发任务:
- AI 智能识别接口 (
/api/v1/inventory/ai-analyze)- 表名和字段名中文命名识别
- 业务含义描述生成
- PII(个人信息)识别
- 重要数据识别(符合《数据安全法》)
- 置信度评分
大模型技术:
- 模型选择: 推荐使用通义千问、文心一言或 GPT-4
- 提示词工程: 需要设计专业的提示词模板
- 少样本学习: 提供示例数据提升识别准确率
工作量评估: 15 人日
- 大模型集成和调用: 3 人日
- 提示词工程设计和优化: 5 人日
- PII 识别规则引擎: 3 人日
- 重要数据识别规则引擎: 2 人日
- 置信度评分算法: 1 人日
- 单元测试和调试: 1 人日
输入数据格式:
{
"tables": [
{
"raw_name": "t_user_base_01",
"fields": [
{
"raw_name": "user_id",
"type": "varchar(64)",
"comment": "用户ID"
},
{
"raw_name": "phone",
"type": "varchar(11)",
"comment": "手机号"
}
]
}
],
"project_id": "string",
"industry": "string", // 行业信息
"context": "string" // 业务背景信息
}
输出数据格式:
{
"success": true,
"data": {
"tables": [
{
"raw_name": "t_user_base_01",
"ai_name": "会员基础信息表",
"desc": "存储C端注册用户的核心身份信息",
"fields": [
{
"raw_name": "user_id",
"ai_name": "用户ID",
"desc": "用户的唯一标识符"
},
{
"raw_name": "phone",
"ai_name": "手机号",
"desc": "用户的联系电话",
"pii": ["手机号"],
"pii_type": "contact"
}
],
"pii": ["手机号"],
"important": false,
"confidence": 98,
"ai_completed": true
}
],
"processing_time": 5.2
}
}
提示词模板设计要点:
- 系统提示词: 定义 AI 角色为"数据资产管理专家"
- 用户提示词: 包含表结构信息、行业背景、业务上下文
- 约束条件:
- PII 识别必须符合《个人信息保护法》(PIPL)
- 重要数据识别必须符合《数据安全法》
- 置信度评分需考虑字段命名规范度、注释完整性等因素
- 少样本学习: 提供 5-10 个典型示例
模块二:场景挖掘智能推荐服务 ⭐⭐
2.1 潜在场景推荐服务
功能描述: 基于企业背景、数据资产清单和存量场景,使用 AI 推荐潜在的数据应用场景
涉及页面: ValueStep.vue - AI 推荐潜在场景清单
Python 开发任务:
- 场景推荐接口 (
/api/v1/value/scenario-recommendation)- 基于企业行业、数据资产、存量场景生成推荐场景
- 场景分类(降本增效、营销增长、金融服务、决策支持等)
- 推荐指数评分(1-5星)
- 场景依赖分析(依赖哪些数据资产)
大模型技术:
- 模型选择: 通义千问 / 文心一言 / GPT-4
- 提示词工程: 需要设计场景推荐的提示词模板
工作量评估: 12 人日
- 大模型集成和调用: 2 人日
- 提示词工程设计和优化: 4 人日
- 场景分类和评分算法: 3 人日
- 场景依赖关系分析: 2 人日
- 单元测试和调试: 1 人日
输入数据格式:
{
"project_id": "string",
"company_info": {
"industry": ["retail-fresh"],
"description": "某连锁生鲜零售企业...",
"data_scale": "100TB",
"data_sources": ["self-generated"]
},
"data_assets": [
{
"name": "会员基础信息表",
"core_tables": ["Dim_Customer"],
"description": "存储C端注册用户的核心身份信息"
}
],
"existing_scenarios": [
{
"name": "月度销售经营报表",
"description": "统计各区域门店的月度GMV"
}
]
}
输出数据格式:
{
"success": true,
"data": {
"recommended_scenarios": [
{
"id": 1,
"name": "精准会员营销",
"type": "营销增长",
"recommendation_index": 5,
"desc": "基于用户画像与历史交易行为,实现千人千面的优惠券发放。",
"dependencies": ["会员基础信息表", "订单流水记录表"],
"business_value": "提升复购率 15-20%",
"implementation_difficulty": "中等"
}
],
"total_count": 10
}
}
提示词模板设计要点:
- 分析企业行业特点和数据资产价值
- 参考存量场景,避免重复推荐
- 推荐场景需具有可操作性和商业价值
- 推荐指数需综合考虑业务价值、实施难度、数据准备度等因素
2.2 存量场景优化建议服务
功能描述: 基于存量场景信息和截图,生成优化建议
涉及页面: ContextStep.vue - 生成场景挖掘与优化建议按钮
Python 开发任务:
- 场景优化建议接口 (
/api/v1/value/scenario-optimization)- 分析存量场景的不足
- 提供优化建议和改进方向
- 识别可提升的价值点
大模型技术:
- 支持图片识别(如果上传了场景截图)
- 文本分析和建议生成
工作量评估: 8 人日
- 大模型集成: 2 人日
- 图片识别集成(OCR): 2 人日
- 提示词工程: 2 人日
- 建议生成算法: 1 人日
- 测试: 1 人日
输入数据格式:
{
"existing_scenarios": [
{
"name": "月度销售经营报表",
"description": "统计各区域门店的月度GMV,维度单一",
"image_url": "string" // 可选,场景截图
}
],
"data_assets": [...],
"company_info": {...}
}
输出数据格式:
{
"success": true,
"data": {
"optimization_suggestions": [
{
"scenario_name": "月度销售经营报表",
"current_status": "维度单一,仅统计GMV",
"suggestions": [
"增加时间维度分析(同比、环比)",
"增加商品类别维度分析",
"增加区域对比分析"
],
"potential_value": "提升决策支持能力 30%"
}
]
}
}
模块三:数据资产盘点报告生成服务 ⭐⭐⭐ 核心功能
3.1 完整报告生成服务
功能描述: 基于数据盘点结果、背景调研信息和价值挖掘场景,使用大模型生成完整的数据资产盘点工作总结报告
涉及页面: DeliveryStep.vue - 成果交付页面
Python 开发任务:
- 报告生成接口 (
/api/v1/delivery/generate-report)- 生成报告四个章节的完整内容
- 支持分阶段生成(可选)
- 报告内容验证和格式化
大模型技术:
- 模型选择: 推荐使用 GPT-4 或通义千问 Max(支持长文本生成)
- 提示词工程: 需要设计复杂的多章节报告生成提示词
- 分阶段生成: 建议分阶段生成以提高质量和可控性
工作量评估: 20 人日
- 大模型集成和长文本生成: 4 人日
- 提示词工程(四个章节): 8 人日
- 报告结构化生成和格式化: 3 人日
- 数据验证和合规性检查: 3 人日
- 分阶段生成策略实现: 1 人日
- 单元测试和调试: 1 人日
输入数据格式:
{
"project_id": "string",
"project_info": {
"project_name": "数据资产盘点项目",
"industry": "retail-fresh",
"company_name": "某连锁生鲜零售企业"
},
"inventory_data": {
"total_tables": 14582,
"total_fields": 245000,
"total_data_volume": "58 PB",
"storage_distribution": [
{
"category": "供应链物流",
"volume": "25.4 PB",
"storage_type": "HDFS / NoSQL"
}
],
"data_source_structure": {
"structured": 35,
"semi_structured": 65
},
"identified_assets": [
{
"name": "消费者全景画像",
"core_tables": ["Dim_Customer", "Fact_Sales"],
"description": "客户维度表与销售事实表整合"
}
]
},
"context_data": {
"enterprise_background": "某连锁生鲜零售企业...",
"informatization_status": "使用金蝶云星空作为核心ERP...",
"business_flow": "数据流贯穿研发、生产、物流与销售全链路..."
},
"value_data": {
"selected_scenarios": [
{
"name": "精准会员营销",
"description": "基于用户画像实现精准营销"
}
]
},
"options": {
"language": "zh-CN",
"detail_level": "standard"
}
}
输出数据格式:
{
"success": true,
"data": {
"header": {
"project_name": "数据资产盘点项目"
},
"section1": {
"enterprise_background": {
"description": "某连锁生鲜零售企业..."
},
"informatization_status": {
"overview": "集团采取混合云战略...",
"private_cloud": {
"title": "私有云部署:保障安全与性能",
"description": "承载核心稳态业务系统..."
},
"public_cloud": {
"title": "公有云部署:利用弹性计算能力",
"description": "承载面向消费者的电商前台..."
}
},
"business_data_flow": {
"overview": "集团的数据流贯穿研发、生产、物流与销售全链路...",
"manufacturing": {
"title": "制造端",
"description": "通过工业物联网(IIoT)网关..."
},
"logistics": {
"title": "物流端",
"description": "车载 GPS、手持 PDA..."
},
"retail": {
"title": "零售端",
"description": "记录全渠道交易流水..."
},
"data_aggregation": {
"title": "数据汇聚",
"description": "上述数据最终汇聚于基于 Greenplum..."
}
}
},
"section2": {
"summary": {
"total_data_volume": "58 PB",
"total_data_objects": {
"tables": "14,582 张表",
"fields": "24.5万+ 字段"
}
},
"storage_distribution": [
{
"category": "供应链物流",
"volume": "25.4 PB",
"storage_type": "主要存储于 HDFS / NoSQL",
"color": "blue"
}
],
"data_source_structure": {
"structured": {
"percentage": 35,
"description": "主要是数据库表,价值密度高"
},
"semi_structured": {
"percentage": 65,
"description": "包含 IoT 日志、文档 (PDF)、影像等,存在巨大的挖掘潜力"
}
}
},
"section3": {
"overview": {
"asset_count": 2,
"high_value_assets": ["供应链动态库存模型", "消费者全景画像"],
"description": "本次盘点重点识别出 2项具备价值的数据资产..."
},
"assets": [
{
"id": "customer360",
"title": "消费者全景画像",
"subtitle": "Customer 360",
"composition": {
"description": "核心依赖 Dim_Customer(客户维度表)与 Fact_Sales(销售事实表)...",
"core_tables": ["Dim_Customer", "Fact_Sales"]
},
"application_scenarios": {
"description": "旨在构建 OneID 体系,支持计算客户生命周期价值(CLV)..."
},
"compliance_risks": {
"warnings": [
{
"type": "个人信息预警",
"content": "共识别出 12 项敏感个人信息(SPI),包含生物识别信息(人脸)...",
"highlights": ["12 项", "敏感个人信息", "SPI"]
},
{
"type": "去标识化风险",
"content": "Dim_Customer 表中的手机号和身份证号部分字段未进行脱敏处理...",
"highlights": ["Dim_Customer", "手机号", "身份证号", "脱敏处理"]
}
]
}
}
]
},
"section4": {
"compliance_remediation": {
"title": "合规整改",
"items": [
{
"order": 1,
"category": "跨境传输",
"description": "针对涉及重要数据和超过 100 万人个人信息的出境场景,立即申报数据出境安全评估...",
"code_references": ["重要数据", "个人信息"]
}
]
},
"technical_evolution": {
"title": "技术演进",
"description": "建议从星型架构向湖仓一体 (Data Lakehouse) 架构演进...",
"technologies": ["Iceberg", "Hudi"]
},
"value_deepening": {
"title": "价值深化",
"items": [
{
"description": "建议优先对全链路库存优化场景进行深入加工,利用机器学习算法...",
"scenarios": ["全链路库存优化"]
}
]
}
}
},
"metadata": {
"generation_time": 25.3,
"model_used": "gpt-4",
"token_count": 8500
}
}
提示词模板设计要点:
- 系统提示词: 定义 AI 角色为"数据资产管理咨询专家"
- 分阶段生成策略:
- 阶段一: 生成章节一和章节二(基于盘点数据)
- 阶段二: 生成章节三(基于识别的数据资产,重点合规风险分析)
- 阶段三: 生成章节四(基于前面章节的分析结果)
- 约束条件:
- 统计数据必须准确,基于输入数据
- 合规风险分析必须符合 PIPL、数据安全法等法规
- 专家建议必须具体、可执行
- 文本长度和格式要求
- 质量保证:
- 数据验证(百分比总和为100%等)
- 合规性验证(风险分析完整性)
- 文本质量检查(专业术语使用)
参考文档: 详见 docs/数据资产盘点报告-大模型接口设计文档.md
📈 工作量汇总表
| 模块 | 功能 | 工作量(人日) | 优先级 | 备注 |
|---|---|---|---|---|
| 模块一:数据盘点智能分析 | ||||
| 1.1 | 文档解析服务 | 5 | 中 | Excel/Word/PDF 解析 |
| 1.2 | SQL 结果解析服务 | 2 | 低 | Excel/CSV 解析 |
| 1.3 | 业务表导入解析服务 | 3 | 中 | 批量文件处理 |
| 1.4 | 数据资产智能识别服务 | 15 | 高 | 核心功能,大模型 |
| 小计 | 25 | |||
| 模块二:场景挖掘智能推荐 | ||||
| 2.1 | 潜在场景推荐服务 | 12 | 高 | 大模型 |
| 2.2 | 存量场景优化建议服务 | 8 | 中 | 大模型 + OCR |
| 小计 | 20 | |||
| 模块三:报告生成服务 | ||||
| 3.1 | 完整报告生成服务 | 20 | 高 | 核心功能,大模型 |
| 小计 | 20 | |||
| 总计 | 65 人日 |
🔧 技术架构建议
3.1 大模型选择建议
| 场景 | 推荐模型 | 理由 |
|---|---|---|
| 数据资产识别 | 通义千问 / GPT-4 | 需要准确理解表结构和业务含义 |
| 场景推荐 | 通义千问 / 文心一言 | 需要理解业务场景和价值 |
| 报告生成 | GPT-4 / 通义千问 Max | 需要生成长文本,质量要求高 |
3.2 技术栈建议
# 核心依赖
fastapi>=0.104.0 # Web 框架
pydantic>=2.0.0 # 数据验证
openai>=1.0.0 # OpenAI API (如果使用 GPT)
dashscope>=1.14.0 # 通义千问 API
qianfan>=0.1.0 # 文心一言 API
# 文档处理
pandas>=2.0.0 # 数据处理
openpyxl>=3.1.0 # Excel 处理
python-docx>=1.1.0 # Word 处理
pdfplumber>=0.10.0 # PDF 处理(如需要)
# 图片处理(OCR)
paddlepaddle>=2.5.0 # PaddleOCR
paddleocr>=2.7.0 # OCR 库(如需要)
# 工具库
python-dotenv>=1.0.0 # 环境变量管理
loguru>=0.7.0 # 日志管理
redis>=5.0.0 # 缓存(可选)
celery>=5.3.0 # 异步任务(可选)
3.3 接口设计规范
- RESTful API 设计: 遵循 REST 规范
- 统一响应格式: 所有接口返回统一格式
- 错误处理: 完善的错误码和错误信息
- 日志记录: 记录所有 API 调用和异常
- 限流和熔断: 防止大模型 API 调用过多导致成本过高
⚠️ 注意事项和风险
4.1 大模型 API 调用成本
- Token 消耗: 长文本生成会消耗大量 Token,需要优化提示词
- API 限流: 注意各大模型 API 的调用频率限制
- 成本控制: 建议实现缓存机制,相同输入复用结果
4.2 数据隐私和安全
- 敏感信息处理: 确保输入数据中的敏感信息不会泄露
- 数据脱敏: 在调用大模型 API 前,对敏感数据进行脱敏处理
- API 密钥管理: 使用安全的密钥管理方案
4.3 质量保证
- 提示词优化: 需要反复测试和优化提示词,提升生成质量
- 数据验证: 对 AI 生成的内容进行验证,确保准确性
- 人工审核: 对于重要内容(如合规风险分析),建议加入人工审核环节
4.4 性能优化
- 异步处理: 对于耗时的 AI 分析任务,使用异步处理
- 流式输出: 对于长文本生成,考虑实现流式输出,提升用户体验
- 缓存策略: 对相同输入进行缓存,避免重复调用
📅 开发计划建议
阶段一:MVP 版本(4 周)
目标: 实现核心功能,支持基本的数据盘点和报告生成
任务清单:
- ✅ 文档解析服务(1.1, 1.2, 1.3)- 10 人日
- ✅ 数据资产智能识别服务(1.4)- 15 人日
- ✅ 完整报告生成服务(3.1)- 20 人日(简化版)
交付物: 可用的数据盘点和报告生成功能
阶段二:完善版本(3 周)
目标: 完善场景推荐功能,优化 AI 生成质量
任务清单:
- ✅ 潜在场景推荐服务(2.1)- 12 人日
- ✅ 存量场景优化建议服务(2.2)- 8 人日
- ✅ 报告生成质量优化 - 5 人日
交付物: 完整的场景推荐和优化建议功能
阶段三:优化版本(2 周)
目标: 性能优化、质量提升、用户体验优化
任务清单:
- ✅ 提示词优化和 A/B 测试
- ✅ 缓存机制实现
- ✅ 异步处理和流式输出
- ✅ 单元测试和集成测试
交付物: 高性能、高质量的完整系统
📝 接口文档模板
示例:数据资产智能识别接口
from fastapi import FastAPI, UploadFile, File
from pydantic import BaseModel
from typing import List, Optional
app = FastAPI()
class FieldInfo(BaseModel):
raw_name: str
type: str
comment: Optional[str] = ""
class TableInfo(BaseModel):
raw_name: str
fields: List[FieldInfo]
class AnalyzeRequest(BaseModel):
tables: List[TableInfo]
project_id: str
industry: Optional[str] = None
context: Optional[str] = None
class AnalyzeResponse(BaseModel):
success: bool
data: Optional[dict] = None
error: Optional[dict] = None
@app.post("/api/v1/inventory/ai-analyze", response_model=AnalyzeResponse)
async def ai_analyze(request: AnalyzeRequest):
"""
数据资产智能识别接口
使用大模型识别数据资产的中文名称、业务含义、PII 敏感信息、重要数据特征
"""
try:
# 1. 构建提示词
prompt = build_analyze_prompt(request.tables, request.industry, request.context)
# 2. 调用大模型 API
result = await call_llm_api(prompt)
# 3. 解析和验证结果
analyzed_data = parse_llm_response(result)
validated_data = validate_analysis_result(analyzed_data)
return AnalyzeResponse(success=True, data=validated_data)
except Exception as e:
return AnalyzeResponse(
success=False,
error={"code": "ANALYZE_ERROR", "message": str(e)}
)
🔗 相关文档
📞 联系方式
如有疑问或需要技术支持,请联系:
- Python 技术负责人: [待填写]
- 大模型技术顾问: [待填写]
- 项目负责人: [待填写]
📅 更新记录
| 版本 | 日期 | 更新内容 | 作者 |
|---|---|---|---|
| v1.0 | 2025-01-XX | 初始版本创建 | AI Assistant |
✅ 待办事项
- 确认大模型 API 选择(通义千问 / 文心一言 / GPT-4)
- 设计详细的提示词模板
- 确认数据格式和接口规范
- 搭建开发环境和测试环境
- 制定详细的开发计划和时间表
- 确定成本预算(大模型 API 调用费用)