这里只使用Spark的Python操作和接口,其他语言应为不熟悉,所以先不写在这里。

Spark 部署

可以直接从官方网站下载 pre-build 版本,可以直接在电脑上运行,离线安装也是可以的,比如说针对Python 2.7link

解压:

tar zxvf spark-2.1.0-bin-hadoop2.7.tgz

解压之后,其目录为如下:

$ ls
LICENSE README.md conf jars sbin
NOTICE RELEASE data licenses yarn
R bin examples python

其中的几个目录可以先认识一下:

  • bin : 这个目录中包含用来和Spark交互的可执行文件
  • README.md : 是一个Spark 的说明文件。
  • examples : 包含一些可以查看和运行的例子程序,对学习Spark的API很有帮助。

Spark 的 Python Shell

在Spark的目录下,执行:

./bin/pyspark

即可载入Python Shell,成功之后的界面如下:

到这就代表Spark完成了部署,可以使用 Control + D 退出 SparkShell。

第一段小程序

在解释器中执行下面的一段程序试试:

>>> lines = sc.textFile("README.md")
>>> pythonLines = lines.filter(lambda line: "Python" in line)

上面两行代码分别为:

  1. 通过 SparkContext 对象 sc ,从README.md文件创建一个 文本文件类型的 RDD
  2. 从名为 lines 的RDD中 筛选出 包含字符串"Python"的行,组成新的RDD。

下面解释 RDDSparkContext 这两个名词:

  • SparkContext : 从上层来看,每个Spark应用都有一个驱动程序来发起集群上的各种并行操作。驱动程序包含应用的main函数,并且定义了集群上的分布式数据集,还对这些分布式数据集应用了相关操作。在这个例子中,实际的驱动程序就是SparkShell本身,你只需要输入想要运行的操作就可以了。shell启动的时候已经自动创建了一个SparkContext对象,名字为sc
  • RDD : 在Spark中,我们通过对分布式数据集的操作来表达我们的计算意图,这样的数据集被称为弹性分布式数据集(Resilient Distributed Dataset),简称RDD。

然后可以用执行 .first().count() 两个方法来查看:

[Spark] Hello Spark的更多相关文章

  1. Spark Shell & Spark submit

    Spark 的 shell 是一个强大的交互式数据分析工具. 1. 搭建Spark 2. 两个目录下面有可执行文件: bin  包含spark-shell 和 spark-submit sbin 包含 ...

  2. 【转】科普Spark,Spark是什么,如何使用Spark

    本博文是转自如下链接,为了方便自己查阅学习和他人交流.感谢原博主的提供! http://www.aboutyun.com/thread-6849-1-1.html http://www.aboutyu ...

  3. Spark:使用Spark Shell的两个示例

    Spark:使用Spark Shell的两个示例 Python 行数统计 ** 注意: **使用的是Hadoop的HDFS作为持久层,需要先配置Hadoop 命令行代码 # pyspark >& ...

  4. 大数据技术之_19_Spark学习_01_Spark 基础解析 + Spark 概述 + Spark 集群安装 + 执行 Spark 程序

    第1章 Spark 概述1.1 什么是 Spark1.2 Spark 特点1.3 Spark 的用户和用途第2章 Spark 集群安装2.1 集群角色2.2 机器准备2.3 下载 Spark 安装包2 ...

  5. [Spark][Python]spark 从 avro 文件获取 Dataframe 的例子

    [Spark][Python]spark 从 avro 文件获取 Dataframe 的例子 从如下地址获取文件: https://github.com/databricks/spark-avro/r ...

  6. [Spark][Python]Spark 访问 mysql , 生成 dataframe 的例子:

    [Spark][Python]Spark 访问 mysql , 生成 dataframe 的例子: mydf001=sqlContext.read.format("jdbc").o ...

  7. Spark记录-Spark性能优化解决方案

    Spark性能优化的10大问题及其解决方案 问题1:reduce task数目不合适解决方式:需根据实际情况调节默认配置,调整方式是修改参数spark.default.parallelism.通常,r ...

  8. Spark记录-spark编程介绍

    Spark核心编程 Spark 核心是整个项目的基础.它提供了分布式任务调度,调度和基本的 I/O 功能.Spark 使用一种称为RDD(弹性分布式数据集)一个专门的基础数据结构,是整个机器分区数据的 ...

  9. Spark记录-spark介绍

    Apache Spark是一个集群计算设计的快速计算.它是建立在Hadoop MapReduce之上,它扩展了 MapReduce 模式,有效地使用更多类型的计算,其中包括交互式查询和流处理.这是一个 ...

  10. Spark 以及 spark streaming 核心原理及实践

    收录待用,修改转载已取得腾讯云授权 作者 | 蒋专 蒋专,现CDG事业群社交与效果广告部微信广告中心业务逻辑组员工,负责广告系统后台开发,2012年上海同济大学软件学院本科毕业,曾在百度凤巢工作三年, ...

随机推荐

  1. supervisorctl error: <class 'socket.error'>

    http://stackoverflow.com/questions/18859063/supervisor-socket-error-issue supervisorctl reread error ...

  2. 暗黑战神客户端(IOS和Android)打包教程

    先说下遇到的严重问题: 1.暗黑战神的资源管理有2套流程,一套开发使用(Resources.Load),一套正式上线使用(AssetBundles, 流畅),而走AssetBundles流程的代码则有 ...

  3. C#多线程环境下调用 HttpWebRequest 并发连接限制

    C#多线程环境下调用 HttpWebRequest 并发连接限制 .net 的 HttpWebRequest 或者 WebClient 在多线程情况下存在并发连接限制,这个限制在桌面操作系统如 win ...

  4. 使用JMeter进行简单的压力测试

    一.压力测试 顾名思义:压力测试,就是  被测试的系统,在一定的访问压力下,看程序运行是否稳定/服务器运行是否稳定(资源占用情况). 比如: 2000个用户同时到一个购物网站购物,这些用户打开页面的速 ...

  5. Spring原理解析-利用反射和注解模拟IoC的自动装配

  6. MyBatis操作指南-配置使用Provider动态生成SQL

  7. zookeeper清除事物日志

    dataDir=/data/zookeeper/data dataLogDir=/data/zookeeper/log       zk事物日志(快照)存放目录,高负荷工作的时候,会产生大量的日志,需 ...

  8. 常用的WinAPI函数整理

    常用的WinAPI函数整理 一.进程  创建进程:    CreateProcess("C:\\windows\\notepad.exe",0,0,0,0,0,0,0,&s ...

  9. c 头文件<ctype.h>(一)

    头文件<ctype.h>中声明了一些测试字符的函数. 每个函数的参数均为int类型,参数的值必须是EOF或可用unsigned char类型表示的字符,函数返回值为int类型. 如果参数c ...

  10. XPath、XQuery 以及 XSLT 函数

    存取函数 名称 说明 fn:node-name(node) 返回参数节点的节点名称. fn:nilled(node) 返回是否拒绝参数节点的布尔值. fn:data(item.item,...) 接受 ...