R与Hadoop集成

2025年3月17日 | 阅读 3 分钟

什么是Hadoop?

Hadoop是一个开源框架,由ASF - Apache Software Foundation创建。它用于存储、处理和分析海量数据。Hadoop是用Java编写的,它不是OLAP(在线分析处理)。它用于批处理/离线处理。它被Facebook、Google、Twitter、Yahoo、LinkedIn等使用。此外,只需在集群中添加节点即可扩展它。

为什么将R与Hadoop集成?

R是一种开源编程语言。它最适合统计和图形分析。此外,如果我们有强大的数据分析和可视化功能的需求,我们必须将R与Hadoop结合起来。

R与Hadoop集成的目的

  1. 使用Hadoop执行R代码。
  2. 使用R访问Hadoop中存储的数据。

R与Hadoop集成方法

Hadoop和R在处理大数据可视化和分析方面非常互补。将Hadoop和R结合使用有四种方法,如下所示

R integration with Hadoop

R Hadoop

R Hadoop方法是包的集合。它包含三个包,即rmr、rhbase和rhdfs。

rmr包

对于Hadoop框架,rmr包通过在R中执行映射和规约代码来提供MapReduce功能。

rhbase包

此包通过与HBASE集成提供R数据库管理功能。

rhdfs包

此包通过与HDFS集成提供文件管理功能。

Hadoop Streaming

Hadoop Streaming是一个实用程序,允许用户使用任何可执行文件作为mapper和/或reducer来创建和运行作业。使用流系统,我们可以开发Hadoop作业,只需掌握编写两个协同工作的shell脚本的Java知识即可。

R和Hadoop的结合对于处理大型数据集和统计数据的人来说,似乎是必备工具包。然而,一些Hadoop爱好者在处理非常大的大数据摘录时提出了警告。他们声称,R的优势不在于其语法,而在于用于可视化和数据的整个基本库。这些库本质上是不可分布的,这使得数据检索成为一个耗时的过程。这是R固有的缺陷,如果你选择忽略它,R和Hadoop可以一起工作。

RHIPE

RHIPE代表R和Hadoop集成编程环境。 Divide and Recombine 开发了 RHIPE,用于对大量数据进行高效分析。

RHIPE涉及使用R和Hadoop集成编程环境。我们可以使用Python、Perl或Java来读取RHIPE中的数据集。RHIPE中有各种函数可以使HDFS与HDFS交互。因此,通过这种方式,我们可以读取、保存使用RHIPE MapReduce创建的完整数据。

ORCH

ORCH被称为Oracle R Connector。此方法用于专门在Oracle设备上处理大数据。它也用于非Oracle框架,如Hadoop。

此方法有助于借助R访问Hadoop集群,并有助于编写映射和规约函数。它允许我们操作驻留在Hadoop分布式文件系统中的数据。


下一主题R包