“面向大数据系统的软件工程”是我们在《IEEE软件》杂志2016年3/4月号上组织的专辑,专注于大数据对软件工程的影响以及构建此类系统的五种设计需求:
- 普适分布(pervasive distribution);
- 写繁重的工作负载(write-heavy workloads);
- 请求多变的任务负载(variable request workloads);
- 计算密集型分析(computation-intensive analytics);
- 高可用性(high availablity)。
就像设计普适分布式系统一样,大数据系统必须考虑诸如可靠性、可扩展性、透明性和性能等质量属性。系统设计应该满足容错、高一致性、高可用性和适应环境变化等要求。大数据系在应对繁重负载或请求多变负载时,需要能够对读写优化进行折衷的新技术。对于成本高效的大型平台,如果运行时还同时需要进行计算密集的分析,设计挑战就更大了。
今日计算四月主题是这一专辑的延伸。我们从IEEE计算机学会数字图书馆(CDSL)中选择了过去一年半发表的五篇会议或期刊文章。虽然还有很多文章讨论了更具体的技术问题,为了从宏观层次把握,我们决定选择这些综述论文或立场论文。
本期内容
在 大数据系统基准测试的常见问题 中,Gwen Shapira和Yanpei Chen讨论了大数据系统的基准测试问题。性能基准测试对预测大数据系统的实际行为很重要,但作者指出只有处理得当才会对行业真正有用。他们根据自己的经验,给出了如果不严格执行基准测试就会出现的一些缺陷和错误。
Andrea Rosa, Lydia Y. Chen和Walter Binder的 理解大数据系统中的不成功执行 谈到了大数据系统出错的原因。他们调查了有关大数据系统不成功执行(终止)的文献,找出问题所在,强调了更好地理解原因的重要性,并给出他们对如何解决问题的看法。
Kenneth Anderson在 拥抱挑战:大数据世界的软件工程 谈到了设计大数据系统的挑战。基于2009年以来的经验,Anderson审查了技术和管理方面的挑战,分享了克服这些挑战的方法。
大数据分析软件日益成为主流,Carlos Otero和Adrian Peter在 大数据分析软件工程化的研究方向 中研究了对这类软件进行工程化的研究方向。他们讨论了大数据系统和设计要求的一种新范式,向研究者推荐了在建立架构、工具、框架、可扩展算法以及自适应学习系统中应该解决的问题。
最后,Ian Gorton和John Klein的 分布、数据、部署:大数据系统中的软件架构聚合 讨论了分布式数据、软件和部署架构之间的折衷问题。作者以一个分布式医疗系统为例提出了看法,系统地选择和应用一系列技术来有效解决大数据系统设计中关切的问题。
结论
本月的主题文章概述了这一重要新兴领域中存在的挑战。我们邀请您阅读并添加您的意见建议。欲了解更多信息,可通过订阅CSDL访问更多文章。
客座编辑
Ion Gorton是位于西雅图的东北大学的计算机科学教授、主任。他拥有英国谢菲尔德哈勒姆大学的计算机科学博士学位。他的主要技术领域包括软件架构和可扩展性。他的联系方法是i;gorton@neu.edu 。
Ayse·Basar Bener是加拿大瑞尔森大学机械与工业工程教授。她拥有伦敦经济学院信息系统博士学位。她的主要技术领域包括软件分析中的大数据应用、软件评测、软件经济学和软件质量。她的联系方法是ayse.bener@ryerson.ca 。
Audris Mockus是位于诺克斯维尔的田纳西大学的埃里克森-哈兰德米尔斯讲座教授。他拥有卡内基梅隆大学的统计学博士学位。他的兴趣是定量方法和软件开发的交叉领域,比如对软件创建或使用过程中产生的操作数据的可靠分析技术。他的联系方法是audris@mockus.org。