Week 9
Database Design Project
35%
独立为一个真实的商业系统设计 ER 模型,完成规范化分解并实现所有复杂的 SQL 业务逻辑。
COMP9311
课程定位 COMP9311 是 UNSW 计算机硕士专业在‘数据持久化与管理’维度的绝对基石课。它解决了开发者最本质的命题:如何高效地组织、存储并检索海量数据?如何保证在多用户并发的情况下数据的一致性?它是通往后端开发工程师、数据架构师、及数据库管理员 (DBA) 岗位的唯一必修通行证。它将经典的关系代数、SQL 语言与现代数据库事务机制深度整合,是培养‘具备系统级数据思维的开发者’的必修课。 技术栈与学习内容 课程围绕‘关系型数据库全生命周期’展开。核心技术栈包括:PostgreSQL、标准 SQL、关系代数 (Relational Algebra) 以及 ER 图建模。学习内容涵盖:实体-联系模型 (ER Model) 深度设计、关系模型转换、函数依赖与范式分解 (1NF-3NF, BCNF)——这是设计的逻辑巅峰、复杂的 SQL 查询优化、以及最为核心的‘事务管理 (Transactions)’,包括 ACID 属性、并发控制与恢复机制。此外,课程引入了简单的 NoSQL 与大数据处理初步。课程强调‘数据模型的规范化与查询的高效率’。 课程结构 10 周理论高频产出与两个渐进式项目结合。评估由每周的‘SQL 挑战’Lab(限时完成复杂的多表联查与聚合计算)、一个要求‘从零构建企业级数据模型’的 Major Project(通常涉及复杂的业务逻辑建模与存储过程编写)、以及一场强调关系代数推导、规范化证明与事务冲突判定能力的期末综合大考组成。该课极其强调‘逻辑表达的严密性’。 适合人群 计算机硕士、或打算转行后端开发的理工科生。必须具备基础的逻辑思维能力。如果你想搞清楚‘为什么你的数据库在高并发下会报错’、或者渴望在未来的大数据系统设计中建立底层主权,这门课是你的神功。建议每周投入 15-20 小时进行 SQL 调优。
Course decision
先看考核重心、截止节奏和入门要求,再决定这门课是否适合你的学期安排。
考核总权重
100%
3 项考核
最高单项
40%
Final Professional Examination
期末考试
有
以官方 outline 为准
Hurdle
2 项
需要单独满足
Deadline map
按截止周排列作业节点;持续考核会保留在下方完整考核结构中。
Week 9
35%
独立为一个真实的商业系统设计 ER 模型,完成规范化分解并实现所有复杂的 SQL 业务逻辑。
Week 10
25%
涵盖复杂聚合查询与多重子查询的每周任务,强调代码的执行效率与正确性。
Week 11
40%
全面考察关系代数推演、BCNF 规范化证明及事务可串行化判定的深度笔试。
Syllabus
默认只展示每周独有的知识重点;节奏、考核、Tutorial 和避坑信息按需展开。
数据独立性,三层模式结构,实体、属性与联系的识别,强/弱实体集判定。
选择、投影、连接 (Join)、除法运算,利用纯数学语言描述数据检索逻辑。
主键与外键约束,处理多对多联系,继承关系在关系表中的实现策略。
数据定义语言 (DDL),基础查询,聚合函数,分组 (GROUP BY) 与排序逻辑。
相关子查询,存在性判定 (EXISTS),集合运算,递归查询与窗口函数初步。
复习关系代数转化,冲刺 Major Project 的 Schema 设计,练习索引优化。
函数依赖 (FD),阿姆斯特朗公理,3NF 与 BCNF 分解算法,保持依赖与无损连接判定。
PL/pgSQL 编程,业务逻辑在数据库层面的封装,复杂约束的自动校验机制。
ACID 属性,可串行化理论,锁机制 (2PL),死锁检测与恢复策略。
查询代价估算,索引(B+树)原理,全学期数据图谱大闭环;期末大冲刺。
Assessment
SQL Algorithmic Labs
涵盖复杂聚合查询与多重子查询的每周任务,强调代码的执行效率与正确性。
Week 10
Database Design ProjectHurdle
独立为一个真实的商业系统设计 ER 模型,完成规范化分解并实现所有复杂的 SQL 业务逻辑。
Week 9
Final Professional ExaminationHurdle
全面考察关系代数推演、BCNF 规范化证明及事务可串行化判定的深度笔试。
Week 11
From Seniors
基础信息谁都查得到,真正值钱的是过来人的经验。
比你早一年的学长留下的真实经验 —— ChatGPT 给不了。
这门课还没有学长经验,你可以是第一个 —— 注册后在课内分享。
这门课暂无往年考点记录。
下面是匠人学院毕业生整体去过的公司分布(来自脱敏校友证言)。这是全平台的总体去向,不代表选这门课的人一定去这些公司。
统计自 317 份脱敏校友证言
岗位:Graduate Program · Graduate Consulting · Platform Engineer · Web developer · Platform engineer
岗位:Frontend Dev · junior frontend developer · Front-end Developer · Full Stack Developer
岗位:Full-stack Developer · Data Engineer · Consultant
关于这块数据,我们说实话
雇主墙来自脱敏毕业生证言(testimonials)的整体分布,无法关联到具体学员或其所选课程;仅作为毕业生去向的总体社会证明展示。
我们没有"某位学长选了这门课、后来进了哪家公司"这种可查询的个人去向档案 —— 校友证言是脱敏的,无法关联到具体的人或他选过的课。所以这里只给整体分布,不给个人路径,不编。