spark编程指南pdf中文版完整免费版|百度网盘下载

时间: 2022-05-06 22:30:56  146 Spark Spark Mesos

编者注:spark编程指南pdf中文版

Spark 是一个类似于 Hadoop MapReduce 的通用并行框架,由 UC Berkeley AMP 实验室(加州大学伯克利分校的 AMP 实验室)开源。从高层的角度来看,每个 Spark 应用程序都包含一个驱动程序,用于执行用户主函数并在集群上运行各种并行操作

相关内容部分预览

书籍介绍

Spark是加州大学伯克利分校AMP实验室(AMP Lab of California, Berkeley)开源的类似Hadoop MapReduce的通用并行框架,Spark具有Hadoop MapReduce的优点;但与 MapReduce 不同的是 Job 的中间输出结果可以存储在内存中,

因此,不再需要读写HDFS,因此Spark可以更好地应用于需要迭代的MapReduce算法,例如数据挖掘和机器学习。

Spark 是一个类似于 Hadoop 的开源集群计算环境,但两者之间存在一些差异,这使得 Spark 在某些工作负载上表现出色,换句话说,Spark 支持内存中的分布式数据集,除了能够提供交互式查询,还可以针对迭代工作负载进行优化。

Spark 是用 Scala 语言实现的,它使用 Scala 作为其应用程序框架。与 Hadoop 不同,Spark 和 Scala 紧密集成,Scala 可以像操作原生集合对象一样轻松地操作分布式数据集。

虽然创建 Spark 是为了支持分布式数据集上的迭代作业,但它实际上是对 Hadoop 的补充,可以在 Hadoop 文件系统上并行运行。通过名为 Mesos 的第三方集群框架支持此行为。

Spark 由 UC Berkeley 的 AMP 实验室(算法、机器和人员实验室)开发,用于构建大规模、低延迟的数据分析应用程序。

如何连接到 Spark

Spark 1.3.0 仅支持 Python 2.6 或更高版本(但不支持 Python 3)。它使用标准的 CPython 解释器,因此也可以使用 NumPy 等 C 库。

您可以通过 Spark 目录中的 bin/spark-submit 脚本在 Python 中运行 Spark 应用程序。此脚本加载 Spark 的 Java/Scala 库,并允许您将应用程序提交到集群。你可以执行 bin/pyspark 来打开 Python 的交互式命令行。

如果您希望访问 HDFS 上的数据,则需要为您正在使用的 HDFS 版本建立 PySpark 连接。此第三方分发页面上列出了常见的 HDFS 版本标签。

最后,您需要将一些 Spark 类导入您的程序。添加以下行:

从 pyspark 导入 SparkContext,SparkConf

什么是火花

一般来说,每个 Spark 应用程序。两者都包含一个驱动程序。它执行用户的主要功能,在集群上执行各种并行操作。

Spark 提出的主要抽象是弹性分布式数据集 (RDD)。它是元素的集合,在集群的节点之间划分,可以并行操作。

RDD 可以从 HDFS(或任何其他支持 Hadoop 的文件系统)上的文件创建,也可以通过在驱动程序中转换现有的 Scala 集合来创建。

用户还可以指示 Spark 将 RDD 保留在内存中,以便在并行操作中有效地重用它。最后,RDD 可以主动从节点故障中恢复。 Spark的第二个抽象是共享变量,

可用于并行操作。默认情况下,Spark 通过不同节点上的一系列任务执行一个函数,将每个函数中使用的变量的副本传递给每个任务。有时,任务之间需要有一个变量,

或在任务和驱动程序之间共享。 Spark支持两种共享变量:广播变量,可以在内存中的所有节点缓存变量;累加器:只能用于加法的变量。比如数数或求和。

本指南将以 Spark 支持的每种语言演示这些功能。假设您启动 Spark 的交互式 shell 或 Scala 的 bin/spark-shell 或 Python 的 bin/pyspark,这一切都非常容易理解。

如何初始化 Spark

Scala Spark 程序需要做的第一件事是创建一个 SparkContext 对象。它将告诉 Spark 如何询问集群。要创建 SparkContext,您首先需要创建一个 SparkConf 对象,

此对象包含有关您的程序的信息。每个 JVM 只能有一个活动的 SparkContext。在创建新的 SparkContext 之前,您必须 stop() 活动的 SparkContext。

val conf = newSparkConf().setAppName(appName).setMaster(master) new SparkContext(conf) appName 是您的应用程序的名称。将显示在集群的 Web 监控 UI 中。

master...

在实践中,在集群上执行时,您不想将 master 硬编码到程序中,而是启动 spark-submit 来接收它。然而。用于本地和单元测试。你可以通过“本地”

Mode 执行 Spark。 Java Spark 程序需要做的第一件事是创建一个 JavaSparkContext 对象,它会告诉 Spark 如何询问集群。

要创建 SparkContext,您首先需要创建一个 SparkConf 对象,其中包含有关您的程序的信息。 SparkConf conf = new SparkConf().setAppName(appName).setMaster(master);

JavaSparkContext sc = newJavaSparkContext(conf); appName 是您的应用程序的名称。将显示在集群的 Web 监控 UI 中。 master�⑹�,是一个字符串,指定连接的 Spark、Mesos 或 Mesos 集群的 URL,

也可以是一个特殊的字符串“local”,用于在本地模式下执行,如下所述。在实践中,在集群上执行时,您不想将 master 硬编码到程序中,而是启动 spark-submit 来接收它。

但是。用于本地和单元测试。您可以在“本地”模式下执行 Spark。 Python Spark 程序需要做的第一件事是创建一个 JavaSparkContext 对象。它将告诉 Spark 如何询问集群。

要创建 SparkContext,您首先需要创建一个 SparkConf 对象,其中包含有关您的程序的信息。 conf =SparkConf().setAppName(appName).setMaster(master) sc = SparkContext(conf=conf) appName 是你应用的名字,

将显示在集群的 Web 监控 UI 中。 master�⑹�,是一个字符串,指定连接的 Spark、Mesos 或 Mesos 集群的 URL,或者是一个特殊的字符串“local”,如下所述,用于在本地模式下执行。

在实践中。在集群上执行时,您不想将 master 硬编码到程序中,而是启动 spark-submit 来接收它。但是,对于本地和单元测试。您可以在“本地”模式下执行 Spark。

  • 声明:本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,以上内容仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站内容来自网络收集整理或网友投稿,所提供的下载链接也是站外链接,版权争议与本站无关。您必须在下载后的24个小时之内,从您的设备中彻底删除上述内容。如果您喜欢该程序和内容,请支持正版!我们非常重视版权问题,如有侵权请邮件与我们联系处理。敬请谅解!邮箱:121671486@qq.com,微信:diqiuren010101

学习考试资源网-58edu © All Rights Reserved.  湘ICP备12013312号-3 
站点地图| 免责说明| 合作请联系| 友情链接:学习乐园