每日打卡题案例12答案
【2015年真题】 难度:一般
阅读以下关于应用系统数据架构的说明,回答下列问题。(25分)
【说明】
某软件公司拟开发一套贸易综合管理系统,包括客户关系管理子系统和商品信息管理子系统两部分。客户关系管理子系统主要管理客户信息,并根据贸易业务需要频繁向客户发送相关的电子邮件、短信等提醒信息。商品信息管理子系统主要为客户提供商品信息在线查询功能,包括商品基本信息、实时库存与价格等。
在对系统进行数据架构设计时,公司项目组的架构师王工主张采用文件系统进行数据管理,原因是目前公司客户和商品数量不大,且系统功能较为简单,采用文件系统进行数据管理简单直观,开发周期短。架构师李工则建议采用关系数据库进行数据管理,原因在于公司目前正处在高速扩张期,虽然目前的客户和商品数量不大,但随着公司快速发展,需要管理的数据必然飞速膨胀,采用关系数据库作为数据存储层,系统的扩展性更强,并能够对未来可能增加的复杂业务提供有效支持。经过讨论,项目组初步采纳了李工的意见,决定采用关系数据库存储客户数据,并针对业务特征对系统性能进行优化。
【问题1】
请从设计难度、数据冗余程度、数据架构、应用扩展性等4个方面对关系型数据库管理系统和文件系统两种数据存储方式进行比较,填写下表中(1)~(4)。
【问题2】
对系统的核心业务需求进行认真分析后,公司的资深架构师张工提出一种内存数据库和关系数据库的混合存储架构,其核心思想是将需要频繁读写的数据存入内存数据库,而将相对固定不变的数据存入关系数据库。请首先分析比较内存数据库和关系数据库在数据模型、读写性能、存储容量、可靠性等方面的差异,填写下表4-2中(1)~(4)的空白,并根据张工的思路指定各种业务数据的存储方式,填写第二个表中(5)~(9)中的空白。
【问题3】
系统开发完成进行压力测试时,发现在较大数据量的情况下,部分业务查询响应时间过长,经过分析发现其主要原因是部分SQL查询语句效率低下。请判断下表中的SQL语句设计策略哪些可能会提升查询效率,哪些可能会降低查询效率,在(1)~(4)中填入“提升”或“降低”。
【参考答案】
【问题1】
(1)数据结构需要符合关系模式,设计难度较大
(2)可能在多个文件中复制相同的数据属性,数据冗余较大
(3)以应用系统为中心组织、管理数据
(4)数据独立于应用系统,很容易在不同的应用系统之间共享数据
【问题2】
(1)Key-Value模式(键-值对模式)
(2)外存读写,性能相对较低
(3)基于内存存储,存储容量受限
(4)恢复机制复杂,可靠性较低
(5)内存数据库
(6)内存数据库
(7)关系数据库
(8)内存数据库
(9)内存数据库
【问题3】
答案:(1)提升(2)降低(3)降低(4)提升