如何让Hadoop结合R语言做统计和大数据分析

Python021

如何让Hadoop结合R语言做统计和大数据分析,第1张

Hadoop提供非常方便的方式来获取一个任务的统计信息,使用以下命令即可作到:

$ hadoop job -history all <job output directory>

这个命令会分析任务的两个历史文件(这两个文件存储在<job output directory>/_logs/history目录中)并计算任务的统计信息。

R语言和MATLAB一样,用于数据分析处理的,在某些方面比较MATLAB更加强力,在计算矩阵方面PYTHON完全没可比性,R语言还可以和Hadoop结合运行在集群上,做大规模数据统计必备。

-

1、Python语言

Python往往在大数据处理框架中得到支持,但与此同时,它往往又不是“一等公民”。比如说,Spark中的新功能几乎总是出现在Scala/Java绑定的首位,可能需要用PySpark编写面向那些更新版的几个次要版本(对Spark Streaming/MLLib方面的开发工具而言尤为如此)。

与R相反,Python是一种传统的面向对象语言,所以大多数开发人员用起来会相当得心应手,而初次接触R或Scala会让人心生畏惧。一个小问题就是你的代码中需要留出正确的空白处。这将人员分成两大阵营,一派觉得“这非常有助于确保可读性”,另一派则认为,我们应该不需要就因为一行代码有个字符不在适当的位置,就要迫使解释器让程序运行起来。

2、R语言

R语言有着简单而明显的吸引力。使用R语言,只需要短短的几行代码,你就可以在复杂的数据集中筛选,通过先进的建模函数处理数据,以及创建平整的图形来代表数字。它被比喻为是Excel的一个极度活跃版本。

R语言最伟大的资本是已围绕它开发的充满活力的生态系统:R语言社区总是在不断地添加新的软件包和功能到它已经相当丰富的功能集中。据估计,超过200万的人使用R语言,并且最近的一次投票表明,R语言是迄今为止在科学数据中最流行的语言,被61%的受访者使用(其次是Python,39%)。

3、JAVA

Java,以及基于Java的框架,被发现俨然成为了硅谷最大的那些高科技公司的骨骼支架。 “如果你去看Twitter,LinkedIn和Facebook,那么你会发现,Java是它们所有数据工程基础设施的基础语言,”Driscoll说。

Java不能提供R和Python同样质量的可视化,并且它并非统计建模的最佳选择。但是,如果你移动到过去的原型制作并需要建立大型系统,那么Java往往是你的最佳选择。

4、Hadoop和Hive

一群基于Java的工具被开发出来以满足数据处理的巨大需求。Hadoop作为首选的基于Java的框架用于批处理数据已经点燃了大家的热情。Hadoop比其他一些处理工具慢,但它出奇的准确,因此被广泛用于后端分析。它和Hive——一个基于查询并且运行在顶部的框架可以很好地结对工作。