第7章 比Hadoop更快——使用R编写Spark

在第4章中,我们学习了如何使用Hadoop和MapReduce框架来处理和分析存储在Hadoop分布式文件系统(Hadoop Distributed File System,HDFS)中的大量数据集。我们使用多节点的Hadoop集群和R语言处理包含大量数据的作业,这种计算量在个人计算机上是无法完成的,不管用哪一版本的R都一样。我们还提到过,尽管Hadoop很强大,但是只推荐在数据量大于内存容量的情况下使用,因为它的处理过程真的很慢。在本章中,我们将介绍Apache Spark引擎,这是一种更快的处理和分析大数据的方法。在读完本章后,你将学会如下知识点。

  • 理解Spark的特性和功能。
  • 部署一个配置完全的、可直接使用的、多节点Microsoft Azure HDInsight 集群,包含Hadoop、Spark和Hive。
  • 将数据从HDFS导入Hive表格,并把它们作为Spark引擎处理的数据源。
  • 连接RStudio Server和HDFS资源(包括Hadoop和Spark),使用湾区共享单车开源数据运行简单的和有点复杂的Spark数据转换、聚合和分析。

Spark 通常被认为是新的、快速的、更好的大数据处理工具,很快就能取代Hadoop成为使用最广泛的大数据处理工具。实际上,已经有越来越多的商务公司选择Spark 而非 Hadoop作为它们的日常数据处理工具。毋庸置疑的是,Spark有许多卖点,相对于稍显复杂有时又很笨重的Hadoop,它是一个充满吸引力的替代品。

  • 与标准的Hadoop MapReduce作业相比,运行在内存中的Spark reduce的处理速度要快100倍,即使运行在磁盘中,也要比Hadoop快10倍。 ...

Get R大数据分析实用指南 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.