将定制的Spark和Hadoop试点项目转移到生产中是一项艰巨的任务,但容器技术缓解了这种艰难的过渡。
当团队试图将小型试点项目转变为面向数据科学团队和业务分析人员的大型运营应用程序时,Spark和Hadoop分析工作往往会遇到困难。对于许多人来说,这是他们在大数据分析之路上遇到的最大障碍。
配置的复杂性有时候也是绊脚石。由一个单独的数据科学家构建的自定义配置的原型可能需要很长的时间来重新创建,一旦失败,是由一个更广泛的用户池共享。为了解决这些问题,一些人利用DevOps型容器和微服务技术将Spark和Hadoop组件衔接在一起。
“我们的数据科学团队和业务利益相关者不希望等待过长的时间,等我们建立一个新的Spark集群或其他大型数据环境,并提供所需的所有工具、版本、配置和数据,” 为医疗机构提供分析和咨询服务的公司董事Ramesh Thyagarajan说道。他将Docker容器视为在大数据科学家和企业用户上实现敏捷性的关键技术。
为了将这种DevOps风格部署到其大数据应用程序,咨询委员会正在使用BlueData Software的EPIC软件平台来运行Spark SQL和Spark分析引擎以及Apache Zeppelin开发人员笔记本。Thyagarajan表示:“对我们而言,这是关于敏捷性和更快速的业务创新的。BlueData平台的强大功能是将大数据部署作为基于容器的架构。”
据Thyagarajan介绍,该平台为数据科学家和业务分析师提供了新的Spark集群的按需分配,这些分析人员基本上避免了此类部署所需配置的复杂性。
他表示,他的团队建立了自己的框架,将数据带入Hadoop分布式文件系统(HDFS)。这种集中处理是很重要的,他说,“我们没有办法支持400多名用户,每个用户都创建自己的集群。”
是在脚本中运行吗?
在容器中谈论大数据为时尚早。BlueData的联合创始人兼首席架构师Tom Phelan表示,到目前为止,Spark集群主要是在裸机服务器中实施。
Tom在最近在波士顿举行的Spark Summit East 2017年的演讲中表示,裸机意味着难以改变的架构和静态实施。
容器的实现可以使用脚本由手动完成,但是由于大数据管道组件较多,因此容器变得更具挑战性。他说,Spark常常是比较复杂的、协调工作负载的一部分,这些工作量并不一定容易适应容器的方法。
他告诉会议与会者,“必须要跨过容器管理者这一关。 这也是BlueData软件需要解决的问题之一。”
弹性缩放的路径
Phelan表示,BlueData平台最近的更新解决了使用Spark的数据科学家(如咨询委员会)的实施需求。
BlueData最新版本在本月初推出,支持常用的Spark工具,如JupyterHub,RStudio Server和Zeppelin编程笔记本,作为预配置的Docker映像。目的是为数据科学带来更多DevOps风格的敏捷性。
使用Docker容器和其他微服务方法是实现应用程序部署自动化的驱动力。这些方法通常是弹性缩放的一个途径,它允许管理员根据工作负载来建立和分解计算资源。
这在云计算以及内部部署实施中日益普及,如果Spark和Hadoop的使用范围在企业中逐渐扩大,拥抱容器的加入未尝不是一件好事。