
核心数据流转链路总结
全流程数据流转总览图
下面是根据您描述的业务逻辑优化的全流程数据流转链路图,展示了从基础配置到结果沉淀的完整业务流程:
第六阶段:结果沉淀
第五阶段:阅卷闭环
第四阶段:考生作答
第三阶段:考试组织
第二阶段:内容生成
第一阶段:基础配置
grade_id
class_id
subject_id
knowledge_id
question_id
paper_id
class_id
exam_id
user_id
exam_record_id
question_id
exam_id
user_id
exam_id
user_id
task_id
teacher_id
answer_id
task_id
question_id
actual_score汇总
exam_record_id
user_id
collection_id
marking_score
knowledge_id
user_id
grade表
classroom表
subject表
user表
subject表
knowledge表
knowledge_closure表
question表
subject表
paper表
question表
paper_question表
mock_exam表
mock_exam_record表
mock_exam_answer表
exam_screen_record表
marking_task表
marking_task_assignment表
基于题型分配
基于考生分配
marking_score表
marking_quality_control表
wrong_question_collection表
wrong_question_item表
全量表操作
operation_log表
核心流转链路时序图
下面是核心流转链路的时序图,展示了各阶段表之间的时序交互关系:
operation_log表 wrong_question_item表 wrong_question_collection表 仲裁教师 marking_quality_control表 marking_score表 marking_task_assignment表 marking_task表 exam_screen_record表 mock_exam_answer表 mock_exam_record表 mock_exam表 paper_question表 paper表 question表 knowledge_closure表 knowledge表 user表 subject表 classroom表 grade表 系统 学生 教师 管理员 operation_log表 wrong_question_item表 wrong_question_collection表 仲裁教师 marking_quality_control表 marking_score表 marking_task_assignment表 marking_task表 exam_screen_record表 mock_exam_answer表 mock_exam_record表 mock_exam表 paper_question表 paper表 question表 knowledge_closure表 knowledge表 user表 subject表 classroom表 grade表 系统 学生 教师 管理员 第一阶段:基础配置 第二阶段:内容生成 第三阶段:考试组织 第四阶段:考生作答 第五阶段:阅卷闭环 alt [基于题型分配] [基于考生分配] alt [需要仲裁] 第六阶段:结果沉淀 全流程操作日志记录 创建年级 返回grade_id 创建班级 返回class_id 创建科目 返回subject_id 创建用户 返回user_id 创建知识点 返回knowledge_id 同步层级关系 同步完成 创建试题 返回question_id 创建试卷 返回paper_id 绑定试题 绑定完成 创建考试 返回exam_id 进入考试 创建考试记录 返回exam_record_id 提交答案 保存成功 记录监控数据 创建阅卷任务 返回task_id 分配阅卷任务 分配题型任务 分配考生任务 自动评分客观题 人工评分主观题 质量管控 推送仲裁任务 仲裁评分 同步仲裁结果 核算总分 生成错题集 返回collection_id 记录错题明细 记录完成 记录操作日志
核心数据流转详解
第一阶段:基础配置
核心表 : grade, classroom, subject, user
生成标识 : grade_id, class_id, subject_id, user_id
作用: 建立系统组织架构,为所有业务提供归属载体
第二阶段:内容生成
核心表 : knowledge, knowledge_closure, question
生成标识 : knowledge_id, question_id
作用: 构建"科目→知识点→试题"内容体系,支撑考试内容
第三阶段:考试组织
核心表 : paper, paper_question, mock_exam
生成标识 : paper_id, exam_id
作用: 组织考试任务,关联试卷、试题和班级
第四阶段:考生作答
核心表 : mock_exam_record, mock_exam_answer, exam_screen_record
生成标识 : exam_record_id, answer_id
作用: 记录考生作答原始数据,为阅卷提供数据源
第五阶段:阅卷闭环
核心表 : marking_task, marking_task_assignment, marking_score, marking_quality_control
生成标识 : task_id, assignment_id
核心特色 : 双规则任务分配
- 基于题型分配: 批量处理同类主观题,效率高,标准统一
- 基于考生分配 : 全卷批阅或针对性复核,支持个性化阅卷
作用: 实现"自动评分+人工评分+双评仲裁+成绩核算"完整闭环
第六阶段:结果沉淀
核心表 : wrong_question_collection, wrong_question_item, operation_log
生成标识 : collection_id
作用: 生成错题集用于学情分析,记录全流程操作日志用于审计
双规则分配机制对比
阅卷任务分配双规则
基于题型分配
适用场景
大型标准化考试
需要统一评分标准
效率优先
操作流程
按主观题类型分组
分配同题型试题给教师
教师专注批改同类题型
优点
评分标准统一
批改效率高
便于质量控制
数据关联
question_type字段
关联题型试题
基于考生分配
适用场景
重点考生复核
个性化阅卷需求
查看完整作答轨迹
操作流程
按班级/ID段/随机分配考生
分配单个/批量考生全卷给教师
教师批阅考生所有主观题
优点
完整评估考生水平
支持针对性复核
发现作答逻辑一致性
数据关联
exam_record_id_range字段
关联考生考试记录
外键关联完整性保障
整个数据流转链路通过外键关联确保数据完整性:
-
基础表外键:
classroom.grade_id→grade.iduser.class_id→classroom.iduser.subject_id→subject.id
-
内容表外键:
knowledge.subject_id→subject.idquestion.subject_id→subject.idquestion.knowledge_id→knowledge.id
-
考试表外键:
paper.subject_id→subject.idpaper_question.paper_id→paper.idpaper_question.question_id→question.idmock_exam.paper_id→paper.idmock_exam.class_id→classroom.id
-
作答表外键:
mock_exam_record.exam_id→mock_exam.idmock_exam_record.user_id→user.idmock_exam_answer.exam_record_id→mock_exam_record.idmock_exam_answer.question_id→question.id
-
阅卷表外键:
marking_task.exam_id→mock_exam.idmarking_task_assignment.task_id→marking_task.idmarking_task_assignment.teacher_id→user.idmarking_score.assignment_id→marking_task_assignment.idmarking_score.answer_id→mock_exam_answer.idmarking_quality_control.task_id→marking_task.idmarking_quality_control.question_id→question.id
-
沉淀表外键:
wrong_question_collection.exam_record_id→mock_exam_record.idwrong_question_collection.user_id→user.idwrong_question_item.collection_id→wrong_question_collection.idwrong_question_item.question_id→question.idwrong_question_item.knowledge_id→knowledge.idoperation_log.user_id→user.id
索引优化策略
-
查询频繁字段:
- 状态字段索引:
status,audit_status,publish_status - 时间字段索引:
create_time,update_time - 关联字段索引:所有外键字段
- 状态字段索引:
-
复合索引:
- 联合查询字段:如
(exam_id, user_id),(task_id, teacher_id) - 排序查询字段:如
(create_time, status)
- 联合查询字段:如
-
全文索引:
- 内容搜索字段:如
stem(试题题干),knowledge_name
- 内容搜索字段:如
-
乐观锁机制:
marking_score表的version字段,防止并发评分冲突
业务场景适配
场景1:大型标准化考试
- 适用规则:基于题型分配
- 优势:效率高,评分标准统一
- 流程:客观题自动评分 → 主观题按题型分配给教师 → 双评仲裁 → 成绩核算
场景2:重点考试复核
- 适用规则:基于考生分配
- 优势:针对性强,完整评估
- 流程:客观题自动评分 → 主观题按考生分配给教师 → 重点复核 → 成绩核算
场景3:混合模式
- 适用规则:两种规则结合
- 优势:兼顾效率与质量
- 流程:大部分题目按题型分配 → 重点考生/异常试卷按考生分配 → 综合评阅 → 成绩核算
总结
整个数据流转链路严格遵循"基础配置→内容生成→考试执行→阅卷闭环→结果沉淀"的业务逻辑,通过合理的外键关联和索引优化,实现了数据完整性、可追溯性和高性能查询。双规则分配机制的设计使得系统能够灵活适应不同阅卷场景需求,既保证了大规模考试的阅卷效率,又满足了重点考试的质量控制要求,完全契合教育考试系统阅卷模块的实际业务需求。