*以下内容由《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自动化测试(11)-location与size获取元素坐标

    appium做app自动化测试过程中,有时需要获取控件元素的坐标进行滑动操作.appium中提供了location方法获取控件元素左上角的坐标,再通过size方法获取控件元素的宽高,就可以得到控件元素 ...

  2. Vue 全宇宙最浪 VSCode 配置、插件

    别人的那一堆配置.插件我就不写了- 首先进入官网下载并安装. 基本配置 在编译器 文件 >> 首选项 >> 设置,可以拷贝相面的选项后搜索相关配置 设置制表符等于空格数为 2: ...

  3. spring boot:解决cors跨域问题的两种方法(spring boot 2.3.2)

    一,什么是CORS? 1,CORS(跨域资源共享)(CORS,Cross-origin resource sharing), 它是一个 W3C 标准中浏览器技术的规范, 它允许浏览器向非同一个域的服务 ...

  4. nginx优化:配置gzip压缩页面提高访问速度(nginx1.18.0)

    一,为什么nginx要使用gzip 1,压缩的作用: 页面使用gzip压缩之后, 页面大小可以压缩到原来的1/7左右, 传输速度和页面打开时间都可以大幅度提高, 有利于用户访问页面体验的提升 2,Ng ...

  5. scrapy Request方法

    # -*- coding: utf-8 -*- import scrapy class TestSpider(scrapy.Spider): name = 'test' allowed_domains ...

  6. Pytest学习(三) - setup和teardown的使用

    一.前言 从文章标题可以看出,就是初始化和释放的操作,根据我的java习惯来学习pytest,个人感觉没差太多,理解上也不是很难. 哦,对了,差点跑题了,这个框架是基于Python语言的,在学习的时候 ...

  7. Fur 是 .NET 5 平台下企业应用开发最佳实践框架。

    Fur 是 .NET 5 平台下企业应用开发最佳实践框架. 立即尝鲜 Fur 是基于最新的 .NET 5 RC2 构建,目的是为了尽早体验新功能,对即将到来的 .NET 5 正式版做出最快的响应. 所 ...

  8. uvalive6468,51cthink1419 Strange Antennas (离散化)

    题意: 在一个 n x n 的平面上,给定 m 个等腰直角三角形(各点均为整数),问该平面上被三角形覆盖奇数次的点有多少个. 思路: 由于 n 较大,不能模拟解决,故使用离散化思想. 考虑每一行有多少 ...

  9. Vue3实战系列:Vue3.0 + Vant3.0 搭建种子项目

    最近在用 Vue3 写一个开源的商城项目,开源后让大家也可以用现成的 Vue3 大型商城项目源码来练练手,目前处于开发阶段,过程中用到了 Vant3.0,于是就整理了这篇文章来讲一下如何使用 Vue3 ...

  10. service下载任务

    在service开启线程,利用接口更新进度 public class MainActivity extends AppCompatActivity { MyBindService msgService ...