用看的、听的学真题

study by eyes and ears.

  1. 首页
  2. 考试科目
  3. 数据库系统工程师
  4. 考试大纲

数据库系统工程师考试大纲(2020版)

一、考试说明

  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介绍