Skip to content

香港数据库系统课程内容与实验解析

数据库系统(Database Systems)是香港各大学计算机科学、软件工程、数据科学等专业本科与硕士阶段的核心必修课之一。无论是港大(HKU)、港中文(CUHK)、港科大(HKUST)的 CS 本科,还是港城大(CityU)、港理工(PolyU)的 IT / Enterprise Software 硕士,几乎都会以这门课作为连接操作系统、计算机网络、数据结构的后续主干课。

由于香港学制沿袭英式体系,又同时引入美式科研导向,数据库课程的设置往往兼具学术深度与工程实操——这与内地高校偏重理论的授课风格略有不同。本文从内容主线、实验架构、考核方式、延伸方向四个维度,为内地学生系统拆解香港数据库系统课程的真实样貌。


一、课程的整体定位与主线结构

香港高校的数据库系统课程通常安排在大三或研一上学期,作为一门 3 学分(部分专业为 6 学分加强版)的核心课。整体内容可划分为四大模块:

模块 核心议题 占比(约)
关系模型与 SQL 关系代数、SQL 语法、视图、约束 25%
存储与索引 磁盘结构、B+ 树、哈希索引、记录组织 20%
查询处理与优化 代数优化、代价估算、连接算法 20%
事务与并发控制 ACID、隔离级别、锁机制、恢复 20%
进阶与新兴议题 分布式数据库、NoSQL、NewSQL 15%

部分学校会把这门课拆成两学期:上学期侧重「Database Systems」讲关系型与事务,下学期开「Advanced / Distributed Databases」讲分布式与新型系统。两门课在内容上衔接紧密,前后修读效果较好。


二、第一模块:关系模型与 SQL 基础

这是整门课的入门章节,主要解决”如何用 SQL 描述数据”的问题。

理论部分:

实验部分:

提示:SQL 语法虽标准化,但各校指定的实验平台略有差异。CUHK 与 HKUST 偏 PostgreSQL,PolyU 部分课程则使用 Oracle,赴港前可先在本地熟悉至少一种主流数据库。


三、第二模块:存储与索引

这一模块是从”会用 SQL”跨越到”理解 SQL 为什么慢”的关键。

理论部分:

实验部分(典型设置):

这部分实验往往让学生第一次直观感受到”数据库不是黑盒”——索引选择、聚簇方式、填充因子都会显著影响性能。


四、第三模块:查询处理与优化

这是工程导向最浓的一个模块,也是面试与研究生申请中的高频考察点。

理论部分:

实验部分(以 HKUST COMP 5331 为参考样例):

这类实验难度较高,通常 3-4 人组队完成,是港校数据库课程最具区分度的环节。


五、第四模块:事务与并发控制

事务(Transaction)是数据库区别于普通文件系统的本质特征,也是 ACID 概念的来源。

理论部分:

实验部分:

这部分内容与操作系统的”同步与互斥”高度呼应,理论与实践结合紧密。


六、第五模块:分布式数据库与新兴系统

近年香港高校普遍把这部分内容加入主干课,或独立开设后续课程。

常见议题:

实验部分:

这部分实验更偏系统层面,工具链多为 Linux + Docker + 命令行,适合已经具备一定工程基础的学生。


七、考核方式与学习建议

香港高校的数据库课程考核通常由四部分组成:

组成部分 占比(约) 备注
平时作业 / 实验 30%-40% 通常 3-4 次大实验
期中考试 20%-25% 闭卷或开卷
期末考试 35%-45% 偏重理论
课程项目 0-15% 部分选修课设置

给内地学生的几条建议:

  1. 不要只依赖中文教材。课程指定英文教材通常是 Silberschatz 的《Database System Concepts》或 Ramakrishnan 的《Database Management Systems》,建议提前阅读前 10 章建立基础。
  2. SQL 一定要多练。课程早期作业的 SQL 题看似简单,但实际考试常考窗口函数、递归 CTE 等高阶语法。
  3. 实验报告的”图表”很关键。港校老师普遍重视数据可视化与对比分析,一张清晰的加速比曲线图比文字描述更有说服力。
  4. 善用 Office Hours。香港教授普遍鼓励学生邮件预约答疑,港校 Office Hour 排队时间通常比内地短很多。
  5. 组队慎选队友。分布式数据库实验往往需要较高的时间投入,提前明确分工能避免后期冲突。

八、常见误区与补充说明

实际课程安排与学分要求以各校教务处最新公布为准,本文所述内容结构与实验设置基于近年香港多所大学的常见做法,细节可能因专业、学期、教师差异有所不同。


数据库系统是一门”理论与工程并重”的典型计算机主干课。在香港学习这门课的优势在于:英语教材一手、原版实验工具链完整、师资多有顶级会议(SIGMOD / VLDB / OSDI)发表经历。若你正在考虑赴港攻读计算机相关学位,提前了解这门课的脉络,将帮助你更平稳地衔接学业。

如需了解更多关于香港高校申请、选课策略、生活准备的实用信息,欢迎访问 香港大全 获取更多香港相关指南。

常见问答

香港高校的数据库系统课程一般安排在哪个学期?是必修还是选修?

多数学校的计算机科学、软件工程、数据科学等专业会把数据库系统安排在大三或研一上学期,作为 3 学分(部分专业为 6 学分加强版)的核心必修课,通常与操作系统、计算机网络、数据结构等课程衔接修读。具体安排以各校教务处最新公布为准。

内地学生赴港前,有没有必要提前自学数据库内容?

建议提前准备。文章建议赴港前先熟悉至少一种主流数据库(SQL 语法、基础查询),并提前阅读课程指定的英文教材(如 Silberschatz《Database System Concepts》或 Ramakrishnan《Database Management Systems》)的前 10 章,有助于更快适应全英文授课环境。

课程实验一般用什么数据库平台?需要自己带电脑吗?

不同学校指定的实验平台略有差异:港中文与港科大偏 PostgreSQL,港理工部分课程使用 Oracle。分布式模块的实验通常在 Linux + Docker + 命令行环境下完成。学生一般需要自备电脑,具体软硬件要求以入学后课程大纲为准。

课程的考核方式是怎样的?内地学生最需要注意什么?

考核通常由平时作业/实验(30%-40%)、期中考试(20%-25%)、期末考试(35%-45%)和部分选修课的课程项目(0-15%)组成。内地学生需特别注意三点:SQL 高阶语法(窗口函数、递归 CTE 等)、实验报告中的图表与对比分析,以及 ACID 与并发控制等高频考察点的深入理解,纯记忆型学习方式难以应对。

实验难度大吗?通常需要组队完成吗?

课程不同模块实验难度不一:基础模块以 SQL 编写和索引对比为主,独立可完成;查询优化模块(如参考样例 HKUST COMP 5331)要求学生实现小型数据库内核中的连接算法与代价模型,通常 3-4 人组队完成,是港校数据库课程中区分度较高的环节。文章建议提前明确分工,谨慎选择队友。

延伸阅读