查询或建立(65)用带(66)的条件子句等价替换OR子句 只检索需要的属性列等。" name="Keywords"> 查询或建立(65)用带(66)的条件子句等价替换OR子句 只检索需要的属性列等。" name="Description">
免费智能真题库 > 历年试卷 > 数据库系统工程师 > 2019年上半年 数据库系统工程师 上午试卷 综合知识
  第65题      
  知识点:   性能调整   数据库   数据库系统   系统运行
  关键词:   SQL语句   数据库系统   数据   数据库        章/节:   数据库设计       

 
数据库系统运行中,经常会找出频繁执行的SQL语句进行优化。常见的优化策略有:尽可能减少多表查询或建立(65);用带(66)的条件子句等价替换OR子句; 只检索需要的属性列等。
 
 
  A.  视图
 
  B.  物化视图
 
  C.  外键约束
 
  D.  临时表
 
 
 

 
  第28题    2017年上半年  
   43%
在数据库系统运行维护阶段,通过重建视图能够实现( )。
  第61题    2016年上半年  
   51%
数据库重构是指因为性能原因,对数据库中的某个表进行分解,再通过建立与原表同名的(60)以保证查询该表的应用程序不变;通过修..
  第67题    2019年上半年  
   54%
以下有关数据库审计的叙述中,错误的是( )。
   知识点讲解    
   · 性能调整    · 数据库    · 数据库系统    · 系统运行
 
       性能调整
        在数据库系统运行过程中,如何尽可能地提高系统的性能,是系统管理员的主要工作之一。系统的性能一方面取决于DBMS的性能及其参数设定,而在指定的DBMS环境下,与具体的应用系统也有很大的关系,可通过调整来提高性能。
               SQL语句的编码检验
               通过DBMS提供的监控和统计功能,找出频繁执行的SQL语句,通常是查询语句,对其进行优化,常用的策略如下:
               (1)尽可能地减少多表查询或建立物化视图。
               (2)以不相关子查询替代相关子查询。
               (3)只检索需要的列。
               (4)用带IN的条件子句等价替换OR子句。
               (5)经常提交COMMIT,以尽早释放锁。
               表设计的评价
               在设计阶段,我们提出了关系模式的设计应当符合3NF或BCNF,目的是减少数据冗余和消除操作异常。但在数据库系统运行过程中,需要根据实际情况对表进行调整。调整的原则主要有如下三个方面:
               (1)如果频繁的访问是对两个相关的表进行连接操作,则考虑将其合并。
               (2)如果频繁的访问只是在表中的某一部分字段上进行,则考虑分解表,将该部分单独作为一个表。
               (3)对于更新很少的表,引入物化视图。物化视图(Materialized View)是一种特殊的物理表,物化视图是相对普通视图而言的。普通视图是虚拟表(不存放数据的表),任何对视图的查询,都需要转换为对应的SQL语句进行查询。
               索引维护和改进
               在数据库运行期间,数据库系统管理员(DBA)必须对数据库的索引进行维护和改进。这是因为用户频繁地对数据进行增加、删除、修改等操作使得索引页发生碎块,所以DBA必须对索引进行维护。另外,DBA可针对具体的情况,对系统中的索引进行改进以提高性能,即可以适当地调整索引。调整索引的原则主要有如下四个方面:
               (1)如果查询是瓶颈,则在关系上建立适应的索引,通常在作为查询条件的属性上建立索引,可以提高查询效率。
               (2)如果更新是瓶颈,每次更新都会重建表上的索引,引起效率的降低,则考虑删除某些索引。
               (3)选择适当的索引类型,如果是经常使用范围查询,则B树索引比散列索引更高效。
               (4)将有利于大多数据查询和更新的索引设为聚簇索引。
               设备增强
               在数据库系统运行过程中,如果经过各种调整之后,仍不能满足性能要求,则应当考虑增强系统设备。例如,引入高速的计算机、增加系统内存、使用高速的网络设备和高速的存储设备等方面。当然,设备的增强需要企业的资金投入,应当考虑合适的性价比和投入产出比,还需要说服决策者同意。
 
       数据库
        数据库(DataBase,DB)是指长期存储在计算机内的、有组织的、可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和存储,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。
        系统使用的所有数据存储在一个或几个数据库中。
 
       数据库系统
        简单地说,数据库系统就是基于数据库的计算机应用系统。这样一个系统包括以下内容。
        ①以数据为主体的数据库。
        ②管理数据库的系统(DBMS)。
        ③支持数据库系统的计算机硬件环境和操作系统环境。
        ④管理和使用数据库系统的人——数据库管理员。
        1)数据库的定义和特征
        数据库,顾名思义就是存放数据的仓库,这种想当然的理解是不准确的。数据库对应的英文单词是DataBase,如果直译则是数据基地;而数据仓库则另有其词DataWarehouse。所以数据库和数据仓库不是同义词,数据仓库是在数据库技术的基础上发展起来的又一新的应用领域。
        数据库技术发展到今天已经是一门成熟的技术,但却没有一个被普遍接受的、严格的定义。数据库是相互关联数据的集合,这是大家公认的数据库的基本特征之一。下面一段话概括了数据库应该具备的一些特征,也可以把它作为数据库的定义。
        数据库是相互关联数据的集合,它用综合的方法组织数据,具有较小的数据冗余,可供多个用户共享,具有较高的数据独立性,具有安全控制机制,能够保证数据的安全、可靠,允许并发地使用数据库,能有效、及时地处理数据,并能保证数据的一致性和完整性。
        (1)相互关联的数据集合。数据库中的数据不是孤立的,数据与数据之间是相互关联的。也就是说,在数据库中不仅要能够表示数据本身,还要能够表示数据与数据之间的联系。比如在学籍管理中,有学生和课程两类数据,在数据库中除了要存放这两类数据之外,还要存放哪些学生选修了哪些课程或哪些课程由哪些学生选修这样的信息,这就反映了学生数据和课程数据之间的联系。
        (2)用综合的方法组织数据。数据库能够根据不同的需要按不同的方法组织数据,如可以用顺序组织方法、索引组织方法、聚集(Cluster)组织方法等。
        (3)低冗余与数据共享。由于在数据库技术之前,数据文件都是独立的,所以任何数据文件都必须含有满足某应用的全部数据。比如,人事部门有一个职工文件,教育部门也有一个职工文件,两个部门的职工文件中都有"职工基本情况"的数据,也就是说这一部分数据是重复存储的,如果还有第三、第四个部门也有类似的职工文件,那么重复存储所造成的空间浪费是很大的。在数据库中,可以共享类似"职工基本情况"这样的共用数据,从而降低数据的冗余度。
        (4)数据具有较高的独立性。数据独立性是指数据的组织和存储方式与应用程序互不依赖、彼此独立的特性。在数据库技术之前,数据文件的组织方式和应用程序是密切相关的,当改变数据结构时,相应的应用程序也必须随之修改,这样就大大增加了应用程序的开发代价和维护代价。而数据库技术却可以使数据的组织和存储方法与应用程序互不依赖,从而大大降低应用程序的开发代价和维护代价。
        (5)保证数据的安全、可靠。数据库技术要能够保证数据库中的数据是安全、可靠的。数据库要有一套安全机制,以便可以有效地防止数据库中的数据被非法使用或非法修改;数据库还要有一套完整的备份和恢复机制,以便保证当数据遭到破坏时(软件或硬件故障引起的),能立刻将数据完全恢复,从而保证系统能够连续、可靠地运行。
        (6)最大限度地保证数据的正确性。保证数据正确的特性在数据库中称为数据完整性。在数据库中可以通过建立一些约束条件保证数据库中的数据是正确的。比如输入年龄小于0或者大于200时,数据库能够主动拒绝这类错误。
        (7)数据可以并发使用并能同时保证数据的一致性。数据库中的数据是共享的,并且允许多个用户同时使用同一数据,这就要求数据库能够协调一致,保证各个用户之间对数据的操作不发生矛盾和冲突,即在多个用户同时使用数据库的情况下,能够保证数据的一致性和正确性。
        2)数据库管理系统
        数据库的各种功能和特性,并不是数据库中的数据所固有的,而是靠管理或支持数据库的系统软件——数据库管理系统(DataBase Management System, DBMS)提供的。一个完备的数据库管理系统应该具备上一节提到的各种功能,其任务就是对数据资源进行管理,并且使之能为多个用户共享,同时还能保证数据的安全性、可靠性、完整性、一致性,并要保证数据的高度独立性。一个数据库管理系统应该具备以下功能。
        (1)数据库定义功能。可以定义数据库的结构和数据库的存储结构,可以定义数据库中数据之间的联系,可以定义数据的完整性约束条件和保证完整性的触发机制等。
        (2)数据库操纵功能。可以完成对数据库中数据的操纵,可以装入、删除、修改数据,可以重新组织数据库的存储结构,可以完成数据库的备份和恢复等操作。
        (3)数据库查询功能。可以以各种方式提供灵活的查询功能,可以使用户方便地使用数据库中的数据。
        (4)数据库控制功能。可以完成对数据库的安全性控制、完整性控制、多用户环境下的并发控制等各方面的控制。
        (5)数据库通信功能。在分布式数据库或提供网络操作功能的数据库中还必须提供数据库的通信功能。
        3)数据库管理员
        从事数据库管理工作的人员称为数据库管理员(DataBase Administrator, DBA)。DBA有大量的工作要做,既有技术方面的工作,又有管理方面的工作,要参加数据库开发和使用的全部工作。总体来说,DBA的工作可以概括如下。
        (1)在数据库规划阶段要参与选择和评价与数据库有关的计算机软件和硬件,要与数据库用户共同确定数据库系统的目标和数据库应用需求,要确定数据库的开发计划。
        (2)在数据库设计阶段要负责数据库标准的制定和共用数据字典的研制,要负责各级数据库模式的设计,要负责数据库安全、可靠方面的设计。
        (3)在数据库运行阶段首先要负责对用户进行数据库方面的培训;要负责数据库的转储和恢复;要负责对数据库中的数据进行维护;要负责监视数据库的性能,并调整、改善数据库的性能,提高系统的效率;要继续负责数据库安全系统的管理;要在运行过程中发现问题、解决问题。
        4)数据库的发展
        数据库的核心任务是数据管理,它包括数据的分类、组织、编码、存储、检索和维护等。数据管理经历了以下3个阶段。
        (1)人工管理阶段。人工管理阶段是指计算机诞生的初期(20世纪50年代中期以前)。这个时期的计算机技术,从硬件看还没有磁盘这样的可直接存取的存储设备,从软件看没有操作系统,更没有管理数据的软件。这个时期数据管理的特点如下。
        ①数据不保存。因为计算机主要用于科学计算,一般也不需要长期保存数据,只是在完成某一个计算或课题时才将数据输入,然后不仅原始数据不保存,计算结果也不保存。
        ②没有文件的概念。这个时期的数据组织必须由每个程序的程序员自行组织和安排。
        ③一组数据对应一个程序。每组数据只对应一个应用,即使两个程序用到相同的数据,也必须各自定义、各自组织,数据无法共享、无法相互利用和互相参照。因此,程序和程序之间有大量的数据重复。
        ④没有形成完整的数据管理的概念。由于以上几个特点及没有对数据进行管理的软件系统,所以这个时期的每个程序都要包括数据存取方法、输入输出方法和数据组织方法等。因为程序是直接面向存储结构的,所以存储结构的任何一点修改,都会导致程序的修改,程序与数据不具有独立性。
        (2)文件系统阶段。文件系统阶段是指20世纪50年代后期到60年代中期这一阶段。从那时起,计算机不仅大量用于科学计算,也开始大量用于信息管理。像磁盘这样的直接存取存储设备也已经出现,在软件方面也有了操作系统和高级语言,还有了专门用于数据管理的软件,即文件系统(或操作系统的文件管理部分)。这个阶段的数据管理具有以下特点。
        ①数据可以长期保存在磁盘上,也可以反复使用,即可以经常对文件进行查询、修改、插入和删除等操作。
        ②操作系统提供了文件管理功能和访问文件的存取方法,程序和数据之间有了数据存取的接口,程序开始通过文件名和数据打交道,可以不再关心数据的物理存放位置。因此,这时也有了数据的物理结构和数据的逻辑结构的区别。程序和数据之间有了一定的独立性。
        ③文件的形式已经多样化。由于有了磁盘这样的直接存取存储设备,文件也就不再局限于顺序文件,也有了索引文件、链表文件等。因而,对文件的访问可以是顺序访问,也可以是直接访问。但文件之间是独立的,它们之间的联系要通过程序去构造,文件的共享性还比较差。
        ④有了存储文件以后,数据就不再仅仅属于某个特定的程序,而是可以由多个程序反复使用。但文件结构的设计仍然是基于特定的用途,程序仍然是基于特定的物理结构和存取方法编制的。因此,数据的存储结构和程序之间的依赖关系并未根本改变。
        ⑤数据的存取基本上以记录为单位。
        (3)数据库系统阶段。数据库系统阶段从20世纪60年代后期开始,数据库技术的诞生既有计算机技术的发展做依托,又有数据管理的需求做动力。数据库的数据不再是面向某个应用或某个程序,而是面向整个企业(组织)或整个应用。
 
       系统运行
               系统管理分类
               IT系统管理工作主要是优化IT部门的各类管理流程,并保证能够按照一定的服务级别,为业务部门(客户)高质量、低成本地提供IT服务。IT系统管理工作可以按照以下两个标准予以分类。
                      按系统类型分类
                      (1)信息系统,企业的信息处理基础平台,直接面向业务部门(客户),包括办公自动化系统、企业资源计划(ERP)、客户关系管理(CRM)、供应链管理(SCM)、数据仓库系统(Date Warehousing)、知识管理平台(KM)等。
                      (2)网络系统,作为企业的基础架构,是其他方面的核心支撑平台。包括企业内部网(Intranet)、IP地址管理、广域网(ISDN、虚拟专用网)、远程拨号系统等。
                      (3)运作系统,作为企业IT运行管理的各类系统,是IT部门的核心管理平台。包括备份/恢复系统、入侵检测、性能监控、安全管理、服务级别管理、帮助服务台、作业调度等。
                      (4)设施及设备,设施及设备管理是为了保证计算机处于适合其连续工作的环境中,并把灾难(人为或自然的)的影响降到最低限度。包括专门用来放置计算机设备的设施或房间。
                      对IT资产(计算机设备、通信设备、个人计算机和局域网设备)的恰当的环境保护;有效的环境控制机制:火灾探测和灭火系统、湿度控制系统、双层地板,隐藏的线路铺设、安全设置水管位置,使其远离敏感设备、以及不间断电源和后备电力供应等。
                      按流程类型分类
                      (1)侧重于IT部门的管理,从而保证能够高质量地为业务部门(客户)提供IT服务。这一部分主要是对公司整个IT活动的管理,包括IT财务管理、服务级别管理、IT资源管理、能力管理、系统安全管理、新系统转换、系统评价等职能。
                      (2)侧重于业务部门的IT支持及日常作业,从而保证业务部门(客户)IT服务的可用性和持续性。这一部分主要是业务部门IT支持服务,包括IT日常作业管理、帮助服务台管理、故障管理及用户支持、性能及可用性保障等。
                      (3)侧重于IT基础设施建设,主要是建设企业的局域网、广域网、Web架构、Internet连接等。
               系统管理规范化
               系统管理的规范化涉及到人员职责、操作流程等方面标准的制定,并进行有效的标准化。企业IT部门除了IT部门组织结构及职责之外,还应该详细制定各类运作管理规章制度,主要包括:日常作业调度手册、系统备份及恢复手册、性能监控及优化手册、输出管理手册、帮助服务台运作手册、常见故障处理方法、终端用户计算机使用制度等与用户息息相关的IT支持作业方面的规范制度。此外,还包括服务级别管理手册、安全管理制度、IT财务管理制度、IT服务计费及成本核算、IT资源及配置管理、新系统转换流程、IT能力规划管理等由IT部门执行的以提供高质量IT服务为目的的管理流程。
               系统运作报告
               系统运行过程中的关键操作、非正常操作、故障、性能监控、安全审计等信息,应该实时或随后形成系统运作报告,并进行分析以改进系统管理水平。
               是否有流程保证对所有不属于标准操作的操作性问题给予记录(在问题管理系统内)、分析和及时处理?
                      系统日常操作日志
                      系统日志应该记录足以形成数据的信息,为关键性的运作提供审核追踪记录,并且保存合理的时间段。利用日志工具定期对日志进行检查,以便监控例外情况并发现非正常的操作、未经授权的活动、作业完成情况、存储状况、CPU、内存利用水平等。
                      性能/能力规划报告
                      企业需要了解其IT能力能否满足其业务需要,因此它需要了解系统性能、能力和成本的历史数据,定期形成月度、年度性能报告,并进行趋势分析和资源限制评估,在此基础之上增加或调整其IT能力。
                      性能监控工具应该主动地监控、测量和报告系统的性能,包括平均响应时间、每日交易数、平均无故障时间、CPU、存储器等的使用状况、网络性能等,从而可以有预见性地响应变化的业务需求。
                      故障管理报告
                      企业应定期产生有关问题的统计数据,这些统计数据包括:事故出现次数、受影响的客户数、解决事故所需时间和成本、业务损失成本等,可以供管理层对反复发生的问题进行根本原因的分析,并寻找改进的机会。
                      另外,对于每次故障处理应该进行数据记录、归类,作为基础,它应包括以下内容。
                      .目录,确定与故障相关联的领域,比如硬件、软件等。
                      .影响度,故障对业务流程的影响程度。
                      .紧迫性,故障需要得到解决的紧急程度。
                      .优先级,综合考虑影响度、紧迫性、风险和可用资源后得出的解决故障的先后顺序。
                      .解决方法,故障解决的流程、处理方法。
                      这样有利于使用知识管理系统来协助解决问题。
                      安全审计日志
                      为了能够实时监测、记录和分析网络上和用户系统中发生的各类与安全有关的事件(如网络入侵、内部资料窃取、泄密行为等),并阻断严重的违规行为,就需要安全审计跟踪机制来实现在跟踪中记录有关安全的信息。审计是记录用户使用计算机网络系统进行所有活动的过程,它是提高安全性的重要工具。
                      审计记录应包括以下信息:事件发生的时间和地点;引发事件的用户;事件的类型;事件成功与否。常见的审计记录可能包括:活动的用户账号和访问特权;用户的活动情况,包括可疑的行为;未授权和未成功的访问企图;敏感命令的运行等。
                      系统运作报告使对IT的整个运行状况的评价得以实现,IT报告应具备涵盖所有IT领域的关键业绩指标,例如风险及问题、财务状况、系统利用率、系统性能、系统故障时间、服务级别执行情况、安全审计等,这也为IT运作绩效的改进提供了基础。
   题号导航      2019年上半年 数据库系统工程师 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第65题    在手机中做本题