大数据并不是实时vs.批处理的问题。正如Ovum的分析师Tony Baer和其他一些分析师所指出的那样,这不是一个非此即彼的问题。鉴于现如今的企业用户在制定一套成功的大数据战略方面有着广泛的选择和大量的工作负载,上述分析师的论断也并不奇怪或有什么值得争议的。
更具争议性的话题是,虽然也许并不令人感到惊讶,是从被需要用以获得大多数大数据的基础设施中获得其性质。例如,AWS(亚马逊Web服务)的数据科学主管马特·伍德警告说,虽然“分析是会令人上瘾的,但如果你企业的基础设施跟不上的话,这种积极的上瘾会迅速逆转。”
伍德说,大数据项目的成功的关键,不仅仅只是选择Spark或Hadoop。其运行还依赖于弹性的基础设施。
Hortonworks公司的企业战略副总裁肖恩·康纳利认为,云计算已经在大数据分析中发挥了很大的作用。但康纳利表示,决定大数据在何处进行处理的***的因素是“数据的引力”,而不是弹性。
康纳利说,企业部署大数据项目的主要的驱动因素是要扩大和加强传统的内部部署的系统,如数据仓库。最终,这会导致大型企业需要在多处位置部署Hadoop和其他分析集群——通常需要在企业现场。
然而,康纳利也承认,对于开发和测试新的分析应用程序和处理来自企业外部的大数据而言,云计算已然成为了新兴的且越来越受欢迎的选择。
大数据分析的基本成分
AWS大数据的客户范围相当广泛,既包括像Reddit这样的初创型企业,也包括Novartis和Merck这样的大规模的企业,对于任何一款分析系统而言,伍德均建议企业从如下三大关键要素开始考量:
1、单一来源的真相。AWS提供了多种方式以存储单一来源的真相(single source of truth),从S3存储到像DynamoDB或RDS或从Aurora到诸如Redshift这样的数据仓库解决方案。
2、实时分析。伍德说,企业通常会利用streaming数据传输来增加这种单一来源的真相,如网站点击量或金融交易情况。而AWS则提供了Kinesis以帮助实现实时的数据处理,其他已有的选项包括诸如Apache Storm 和Spark。
3、专用任务集群。任务集群是一组运行诸如Hadoop这样的分布式框架的实例,但能够执行专门的任务,如数据的可视化。
考虑到上述这些要素,伍德重申,大数据并不是一个批量处理VS.实时处理的问题,而是涉及广泛的工具集,可以让你以多种方式处理数据:
其不是选择Spark或Hadoop的问题。其应该是一个多种选择相加的“和”问题,而不是一个二选一的“或”的问题。如果你企业使用Spark,不排除你企业会在其他领域采用传统的MapReduce或Mahout。你必须选择恰当的工具,已完成工作。
在伍德看来,“实时数据处理的绝对会有进行向前发展的潜力,但其应该是大数据系统的催化添加剂。”
这也呼应了Hadoop的创始人Doug Cutting不久前在接受记者采访时所说的。他在回答关于streaming数据传输或实时数据处理是否会取代如Hadoop的问题时,表示说:
我不认为市场会朝着streaming数据传输有任何大规模的转向。而streaming数据传输现在加入到处理选项,企业用户能够有方法进行相应的处置。当他们需要互动的BI时,他们会用Impala;当他们需要分面搜索(faceted search)时,他们会使用Solr;当他们需要实时分析时,他们会使用Spark Streaming。企业当然也还是会进行回顾性分析,也会采取批处理的方法。一个成熟的平台用户可能会使用所有这些。
Hortonworks公司的康纳利对于未来的发展也持有类似的观点。Hadoop被企业作为一种以相当低的成本在现有应用程序的筒仓扩展数据仓库和基础设施分析的方法。但随着客户变得更加成熟,新的数据源,新的工具,会经常会让云计算也参合进来:
如果你在考虑采用围绕着360度视角的商业用例(其在不同的孤岛整合客户或产品数据),其可能已经开启。但你的机器学习和数据发现可能是在云中。你可能有新的数据集如天气数据和普查数据,而这些数据在您企业内部已经不可能有了,所以你可能要将现有数据进行组合,以便执行先进的机器学习。
康纳利说,因为物理定律禁止数百TB或PB级的数据跨网络进行方便的迁移,客户将开启Hadoop集群和各种云,以便能够在大部署数据一登陆,就执行相应的分析。即他所谓的“数据的重要性”这一术语。当来源于企业外部的新的数据集到达时(如气象数据、人口普查数据,以及机器和传感器的数据),云计算成为一个执行数据处理的天然场所。
建立弹性和规模化
虽然很多人错误地认为大数据就是海量的数据,却忽视了大内在的更常见的繁杂的种类和传递速度的快速的特点,其真实的数据量也不像某些人认为的那样简单。
在亚马逊的伍德看来,大数据所带来的挑战“与其说是有关数据的绝对规模,还不如说是其相对的规模。”也就是说,虽然像人类基因工程这样的项目可能始于十亿字节规模的项目,但其很快就进入TB级,然后发展为PB级的规模。 “客户目前正在经历工具规模的大幅转变。”伍德指出,但是,当规模进一步发生阶跃型变化时,企业有可能完全措手不及。
正如伍德在我们之前的谈话中告诉我的那样,“那些走出去购买昂贵的基础设施的企业会发现,问题的范围和领域的转变真的太快了。当他们刚刚解答了最初的问题的时候,企业的问题可能已经转移了。”
换句话说,“企业需要一个平台,能够允许他们不断的从一种规模进入到下一种规模,乃至再下一种规模。如果您数据中心无法应付如此大规模的转变,那么,您企业的业务可能无法随着时间的推移而向前迈进。”
伍德举了天气预报频道作为一个例子,在过去,我们可能只会每个四个小时获得一次仅仅只覆盖了几百万个地理位置的天气报告,而现在,在AWS上每隔几分钟都会有设计几十亿出地理位置的天气状况的数据更新,而且还是保证百分百的正常运行时间。换句话说,这不仅仅是关于大数据的处理,而且还涉及到数据的云交付。
对于Hortonworks公司的康纳利来说,云计算的灵活性与其弹性的可扩展性一样重要。“我们开始进行更多的开发测试,让我们可以只需采用ad hoc集群即可实现围绕着数据子集的工作,”他说。
他说,特别是在机器学习的情况下,你可以为机器学习解决方案推动足够的数据,让您得以能够在云中创建你的决策模型。该模型将被用于更广泛的应用程序,其可能部署到其他地方。
“云计算对于前端的‘概念证明,以及让一些初步应用开始启动’非常有帮助,”他补充道。“一旦这样做了,问题就变成了:“因为这涉及到大量的数据,其是否需要迁移到企业内部,或是将其留在云中?”
康纳利说,最终,这不是一个将数据“全部托管在云”与“全部存储在企业内部”的困境的问题。大量的情况是:只要大量的数据被生成,相应的分析就将继续。而在其他的情况下,如机器或传感器数据流的处理情况下,云是一个自然的起点。
康纳利认为:“在接下来的一年或两年,围绕着企业希望将预算花费在何处、数据的来源、以及企业希望在何处运行技术的话题将掀起广泛的讨论,我认为这将是一个广泛联系的混合的经验技术周期。”
然而,其到底将如何形成,很明显,最成功的大数据战略将包括一系列的在云计算中运行的大数据技术。