派生属性-架构案例2020(三十七)

上篇案例回顾:

  1. 架构风格 解释器和面向对象的区别?

灵活性:解释器更灵活,因为解释器架构风格是独立的一套规则,通过解释器解析,可以做到多个对象都面对这一个解释器。

可修改性:解释器修改性更好,不需要根据对象来修改,修改独立的规则就好。

性能:面向对象性能优于解释器,因为面向对象是基于对象,在一起的。

  1. 数据流图在分层细化过程中遵循的数据平衡原则?

父图和子图的输出/输出流必需保持一一对应的。父类的一条输入/输出流对应子类多条数据流,子图的多条输入/输出流刚好对应父图这一条。

子图内部的输入/输出流也必须保持一一对应的。

  1. 数据流图和数据字典在软件需求分析和软件设计的作用?

数据流图在需求分析阶段,建立系统功能模型,从而完成需求分析。

在软件开发阶段,为模块划分和接口设计提供依据。

数据字典 保证数据在需求分析阶段和开发阶段完整性一致性

具体作用是要求数据列表、相互参照,保证一致性和完整性。

  1. 缓存redis和数据库一致性解决方案?200字以内的的文字

主动触发:通过代码读取数据库binlog日志,来更新redis的数据,保证一致性。

被动触发:当读取数据的时候,如果redis缓存没有,则读取数据库的数据,并且放入到redis缓存,当修改的时候,也需要放入缓存。(可以利用延迟双删保证一致性)

  1. 哈希算法和一致性哈希算法区别?

哈希算法是通过计算哈希值,当相同的哈希值则放到同一个实例上,类似于取模操作。

一致性哈希算法则是有一个哈希环,当计算到哈希值后,顺时针去哈希环上查找,找到对应的节点,性能更高。

  1. 布隆过滤器工作原理及其优缺点?

布隆过滤器通过一个很长的二进制向量来过滤,当布隆过滤器返回不存在的时候,则直接表示key没有,不需要查询数据库。

优点:

  1. 占内存小。
  2. 查询效率高。
  3. 不需要存储元素本身,保密好

缺点:

  1. 可能存在小概率误判,不能准备判断是否在集合。
  2. 不能获取元素本身
  3. 不能删除数据

7、300字描述,从数据通信、数据安全和系统性能方面分析传统云计算引入边缘计算模型的优势。

数据安全:以加密的方式存储在边缘设备上,比在网络上传递更安全,且黑客不会攻击单个节点导致全部不可用。

系统性能方面:性能更高,以人脸识别为例,只需要在本地处理,不需要上传到网络比较。

数据通信:通信更快捷,数据量少,因为通信只需要在边缘设备上完成,通信更多的是指令。

  1. MQTT协议在互联网行业广泛应用,请300字以内简要介绍MQTT协议?

MQTT消息队列遥测传输,是一个基于发布/订阅的消息协议,基于TCP/IP之上,当信号不好网络及其网络情况糟糕的情况下设计的发布/订阅协议。MQTT消息队列具有有轻量、简单、开发和易于实现。

  1. 实时方案和准实时方案?

实时方案,有数据变化立马更新。

准实时方案,数据变化发送消息到队列,异步在队列慢慢消费。

  • 包裹管理系统

某企业委托软件公司开发一套包裹信息管理系统,以便于对该企业通过快递收发的包裹信息进行统一管理。在系统设计阶段,需要对不同快递公司的包裹单信息进行建模,其中,邮政包裹单如图2-1所示。

派生属性-架构案例2020(三十七)_第1张图片

(14分)
请说明关系型数据库开发中,逻辑数据模型设计过程包含哪些任务?该包裹单的逻辑数据模型中应该包含哪些实体?并给出每个实体的主键属性。

答案:

逻辑数据模型设计过程包含:

  1. 构建基于主键数据模型,为每个实体添加主键属性。
  2. 构建全属性数据模型,为每个实体添加非主键属性。
  3. 利用规范化设计建立系统规范化数据库模型。
  4. 构件系统上下文数据模型,包含实体之间的联系。

包裹实体(主键:包裹编号)

收件人实体(主键:电话)

寄件人实体(主键:电话)

(6分)
请说明什么是超类实体?结合图中包裹单信息,试设计一种超类实体,给出完整的属性列表。

答案:

超类实体指将多个实体的相同属性结合起来构建成新的实体。

用户(电话、姓名、单位名称、详细地址)

(5分)
请说明什么是派生属性,并结合图2-1的包裹单信息说明哪个属性是派生属性。

答案:

派生属性指某个实体非主键属性,由其他非主键属性决定的。

派生属性是“总计”,这个需要计算才可以获取到。

你可能感兴趣的:(架构师,软考高级,架构)