1lambda 体系分为三层:批处理层batch、加速层spark、服务层serving,简要分析这三个层次的用途和特征?
解析:
批处理层Batch主要处理离线数据,用Map Reduce处理,通常用HDFS存储,HDFS适合存储大文件,且有高效的顺序读取,它具有原始的,数据不可变,真实的数据,可以生成批处理视图。
加速层Spark则是主要处理实时数据,用Spark Streaming处理,通常用HBase存储,HBase适合大量数据的随机读取和插入,它的特点就是实时性,数据集是一部分,包含简单的计算,可以生成加速层视图。
服务层serving layer在lambda最上层,主要是提供使用者查询和服务,并且可以使用索引提高效率,特点是统一的查询接口,将加速层和批处理层进行整合,提供统一的查询接口,让用户调用,数据合并是将批处理层和加速层的数据合并,保证一致性和完整性。数据展示和分发,可以把数据展示给用户,并且分发给其他系统。
2Kappa和lambda架构的优缺点?
Kappa则是在lambda的基础上去掉了 batch Layer,将数据通道以消息队列的形式代替。
数据在数据湖里存储,当需要进行离线分析和再次计算的时候,将数据再次经过消息队列重播一次。
3结合你参与的管理开发软件项目,简要叙述单元测试中静态测试和动态测试方法的基本内容?
问题2:如何确定白盒测试的覆盖标准,以及如何实施回归测试?
解析:
静态测试包括代码走读,发现代码逻辑错误,代码风格是否一致。
文档检查,检查软件设计说明书,需求使用规格说明书,数据字典的约束等,保证内容的完整和准缺。
静态分析工具Alibaba Java Coding Guidelines,发现潜在漏洞,不良编程习惯,空指针,未定义变量,复杂表达式等。
动态测试包含构造测试用例,通过对功能的分析,写出对应的测试用例,尽量确保测试后时候路径覆盖,边界值分析等。
执行程序,在测试环境中执行程序,用测试用例中的值输入进去,记录输出的结果和运行状态。
分析输出结果,分析输入结果和输出结果,与预期的是否一致,分析他们的差异,确定是不是代码漏洞导致的。
静态测试优点是可以和开发同步进行,在系统未完成时候就可以开始,节省资源和时间,缺点就是有些错误必须是系统运行才可以发现。
动态测试优点是直观的观察出数据的输入输出错误,程序错误。确定就是需要耗费更多的时间和资源。
黑盒测试,白盒测试,灰盒测试,黑盒测试则主要关注整个系统的功能,白盒测试则需要关注内部逻辑,白盒测试又分为 语句覆盖,判定覆盖,条件覆盖,路径覆盖,灰盒测试则既要关注整个系统的功能,又要关注系统内部逻辑。
4以下()架构风格,常用于处理数据流的各个阶段,如流水线处理。
A 批处理
B 管道过滤器
C 层次风格
D 事件触发
解析:
流水线是前一个阶段的输入时候一个阶段的输出,则是管道过滤器
5以下关于构件的说法中,正确的是()。
A 构件通常以二进制形式发布,无需编译,如果没有公开接口,则需要适配器
B 构件模型提供了一组被构件使用的通用服务,这种服务包括两种:平台服务和通信服务
C 构件在独立部署的时候可以拆分的
D 构件是一个实例单元,具有唯一的标识
解析:
构件提供了 平台服务和支持服务。
对象是一个实例单元,构件不是实例单元。
构件特征:独立部署、第三方组件,外部不可见状态(但容器管理自身可见状态)。
对象特征:是一个实例,封装行为和状态,具有外部可见状态。
答案:A
6用例User case 用来描述系统事件做出相应时所采取的行动。用例之间具有相关性,在一个会员管理系统中,会员注册时可以采用电话和邮件两种方式。用例“会员注册”和“电话注册”、“邮件注册”之间是()关系。
A 包含
B 扩展
C 泛化
D 依赖
解析:
选择泛化,因为是同一个场景。
7软件设计中,有内聚和耦合,耦合衡量模块彼此之间互相依赖的程度,应采用什么设计原则()。
A尽量使用内容耦合,少用控制耦合和特征耦合,限制公众环境耦合范围,完全不用数据耦合
B尽量使用数据耦合,少用控制耦合和特征耦合,限制公共环境耦合范围,完全不同内容耦合
C尽量使用控制耦合,少用数据耦合和特征耦合,限制公共环境耦合范围,完全不同内容耦合
D尽量使用特征耦合,少用数据耦合和控制耦合,限制公共环境耦合范围,完全不同内容耦合
解析:
无直接关系耦合,数据耦合,(标记)特征耦合,外部耦合,公共耦合,内容耦合。
8下列()不属于专利许可的类型。
A独占许可
B排他实施许可
C普通实施许可
D特殊许可
解析:
专利实施 分为 独占实施许可,排他实施许可和普通实施许可。
9 M2M涉及若干重要的技术部分,分别是( 智能化机器、M2M硬件、通信网络、中间件、应用),其中()对获得的数据进行加工分析,提供决策依据。
问题2
A 智能化机器
B 网络设备
C 中间件
D 应用
解析:
智能化机器可以开口说话,M2M硬件能够信息提取。通信网络把信息传递到目的地。中间件是通信和IT信息的桥梁。应用是对获取数据进行加工分析,决策依据。
答案:D
10软件质量属性有开发时期和运行时期,()属于运行时期属性,()属于开发时期属性。
解析:
运行时期:
性能、安全性、可伸缩性、互操作性、可靠性、可用性、鲁棒性。
开发时期:
易理解,可扩展,可重用,可测试,可维护,可移植。