*以下内容由《Spark快速大数据分析》整理所得。

读书笔记的第一部分是记录如何安装Spark?同时,简单介绍下Spark。

一、Spark安装

二、Spark介绍


一、Spark安装

如果是在个人电脑上学习Spark,建议先建个虚拟机,教程可参考1. 安装虚拟机,Hadoop和Hive

在下载Spark之前得确认之前安装的Hadoop版本是什么?

# 查看hadoop版本(这里我是2.7.7)hadoop version

然后,去官网下载兼容现有hadoop版本的spark并解压安装包:

cd~
tar -xf spark-3.0.0-bin-hadoop2.7.tgz
cd spark-3.0.0-bin-hadoop2.7
ls

现在,安装好了就可以试运行下Python或Scala版本的Spark shell了:

# 打开Python版本的Spark shell
cd spark-3.0.0-bin-hadoop2.7
bin/pyspark # 打开Scala版本的Spark setshell
bin/spark-shell


二、Spark介绍

“Spark是一个用来实现快速而通用的集群计算的平台。”,它一个主要特点是能够在内存中进行计算,因而更快。

1. Spark的核心组件有两个:驱动器程序(driver program)执行器(executor)

  • 驱动器程序:shell启动时已自动创建一个SparkContext对象(也称sc变量)去访问Spark。有了SparkContext,就可以用它创建RDD(弹性分布式数据集resilient distributed dataset,不能看作是存放着特定数据的数据集,而是看作如何计算数据的指令列表)。
  • 执行器:驱动器程序一般要管理多个执行器节点,不同节点会执行不同的工作,在集群上实现并行数据分析。
例如Python的行数统计
$bin/pyspark
>>>lines = sc.textFile("README.md") # 使用sc创建一个名为lines的RDD
>>>lines.count() # 执行器统计RDD中元素的个数
108

2. 运行Python脚本:使用Spark自带的bin/spark-submit脚本帮我们引入Python程序的Spark依赖(相当于为Spark的PythonAPI配置好的运行环境)

bin/spark-submit my_python_script.py

3. 在python中初始化Spark:

from pyspark import SparkConf, SparkContext

# 创建一个SparkConf对象来配置你的应用
conf = SparkConf().setMaster("local").setAppName("My App")

# 基于这个SparkConf创建一个SparkContext对象
sc = SparkContext(conf = conf)

1. Spark的安装及介绍的更多相关文章

  1. Spark安装与介绍

    1. Scala的安装 注意点:版本匹配的问题, Spark 1.6.2 -- Scala2.10 Spark 2.0.0 -- Scala2.11 https://www.scala-lang.or ...

  2. Cloudera Manager (centos)安装详细介绍

    文章全部来自:Cloudera Manager (centos)安装详细介绍http://www.aboutyun.com/thread-9190-1-1.html(出处: about云开发) 这里已 ...

  3. mac下Spark的安装与使用

    每次接触一个新的知识之前我都抱有恐惧之心,因为总认为自己没有接触到的知识都很高大上,比如上篇介绍到的Hadoop的安装与使用与本篇要介绍的Spark,其实在自己真正琢磨以后才发现本以为高大上的知识其实 ...

  4. neo4j 图数据库安装及介绍

    neo4j 图数据库安装及介绍 一.neo4j图数据库介绍 图数据库,顾名思义就是利用了"图的数据结构来作为数据存储逻辑体现的一种数据库",所以要想学好图数据库当然需要了解一些关于 ...

  5. Sikuli图形脚本测试工具安装及介绍(适合小白的测试神器)

    sikuli简单安装以及介绍附图: 一.简单介绍 SikuliX官方网站:https://launchpad.net/sikuli/(官方的最新版本是SikuliX1.1.0更新于2015-10-06 ...

  6. Spark standlone安装与配置

    spark的安装简单,去官网下载与集群hadoop版本相一致的文件即可. 解压后,主要需要修改spark-evn.sh文件. 以spark standlone为例,配置dn1,nn2为master,使 ...

  7. python Scrapy安装和介绍

    python Scrapy安装和介绍 Windows7下安装1.执行easy_install Scrapy Centos6.5下安装 1.库文件安装yum install libxslt-devel ...

  8. Spark standalone安装(最小化集群部署)

    Spark standalone安装-最小化集群部署(Spark官方建议使用Standalone模式)        集群规划:    主机        IP                    ...

  9. Visual Studio 2017正式版离线安装及介绍

    Visual Studio 2017 RTM正式版离线安装及介绍. 首先至官网下载:https://www.visualstudio.com/zh-hans/downloads/ VS 2017 正式 ...

随机推荐

  1. Python+Appium自动化测试(6)-元素等待方法与重新封装元素定位方法

    在appium自动化测试脚本运行的过程中,因为网络不稳定.测试机或模拟器卡顿等原因,有时候会出现页面元素加载超时元素定位失败的情况,但实际这又不是bug,只是元素加载较慢,这个时候我们就会使用元素等待 ...

  2. C#数据结构-链栈

    上一篇我们通过数组结构实现了栈结构(准确的说是栈的顺序存储结构),现在我们通过链(单链)存储栈,也就是链栈. 通常对于正向单链表来说,是从头节点开始,在链的尾部附加节点,前一个节点的指针指向附加节点: ...

  3. pytest文档50-命令行参数--durations统计用例运行时间

    前言 写完一个项目的自动化用例之后,发现有些用例运行较慢,影响整体的用例运行速度,于是领导说找出运行慢的那几个用例优化下. --durations 参数可以统计出每个用例运行的时间,对用例的时间做个排 ...

  4. 初识 MongoDB 和 .NET Core 入门

    昨天搭建完毕 MongoDB 集群 后,开始计划了解 MongoDB ,并引入使用场景,这里介绍一下学习过程中的一些笔记,帮助读者快速了解 MongoDB 并使用 C# 对其进行编码. 浅入 Mong ...

  5. matplotlib 饼状图

    import matplotlib.pyplot as plt import matplotlib as mpl # 支持中文 plt.rcParams['font.sans-serif'] = [' ...

  6. Curl可以模拟浏览器

    curl直接访问被拒绝 [22:10:00 root@C7 ~]#curl -I www.163.com HTTP/1.1 403 Forbidden Date: Wed, 24 Jun 2020 0 ...

  7. zabbix自定义脚本监控服务器端口状态

    zabbix可以通过客户端的[net.tcp.port[<ip>,port]]该item监控项来判断本地/远程服务器TCP端口是否正常,不过当时没有想起来,就用了自定义脚本去写的,很久没有 ...

  8. 闭包 - Js函数笔记

    闭包 当函数被保存到外部时,将会生成闭包 闭包会导致原有作用域链不释放,造成内存泄漏 类似的代码就叫闭包 闭包的运行作用域 代码 a被执行,b被定义并保存出来 a结束,b被执行时,a的执行期上下文指向 ...

  9. 常用手册或官网的url

    1.mysql--> https://www.mysql.com/ 2.菜鸟教程--> http://www.runoob.com 3.maven官网--> https://mave ...

  10. JVM内存管理和垃圾回收

    无论对于Java程序员还是大数据研发人员,JVM是必须掌握的技能之一.既是面试中经常问的问题,也是在实际业务中对程序进行调优.排查类似于内存溢出.栈溢出.内存泄漏等问题的关键.笔者将按下图分多篇文章详 ...