通过数据库系统工程师级别(中级资格/工程师)考试的合格人员能参与应用信息系统的规划、设计、构建、运行和管理,能按照用户需求,设计、建立、运行、维护高质量的数据库和数据仓库;作为数据管理员管理信息系统中的数据资源,作为数据库管理员建立和维护核心数据库;担任数据库系统有关的技术支持,同时具备一定的网络结构设计及组网能力;具有工程师的实际工作能力和业务水平,能指导计算机技术与软件专业助理工程师(或技术员)工作。
一、考试说明
1.考试目标
通过本考试的合格人员能参与信息系统的规划、设计、构建、运行和管理,能按照用户需求,设计、建立、运行、维护数据库系统;能管理信息系统中的数据资源,建立和维护核心数据库,承担数据库系统有关的技术支持,并具备一定的网络结构设计及组网能力;具有工程师的实际工作能力和业务水平,能指导计算机技术与软件专业助理工程师(或技术员)工作。
2.考试要求
(1)掌握计算机体系结构以及各主要部件的性能和基本工作原理;
(2)掌握操作系统、程序设计语言的基础知识,了解编译与解释程序的基本概念;
(3)掌握常用数据结构和算法;
(4)熟悉软件工程的基础知识;
(5)熟悉计算机网络的基本原理和技术;
(6)掌握数据库系统基本概念及关系理论;
(7)掌握常用的大型数据库管理系统的应用技术;
(8)掌握数据库应用系统的设计方法和开发过程;
(9)熟悉数据库系统的管理和维护方法,了解相关的安全技术;
(10)了解数据库发展趋势与新技术;
(11)掌握常用信息技术标准、信息安全基础知识,以及有关法律、法规的基本知识;
(12)正确阅读和理解IT领域的英文资料。
3.考试科目设置
(1)考试科目一:基础知识。考试时间为150分钟,考试形式为笔试;
(2)考试科目二:应用技术。考试时间为150分钟,考试形式为笔试。
二、考试范围
考试科目一:基础知识
1.计算机系统基础知识
1.1 硬件基础知识
1.1.1 计算机系统的组成、体系结构分类及特性
◆ CPU、存储器的组成、性能和基本工作原理
◆ 常用I/O设备的性能及基本工作原理
◆ I/O 接口的功能、类型和特性
◆ CISC/RISC、流水线操作、多处理机、并行处理
1.1.2 存储系统
◆ 虚拟存储器基本工作原理、多级存储体系
◆ RAID类型和特性
◆ 网络存储技术
1.1.3 可靠性与系统性能评测基础知识
◆ 故障诊断与容错技术
◆ 系统可靠性分析评价
◆ 计算机系统性能评测方法
1.2 计算机软件基础知识
1.2.1数据结构与算法
◆ 常用数据结构
◆ 常用算法
1.2.2 操作系统基础知识
◆ 操作系统的基本概念处理机管理
◆ 存储管理设备管理文件管理
◆ 作业管理(任务管理、界面管理、语音控制和虚拟现实等)
◆ 操作系统的配置
1.2.3程序设计语言和语言处理程序知识
◆ 汇编、编译、解释系统的基础知识和基本工作原理
◆ 程序设计语言的基本成分(数据、运算、控制和传输)、函数调用机制
◆ 各类程序设计语言的主要特点
1.3 计算机网络基础知识
◆ 协议体系结构
◆ 传输介质与交换技术
◆ 常用网络设备与服务器
◆ 局域网络连接
◆ Internet 基础知识
◆ TCP/IP协议
◆ 简单网络管理
2.数据库技术
2.1 数据库技术基础
2.1.1 数据库模型
◆ 数据库模型的基本概念
◆ 数据库模型的分类
◆ 典型数据库:RDB(关系数据库)、0ODB(面向对象数据库)、ORDB(对象关系数据库)、XML数据库、NoSQL(非关系数据库)
2.1.2 数据库管理系统(DBMS)功能
◆ DBMS主要功能
◆ DBMS辅助功能
2.1.3数据库系统体系结构
◆ ANSI-SPARC体系结构
◆ 集中式数据库系统
◆ 并行数据库系统
◆ 分布式数据库系统
◆ 对象关系数据库系统
2.2 关系数据库
2.2.1 基本概念
◆ 关系模式
◆ 关系模式的型与值
◆ 关系的完整性约束
2.2.2 关系运算
◆ 关系代数运算及关系代数表达式
◆ 元组演算及其表达式
◆ 关系运算的安全性
2.2.3 关系数据库理论
◆ 函数依赖与多值依赖
◆ 函数依赖的公理系统
◆ 范式
◆ 模式分解
2.3 事务管理
2.3.1 事务的基本概念
2.3.2数据库的并发控制
◆ 事务调度
◆ 并发操作、并发调度与并发控制
◆ 封锁协议
◆ 事务隔离级别
2.3.3 数据库的故障与恢复
2.4 数据库标准语言--SQL
2.4.1 SQL概述
◆ SQL的功能与特点
◆ SQL数据定义语言
◆ SQL数据操作语言
◆ SQL数据控制语言
2.4.2 数据库定义
◆ 数据库对象定义
◆ 数据库用户定义
◆ 数据库访问控制
2.4.3 数据查询
◆ Select基本结构
◆ 函数操作
◆ 多表连接
◆ 集合操作(并、交、差)
◆ 嵌套查询
2.4.4 数据更新
◆ 插入新数据
◆ 修改已有数据
◆ 删除指定数据
2.4.5 完整性控制
◆ 主键约束
◆ 外键约束
◆ 属性值上的约束
◆ 全局约束
2.4.6事务控制
◆ 事务开始(Begin Transaction)
◆ 事务终止(End Transaction)
◆ 事务提交(Commit)
◆ 事务回滚(Rollback)
2.4.7 存储过程
2.4.8 触发器
◆ 触发器类别
◆ 触发器应用
2.5 数据库设计
2.5.1 数据库设计基础知识
2.5.2 数据库设计方法与步骤
◆ 用户需求分析
◆ 概念结构设计
◆ 逻辑结构设计
◆ 物理结构设计
◆ 数据库实施
◆ 数据库运行和维护
2.6 数据仓库和数据分析基础知识
◆ 数据仓库的基本概念
◆ 数据抽取、转换和装载
◆ 多维数据分析基本知识
◆ 常见数据分析方法
3.系统开发和运行维护知识
3.1 软件工程基础知识
◆ 软件生命周期模型
◆ 软件开发方法
◆ 软件工具与软件开发环境
3.2 系统分析基础知识
◆ 分析的目的和任务结构化分析方法
◆ 数据流图(DFD)
◆ 数据字典(DD)
◆ 面向对象分析方法
◆ 面向服务分析方法
◆ 系统规格说明书
3.3 系统设计基础知识
◆ 系统设计的基本原理
◆ 软件体系结构基本概念
◆ 系统设计方法与模型
3.4 系统实施知识
◆ 配置计算机系统及环境
◆ 选择合适的程序设计语言
◆ 系统开发与测试
3.5 系统运行和维护知识
◆ 系统可维护性的概念
◆ 系统转换
◆ 系统评价
4. 网络与信息安全知识
◆ 信息安全基础
◆ 信息安全技术(加密与解密、认证、数字签名、摘要等)
◆ 网络安全技术
◆ 计算机安全等级及相关法律法规
5. 数据库主流应用技术
◆ 云计算
◆ 大数据
◆ 应用领域新进展
◆ 移动应用
6. 计算机专业英语
◆ 具有工程师所要求的英语阅读水平
◆ 理解本领域的英语术语
考试科目2:应用技术
1、系统分析与设计
1.1 应用系统分析
● 了解用户需求,确定系统范围
● 确定应用系统的业务功能需求及与业务相关的数据
● 确定现有环境与新系统环境的关系,可能提供的数据服务
● 新系统中的数据项、数据字典、数据加工及对应的数据流图
1.2 应用系统功能设计
● 功能划分与需求对应关系
● 系统规格说明书(系统配置图、各子系统关系图、业务流程图、系统的功能说明、输入输出规格说明、数据规格说明和数据流)
1.3 应用系统架构设计
● 信息系统的架构(如Client/Server、Browser/Server)
● 大规模数据库和并行计算机体系结构(SMP、MPP)
● 中间件角色和相关工具
● 按构件分解,确定构件功能规格以及构件之间的接口
1.4 数据库结构设计
● 数据库设计方法(自顶向下与自底向上设计、结构化设计与面向对象设计)
● 数据库设计内容(概念模型设计、逻辑模型设计和物理存储模型设计)
● 概念结构设计(设计E-R模型及其他数据模型)、评审
● 逻辑结构设计(E-R模型到逻辑模型转换、逻辑模型优化、外模式设计)、评审
● 物理结构设计(存取方法设计、存储结构设计)、评审
1.5 安全体系设计
● 明确用户安全域、安全等级
● 选择合适的认证方式(操作系统认证、数据库认证、第三方认证)
● 设计数据库访问控制机制(自主访问控制、强制访问控制、基于角色访问控制)
● 确认安全审计方式(对象审计、命令审计、操作审计)
1.6 数据库系统测试
● 数据库系统功能测试(确认测试、功能符合性测试)
● 数据库系统非功能测试(性能测试、安全测试、可用性测试)
● 数据库系统辅助功能测试(数据加载与数据导出、易用性、可维护性测试)
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 数据库开发环境搭建
● MySQL、SQL Server、Oracle、Sybase、DB2等安装与部署
2.4 SQL应用
● 创建数据库、用户和表空间
● 创建表、索引、视图、约束、用户自定义类型
● 复杂SQL语句(左连接、右连接、嵌套、递归)
● 存储过程(Stored Procedure)语法、游标、高级数据类型和应用
● 触发器(Trigger)类别和应用分区表、物化视图
● 多维查询语言(MDX)与OLAP窗口函数
● 嵌入式SQL的基本概念
● SQL与宿主语言接口(SQL通信区、共享变量、游标)
2.5 应用系统的数据库开发
● 数据库访问接口(ODBC、嵌入SQL)
● 数据库访问框架(持久化框架)
2.6 培训与用户支持
3.数据库管理与维护
3.1 数据库系统的运行计划
● 运行策略的确定
● 确定数据库系统报警对象和报警方式
● 数据库系统的管理计划(执行、故障/恢复、安全性、完整性、用户培训和维护)
3.2 数据库系统的运行和维护
● 新旧系统的转换
● 收集和分析报警数据(执行报警、故障报警、安全报警)
● 连续稳定的运行
● 数据库维护(数据库重构、安全视图的评价和验证、文档维护)
● 数据库系统的运行统计(收集、分析、提出改进措施)
● 关于运行标准和标准改进一致性的建议
● 数据库系统的审计
3.3 数据库管理
● 数据库管理员(DBA)职责
● 数据字典和数据仓库的管理
● 数据完整性维护和管理(实体完整性、参照完整性)
● 数据库物理结构的管理(保证数据不推迟访问)
● 数据库空间及碎片管理
● 备份和恢复[顺序、日志(审计痕迹)、检查点]
● 死锁管理(集中式、分布式)
● 并发控制(可串行性、锁机制、时间戳、优化)
● 数据安全性管理(加密、安全、访问控制、视图、有效性确认规则)
3.4 数据库监控
● 数据库用户活动监控
● 数据库服务器运行监控(锁监控、连接数监控、表空间监控、内存监控、网络流量监控)
● 数据库运行安全监控
3.5 数据库系统性能调整
● 优化基本概念(主动优化、被动优化)
● SQL优化
● 数据库存储对象优化
● 数据库存取方式优化
● 数据库实例配置参数优化
● 服务器硬件环境优化
● 业务管理优化
3.6 用户支持
● 用户培训
● 售后服务
4. 数据库的安全性
4.1 安全性策略
● 口令策略与资源管理策略
● 数据库视图的安全性策略
● 数据的安全级别(最重要的、重要的、注意、选择)
4.2 数据库安全控制
● 用户访问控制(采用授权方式)
● 程序访问控制(包含在程序中的SQL命令限制)
● 表的访问控制(视图机制)
● 控制访问的函数和操作
● 外部存储数据的加密与解密
4.3 数据库安全审计
● 数据库审计
● 基于内容的数据库审计(通过触发器或包含在程序中的 SQL命令限制)
5. 大数据相关技术与应用
5.1 分布式数据库
● 分布式数据库基本概念(策略、特点)
● 分布式数据库的体系结构(模式结构、数据分布、数据分片、分布透明性、DDBMS)
● 分布式查询处理和优化
● 分布事务管理(特性、、恢复、两阶段协议)
● 新型分布式海量数据库
5.2 Web与数据库
● Web 概述
● Web服务器脚本程序与服务器的接口
● CGI的应用
● ASP的应用
● Servlet和JSP的应用
5.3 XML与数据库
● XML概念
● XML文件存储面临的问题
● XML与数据库的数据转换
5.4面向对象数据库
● 面向对象数据库系统的特征
● 面向对象数据模型(对象结构、对象类、继承、对象标识、对象嵌套)
● 面向对象数据库语言
● 对象关系数据库系统(嵌套关系、复杂类型、继承、引用类型、函数与过程)
5.5 大数据与数据库
● 大数据的概念
● 大数据之数据仓库设计
● 数据转移技术
● 数据仓库主要应用场景-联机分析处理(OLAP)
● 数据库主要应用场景-联机事务处理(OLTP)
5.6 NewSQL数据库
● NewSQL数据库的发展
● TiDB介绍