数据库系统工程师考试大纲
一、考 试 说 明
1.考试目标
通过本考试的合格人员能参与信息系统的规划、设计、 构建、运行和管理,能按照用户需求,设计、建立、运行、 维护数据库系统;能管理信息系统中的数据资源,建立和维 护核心数据库,承担数据库系统有关的技术支持,并具备一 定的网络结构设计及组网能力;具有工程师的实际工作能力 和业务水平,能指导计算机技术与软件专业助理工程师(或 技术员)工作。
2.考试要求
(1)掌握计算机体系结构以及各主要部件的性能和基本工作原理;
(2)掌握操作系统、程序设计语言的基础知识,了解编译与解释程序的基本概念;
(3)熟练掌握常用数据结构和算法;
(4)熟悉软件工程的基础知识;
(5)熟悉计算机网络的基本原理和技术;
(6)掌握数据库系统基本概念及关系理论;
(7)掌握常用的大型数据库管理系统的应用技术;
(8)掌握数据库应用系统的设计方法和开发过程;
(9)熟悉数据库系统的管理和维护方法,了解相关的安全技术;
(10)了解数据库发展趋势与新技术;
(11)掌握常用信息技术标准、安全性,以及有关法律、 法规的基本知识;
(12)了解信息化、计算机应用的基础知识;
(13)正确阅读和理解IT领域的英文资料。
3.考试科目设置
(1)考试科目 1:计算机及数据库系统知识,考试时间 为150分钟,考试形式为笔试;
(2)考试科目 2:数据库系统设计、开发与管理,考试时间为150分钟,考试形式为笔试。
二、考 试 范 围
考试科目1:计算机及数据库系统知识
1.计算机系统知识
1.1 硬件知识
1.1.1 计算机体系结构
CPU技术(CISC/RISC,流水线操作,多处理机, 并行处理)
存储器的基本工作原理、组成、性能
常用I/O设备的类型、原理和特性,以及I/O接 口技术
1.1.2 存储系统
虚拟存储器基本工作原理,多级存储体系
RAID类型和特性
网络存储技术
1.1.3 可靠性与系统性能评测基础知识
故障诊断与容错技术
系统可靠性分析评价
计算机系统性能评测方法(性能计算:响应时间、 吞吐量、周转时间;性能指标和性能基准;性能 测试和性能评估)
1.2 数据结构与算法
1.2.1 常用数据结构
数组(静态数组、动态数组)
线性表、链表(单向链表、双向链表、循环链表)
栈和队列
树(二叉树、查找树、平衡树等)、图
哈希表(存储位置计算,碰撞处理)
1.2.2 常用算法
排序算法、查找算法、数值计算、字符串处理、 数据压缩算法、递归算法、图的相关算法
算法与数据结构的关系,算法效率,算法设计, 算法描述(流程图、伪代码、决策表),算法的 复杂性
1.3 软件知识
1.3.1 操作系统知识
操作系统的基本概念(类型、特征、内核、进程、 线程等)
处理机管理(状态转换、同步与互斥、信号量、 时间片轮转、抢占、死锁)
存储管理(存储保护、分区、分段、分页、虚存 等)
设备管理(I/O控制、假脱机、磁盘调度)
文件管理(文件目录、文件的结构和组织、存取 方法、存取控制、恢复处理、共享和安全)
作业管理(状态转换、作业调度、作业控制语言 (JCL)、多道程序设计)
网络操作系统、分布式操作系统和嵌入式操作系 统等基础知识
操作系统的配置
1.3.2 程序设计语言和语言处理程序的知识
程序语言翻译基础知识(汇编、编译、解释、链 接)
程序设计语言的基本成分:数据、运算、控制和 传输
函数(子程序)定义、函数调用
面向对象程序设计语言(类、对象、继承、多态)
常用程序设计语言的主要特点和适用情况
1.4 计算机网络知识
网络体系结构(网络拓扑,OSI/RM,TCP/IP, 常用的网络协议)
常用网络设备和各类通信设备的功能和特点
局域网(拓扑结构、存取控制、网间互连)
Client-Server 结构、Browser-Server 结构的特点
Internet 、Intranet 和防火墙基础知识及应用
1.5 计算机应用基础知识
信息管理、数据处理、辅助设计、科学计算、人 工智能等基础知识
远程通信服务及相关通信协议基础知识
多媒体应用技术
2.数据库技术
2.1 数据库技术基础
2.1.1 数据库模型
数据模型的基本概念(结构、操作、语义)
典型的数据模型:概念数据模型(实体、属性、 联系),逻辑数据模型(关系模型、层次模型、 网络模型、面向对象模型、XML模型),数据 存储模型
数据库模式基本概念(三级模式、两级映射)
2.1.2 数据库管理系统功能
主要功能(数据库定义、数据库操作、数据库完 整性控制、事务特性)
辅助功能(数据库运行配置、数据库备份、还原 和恢复、数据导入与导出,数据库安全控制)
典型数据库:RDB(关系数据库),OODB(面 向对象数据库),ORDB(对象关系数据库), XML(XML数据库)、NoSQL(非关系数据库)
2.1.3 数据库管理系统体系结构
集中式数据库系统
并行数据库系统
分布式数据库系统
对象关系数据库系统
2.1.4 数据库系统体系结构
数据库系统的组成(用户、程序、数据库、硬件 平台)
集中式数据库系统体系结构
客户/服务器数据库系统体系结构
多层数据库系统体系结构
Web数据库系统体系结构
2.1.5 数据库系统特征
数据独立性:查询引擎、查询执行计划
数据共享与事务特性(原子性、完整性、隔离性、 持久性)
高性能、高可靠、高安全、可扩展
2.2 关系模型
2.2.1 基本概念:域、元组、属性、笛卡儿积、关 系、基数、超键、候选键、主键
2.2.2 关系运算
传统代数运算(并、交、差、笛卡儿积)
专门代数运算(选择、投影、连接、除)
基本运算(并、差、笛卡儿积、选择、投影)
关系模式、关系数据库、型与值
关系的完整性(实体完整性、参照完整性、用户 定义的完整性)
2.3 关系数据库理论
2.3.1 函数依赖与多值依赖
2.3.2 模式分解(无损分解、保持函数依赖分解、 模式等价)
2.3.3 范式(第一范式、第二范式、第三范式、 BC范式、第四范式)
2.4 数据库标准语言(SQL)
2.4.1 SQL概述
SQL的功能与特点
SQL数据定义语言(表、视图、索引、约束)
SQL数据操作语言(数据检索、数据插入/删除/ 更新)
SQL数据控制语言(安全性和授权、事务处理)
2.4.2 数据库定义
数据库定义:创建、修改与删除数据库
数据库对象定义:创建、修改与删除表对象、索 引对象、视图对象、完整性对象 数据库用户定义:创建、修改与删除数据库用户、 数据库用户授权
2.4.3 数据查询
基本结构(Select子句、From子句、Where子句、 Group By 子句、Order By 子句)
函数操作:数据类型转换、字符串函数、聚集函 数、数学函数等
多表连接
集合操作(并、交、差)
嵌套查询
2.4.4 数据更新
插入新数据
修改已有数据
删除指定数据
2.4.5 完整性控制
主键约束
外键约束
属性值上的约束(Null、Check、Create Domain)
全局约束(Create Assertions)
2.4.6 安全机制
数据库权限与对象权限、用户授权(Grant)与 销权(Revoke)
2.4.7 事务控制
事务开始(Begin Transaction)、事务终止(End Transaction)、事务提交(Commit)、事务回滚 (Rollback)
2.5 数据库运行控制
安全性:用户认证、访问控制、安全审计
完整性:事务完整性、数据库完整性
并发控制:基于封锁机制的并发控制、基于多版 本的并发控制
备份、还原与恢复
2.6 数据仓库和数据分析基础知识
数据仓库的基本概念:定义、基本要素、常见模式
数据抽取、转换、装载
多维数据分析基本知识
常见数据分析方法
3.系统开发和运行维护知识
3.1 软件工程基础知识
软件生命周期模型
软件开发方法
软件工具与软件开发环境
3.2 系统分析基础知识
分析的目的和任务
结构化分析方法(数据流图(DFD)和数据字典(DD)
面向对象分析方法
面向服务分析方法
系统规格说明书
3.3 系统设计知识
概要设计与详细设计的基本任务
系统设计的基本原理(抽象、模块化、信息隐蔽、 模块独立(耦合、内聚)的基本概念)
系统模块结构设计(模块的概念、模块结构图的 构成与内涵)
结构化设计方法(变换分析、事务分析的概念及 基本步骤)
面向对象设计方法
面向服务设计基本概念
系统详细设计
3.4 系统实施知识
配置计算机系统及环境
选择合适的程序设计语言
系统开发与测试
3.5 系统运行和维护知识
系统可维护性的概念
系统维护的类型
系统评价的概念与类型
4.安全性知识
安全性基本概念
系统安全层次(网络安全、操作系统安全、数据库安全)
计算机病毒的防护,计算机犯罪的防范,容灾
用户认证与访问控制、安全管理措施
加密与解密机制
风险分析、风险类型、抗风险措施和内部控制
5.标准化知识
标准化意识,标准化的发展,标准出台过程
国际标准、国家标准、行业标准、企业标准基本 知识
代码标准、文件格式标准、安全标准、软件开发 规范和文档标准
标准化机构
6.信息化基础知识
信息化基本知识
全球信息化趋势,国家信息化战略,企业信息化 战略和策略
有关的法律、法规
企业信息化、电子商务、电子政务等基础知识
企业信息资源管理基础知识
7.计算机专业英语
掌握IT技术的基本词汇
能正确阅读和理解IT领域的英文资料
考试科目2:数据库系统设计、开发与管理
1.系统分析与设计
1.1 应用系统分析
了解用户需求、确定系统范围
确定应用系统的业务功能需求及与业务相关的数据
确定现有环境与新系统环境的关系,可能提供的 数据服务
新系统中的数据项、数据字典、数据加工及对应 的数据流图
1.2 应用系统功能设计
功能划分与需求对应关系
系统规格说明书(系统配置图、各子系统关系图、 业务流程图、系统的功能说明、输入输出规格说 明、数据规格说明和数据流)
1.3 应用系统架构设计
信息系统的架构(如 Client/Server、Browser/ Server)
大规模数据库和并行计算机体系结构(SMP、 MPP)
中间件角色和相关工具 按构件分解,确定构件功能规格以及构件之间的 接口 1.4 数据库结构设计
数据库设计方法:自顶向下与自底向上设计、结 构化设计与面向对象设计
数据库设计内容:概念模型设计、逻辑模型设计 和物理存储模型设计
概念结构设计(设计ER模型及其他数据模型)、 评审
逻辑结构设计(ER模型到逻辑模型转换、逻辑 模型优化、外模式设计)、评审
1.5 物理数据设计
存取方法设计:分析事务在数据库上运行的频率 和性能要求,依据数据规模确定物理存储逻辑组 织方式、存储介质,设计格式的索引结构
存储结构设计:将逻辑数据结构变换成物理数据 结构,计算容量(空间代价),确定系统配置(维 护代价)并依据访问频率、效率要求设计数据存 储位置及其优化配置参数
1.6 安全体系设计
明确用户安全域、安全等级
选择合适的认证方式(操作系统认证、数据库认 证、第三方认证)
设计数据库访问控制机制:自主访问控制、强制 访问控制、基于角色访问控制
确认安全审计方式(对象审计、命令审计、操作 审计)
1.7 数据库系统测试
数据库系统功能测试:确认测试、功能符合性 测试
数据库系统非功能测试:性能测试、安全测试、 可用性测试
数据库系统辅助功能测试:数据加载与数据导 出、易用性、可维护性测试
2.应用系统详细设计与开发
2.1 应用系统详细设计
2.1.1 模块划分(原则、方法、标准)
2.1.2 界面设计,输入输出、检查方法和检查信息 设计
2.1.3 编写程序设计文档
模块规格说明书(功能和接口说明、程序处理逻 辑的描述、输入输出数据格式的描述)
测试要求说明书(测试类型和目标,测试用例, 测试方法)
2.1.4 程序设计评审
2.1.5 设计文档
编写系统配置说明、构件划分图、构件间的接口、 构件处理说明、屏幕设计文档、报表设计文档、 程序设计文档、文件设计文档
2.1.6 设计评审
2.2 应用程序开发准备
选择应用程序开发平台
系统实施顺序
框架开发
基于小组的程序开发
源代码控制
版本控制
2.3 数据库开发环境搭建(SQL Server、Oracle、Sybase、 DB2等)
创建数据库、用户和表空间
创建表、索引、视图、约束、用户自定义类型 存储过程和触发器
2.4 高级SQL应用
复杂SQL语句(左连接、右连接、嵌套、递归)
存储过程(Stored Procedure)与触发器 (Trigger)
分区表、物化视图
多维查询语言(MDX)与OLAP窗口函数
嵌入式SQL的基本概念、SQL与宿主语言接口 (SQL通信区、共享变量、游标) 2.5 面向WEB的DBS技术
三层体系结构
动态Web网页
ASP、JSP、XML的应用
2.6 应用系统的数据库开发
数据库连接(CLI、ODBC、JDBC、OLEDB/ADO、 XQuery)与数据库连接池 应用系统开发语言的数据库操作(掌握 C 程序 设计语言,以及Java、C++、Delphi中任一种开 发语言对数据库连接、数据库增删改查、关闭连 接等操作)
2.7 数据库应用系统安装
拟定系统安装计划(考虑费用、客户关系、雇员 关系、后勤关系和风险等因素) 拟定人力资源使用计划(组织机构人员安排的合 理性)
直接安装(安装新系统并使系统快速进入运行 状态)
并行安装(新旧系统并行运行一段时间)
阶段安装(经过一系列的步骤和阶段使新系统各 部分逐步投入运行)
2.8 数据库应用系统测试
拟定测试目标、计划、方法与步骤
数据加载,准备测试数据
指导应用程序员进行模块测试并进行验收
准备系统集成测试环境和测试工具
写出数据库运行测试报告
2.9 培训与用户支持
3.数据库管理与维护
3.1 数据库系统的运行计划
运行策略的确定
确定数据库系统报警对象和报警方式
数据库系统的管理计划(执行,故障/恢复,安 全性,完整性,用户培训和维护)
3.2 数据库系统的运行和维护
新旧系统的转换
收集和分析报警数据(执行报警、故障报警、安 全报警)
连续稳定的运行
数据库维护(数据库重构、安全视图的评价和验 证、文档维护)
数据库系统的运行统计(收集、分析、提出改进 措施)
关于运行标准和标准改进一致性的建议
数据库系统的审计
3.3 数据库管理
数据字典和数据仓库的管理
数据完整性维护和管理(实体完整性、参照完整性)
数据库物理结构的管理(保证数据不推迟访问)
数据库空间及碎片管理 备份和恢复(顺序、日志(审计痕迹)、检查点)
死锁管理(集中式、分布式)
并发控制(可串行性、锁机制、时间戳、优化)
数据安全性管理(加密、安全、访问控制、视图、 有效性确认规则)
数据库管理员(DBA)职责
3.4 数据库监控
数据库用户活动监控
数据库服务器运行监控:锁监控、连接数监控、 表空间监控、内存监控、网络流量监控
数据库运行安全监控
3.5 数据库系统性能调整
优化基本概念:主动优化、被动优化
SQL优化
数据库存储对象优化
数据库存取方式优化
数据库实例配置参数优化
服务器硬件环境优化
业务管理优化
3.6 用户支持
用户培训
售后服务
4.网络环境下的数据库
4.1 分布式数据库
分布式数据库基本概念
分布式数据库体系结构
P2P数据库的数据分布与查询搜索
Web语义数据库基本概念
4.2 网络环境下数据库系统的设计与实施
数据分片设计:水平分割、垂直分割、混合分割
数据分布设计:分布存储设计、数据复制设计
并行处理与负载均衡设计
数据库互连技术
5.数据库的安全性
5.1 安全性策略
口令策略与资源管理策略
数据库视图的安全性策略
数据的安全级别(最重要的、重要的、注意、选 择)
5.2 数据库安全控制
用户访问控制(采用授权方式)
程序访问控制(包含在程序中的SQL命令限制)
表的访问控制(视图机制)
控制访问的函数和操作
外部存储数据的加密与解密
5.3 数据库安全审计
数据库审计
基于内容的数据库审计(通过触发器或包含在程 序中的SQL命令限制)
6.数据库发展趋势与新技术
6.1 数据仓库
数据仓库的规划(元数据、主题、数据集市)
数据抽取、转换和装载、任务调度
数据报表与展现
6.2 多维数据分析
多维数据库基本概念(维度、度量、层次)
多维数据库设计
多维数据库装载和计算
多维数据分析(切片、旋转、上钻、下钻)
6.3 数据挖掘
机器学习基本概念
常见数据挖掘算法
6.4 XML数据库
XML数据库基本概念
XML数据库类型
XML数据库查询语言(XQuery)
6.5 大数据
大数据四个特点(4V'1)
分布式文件存储(GFS,HDFS)
MapReduce 计算范型
常见大数据存储方式(列存储、关键字-值存储、 文档存储)