跳转至内容

大数据实用 DevOps / 概述

来自维基教科书,开放世界中的开放书籍

大数据重要性

[编辑 | 编辑源代码]

大数据是信息与通信技术 (ICT) 的主要趋势。随着全球范围内移动设备和传感器的不断普及,社交网络上用户生成内容不断增长,以及物联网的即将到来,我们的日常设备(智能手机、电器、车辆、住宅等)将通过物联网进行通信和数据交换,这种数据洪流的特点是我们的现代社会,它带来了新的机遇,也带来了有趣的挑战。政府也倾向于更多地自动化公共服务。因此,高效处理海量且不断增长的数据的能力变得至关重要。最后但同样重要的是,大数据是一个创造就业机会的范式转变。仅在英国,从 2008 年到 2012 年,对大数据架构师、大数据分析师、大数据管理员、大数据项目经理和大数据设计师的需求分别增长了 157%、64%、186%、178% 和 329%[1]

大数据系统的特点

[编辑 | 编辑源代码]

希望从大数据中获益的组织必须重新考虑其信息系统的架构。为了能够适应大数据,系统必须在设计时始终牢记三个重要的关键特征。首先是可扩展性:基础设施可扩展性、数据平台可扩展性和处理可扩展性。在基础设施层面,可扩展性使组织能够根据需要添加任意数量的存储和计算资源。中小型企业 (SME) 通常自身没有这种能力。但他们可以使用云提供商的基础设施,云提供商可以为他们提供根据需要创建更多虚拟机或容器的可能性(当然,需要付费)。在数据平台层面,可扩展性是指采用本质上分布式的数据管理软件,即在网络上分散数据,并能够利用网络中添加计算机带来的新可用存储空间。在处理层面,可扩展性是指多个操作系统进程(通常运行在不同的机器上)协同工作,以并行化一项要完成的任务。当工作负载很高时,可以有无限数量的进程加入工作。

总而言之,大数据架构师的使命是协调各种可扩展数据平台和处理技术的活动,这些技术部署在可扩展的基础设施上,以满足具体的业务需求。这些技术的组织方式以及它们之间的关系就是我们所说的架构。一些架构模式已经被发现和记录,可以在文献中找到。例如,Nathan Marz 的 Lambda 架构[2]。虽然大数据系统的架构对最终用户来说是透明的,但他们不可避免地期待着一件事:整体低延迟。因此,大数据系统的第二个重要特性是服务质量 (QoS)。QoS 是对特定性能指标(如 CPU 时间、输入/输出等待时间和响应时间)值的的一组要求。

大数据系统的第三个基本特征是健壮性。当大数据架构中的某些机器或操作系统进程出现故障时,大数据系统必须继续运行,并且从外部角度来看,问题不应被察觉。

中小型企业的 大数据

[编辑 | 编辑源代码]

我们可以从上一节描述的功能中看出,许多希望开始在大数据市场上竞争的中小型企业无力构建大数据系统。首先,他们必须租用大型企业的基础设施。其次,由于大数据技术的学习曲线很高(有时由同一家大型企业设计),因此他们很难在短时间内掌握这些技术。第三,协调这些技术并达到可接受的服务质量更加复杂。

我们认为这种情况并非不可改变。为了改变这种情况,我们确定并试图消除以下障碍:

  1. 缺乏用于推理大数据系统可能架构的工具。架构师需要一个工具来阐明他们关于如何组织大数据技术的思路。建模语言非常适合于此目的。
  2. 缺乏能够将架构大数据模型与生产环境连接起来的工具。模型不仅仅是抽象的表示;它们是基于具体现实的。就大数据而言,这种现实是生产环境,即构建大数据系统的云基础设施。集成开发环境 (IDE) 应该允许架构师以用户友好的方式从模型(想法)迁移到生产环境(结果)。建模语言越正式(即它的概念越具有精确的,甚至是数学的意义),开发人员就越容易编写程序来利用、分析和转换模型、生成软件、打包软件并自动部署软件。
  3. 缺乏根据测量的运行时性能和预先计划的目标重构已部署大数据架构的工具。当获得的服务质量不如模型所承诺的那么好时,应该提供重构工具来纠正架构错误。

本书解释了我们克服这些障碍的工作。

参考资料

[编辑 | 编辑源代码]
  1. e-skills UK (2013). "大数据分析:对劳动力和技能需求的评估,2012-2017 年". Retrieved 2017-09-22.
  2. Marz, Nathan; Warren, James (2015). 大数据:可扩展实时数据系统的原则和最佳实践. Manning. ISBN 9781617290343.
华夏公益教科书