阅读以下关于数据库设计的叙述,在答题纸上回答问题1至问题3。 【说明】 某软件企业开发一套类似于淘宝网上商城业务的电子商务网站。该系统涉及多种用户角色,包括购物用户、商铺管理员、系统管理员等。 在数据库设计中,该系统数据库的核心关系包括: 产品(产

admin2020-04-30  30

问题 阅读以下关于数据库设计的叙述,在答题纸上回答问题1至问题3。
【说明】
    某软件企业开发一套类似于淘宝网上商城业务的电子商务网站。该系统涉及多种用户角色,包括购物用户、商铺管理员、系统管理员等。
在数据库设计中,该系统数据库的核心关系包括:
产品(产品编码,产品名称,产品价格,库存数量,商铺编码)
商铺(商铺编码,商铺名称,商铺地址,商铺邮箱,服务电话)
用户(用户编码,用户名称,用户地址,联系电话)
订单(订单编码,订单H期,用户编码,商铺编码,产品编码,产品数量,订单总价)
    不同用户角色有不同的数据需求,为此该软件企业在基本数据库关系模式的基础上,定制了许多视图。其中,有很多视图涉及多表关联和聚集函数运算。
为解决该视图查询性能比较差的问题,张工建议为该数据建立单独的商品当大货物销售、存货情况的关系表。但李工认为张工的方案造成了数据小一致的问题,必须采用一定的手段来解决。
    1)说明张工方案是否能够对该视图查询性能有所提升,并解释原因;
    2)解释说明李工指出的数据不一致问题产生的原因。

选项

答案 1)张工方案可以提升该视图查询性能。 原因是:为该查询单独设置物理表,数据来源于其他基表,可以通过索引等技术来提高针对该物理表的查询效率;单独设表,数据提前算好放到表中,无须查询时的计算开销,提高性能。 2)该方案造成了日销售产品数量和库存数量的数据存在多张表中,出现了数据冗余。 存在的问题:当新增订单或产品库存数量发生变更时,必须实时同步数据,否则会造成数据不一致问题。如果采用张工的方案,必须采用某些手段来解决数据不一致的问题。

解析     张工的方案类似于反规范化操作。
    张工方案可以提升该视图查询性能。原因是:为该查询单独设置物理表,数据来源于其他基表,可以通过索引等技术来提高针对该物理表的查询效率;单独设表,数据提前算好放到表中,无须查询时的计算开销,提高性能。
    该方案的缺点也类似于反规范化操作的缺点。主要的问题是数据冗余存放,会带来数据不一致和更新异常等问题。具体到张工的方案中,日销售产品数量和库存数量的数据存在多张表中,出现了数据冗余。存在的问题是当新增订单或产品库存数量发生变更时,必须实时同步数据,否则会造成数据不一致问题。如果采用张工的方案,必须采用某些手段来解决数据不一致的问题。
转载请注明原文地址:https://jikaoti.com/ti/C067FFFM
0

最新回复(0)