某高校学生管理系统的新生数据取自各省招生办公室的考生信息,筛选出录取本校的考生信息直接导入,再根据录取专业划分班级并生成学号(学号的前4位与所在班级编号相同)。学校的学生管理业务多以班级和学生为单位处理,应对学生信息表(),以减少I/O访问次数,提高系统性能。
设该系统的学生关系模式为:学生(学号,姓名,性别,出生日期,身份证号,籍贯,家庭所在地),在该系统运行过程中,DBA发现频繁访问学生关系的查询程序只涉及到学号、姓名、性别和出生日期属性,为提高该查询程序的性能,应()。
设该系统的学生关系模式为:学生(学号,姓名,性别,出生日期,身份证号,籍贯,家庭所在地),在该系统运行过程中,DBA发现频繁访问学生关系的查询程序只涉及到学号、姓名、性别和出生日期属性,为提高该查询程序的性能,应()。
A.直接修改该查询程序
B.分解学生关系为学生1(学号,姓名,性别,出生日期)和学生2(学号,身份证号,籍贯,家庭所在地),并修改该查询程序
C.分解学生关系为学生1(学号,姓名,性别,出生日期)和学生2(学号,身份证号,籍贯,家庭所在地),并构建“学生”视图,该查询程序不做修改
D.创建学生关系上的视图学生1(学号,姓名,性别,出生日期),该查询程序不做修改
参考答案:C
解析:
[分析]:
频繁执行的应用程序是系统优化的重点。本问题的原因同样在于与该应用程序不相关的数据使得每次执行访问的FO次数增多,是问题的主要矛盾,修改应用程序通常对性能的提高不明显,选项A错误;将学生关系分解后,使得数据相对集中,在访问数据库时可以减少FO操作,分解后表名的改变又会影响到应用程序,而建立同名视图可以使应用程序不受影响。故选项B、D错误,选项C正确。