本文基于 Spark 2.4.1 进行演示,相关代码可以在我的Github上看到。

简介

Spark是一个分布式集群计算系统,类似Hadoop提供了强大的分布式计算能力,相比过去的批量处理系统,提供了处理更大规模数据的能力。Spark提供了Java、Python、Scala、R接口。除常见的MapReduce运算外,还支持图、机器学习、SparkSQL等计算方式。

特性

  • 高效 Speed,因为很多数据都在内存中,相比Hadoop,其处理更为高效。
  • 易用 Usability,Spark提供了80多个高级运算符。
  • 通用 Generality,提供了大量的库,包括SQL、DataFrames、MLib、GraphX、Spark Streaming。
  • 兼容 Runs everywhere,基于jvm能够兼容不同类型的操作系统。

Spark运行模式

  • local : 主要用于开发调试Spark应用程序
  • Standlone : 利用Spark自带的资源管理与调度器运行Spark集群,采用Master/Slave结构,为解决单点故障,可以采用Xookeeper实现高可靠(High Availability, HA)
  • Apache Mesos : 运行在著名的Mesos资源管理框架基础之上,该集群运行模式将资源管理管理交给Mesos,Spark只负责运行任务调度和计算
  • Hadoop YARN : 集群运行在Yarn资源管理器上,资源管理交给YARN,Spark只负责进行任务调度和计算

Mac本地安装

首先从Spark官方网站下载合适的版本,解压到安装目录,本文使用的是 2.4.1。

配置环境变量 ~/.bash_profile

export SPARK_HOME=/Users/shiqiang/Projects/tools/spark-2.4.1-bin-hadoop2.7
export PATH=${PATH}:${SPARK_HOME}/bin

本机的安装目录

~/Project/tools

在Mac系统管理中打开Mac远程登录设置,允许安装用户远程登录。

启动命令

$ ./sbin/start-all.sh
$ jps
21731 Jps
21717 Worker
21515 Master

使用JPS命令可以看到Master和Worker已经启动。也可以单独启动master./sbin/start-master.sh,单独启动Worker

./bin/spark-class org.apache.spark.deploy.worker.Worker spark://localhost:7077

停止服务的方式也非常简单

$ ./sbin/stop-all.sh

最新文章

  1. C# WebForm内置对象2+Repeater的Command
  2. 【iOS开发】多屏尺的自动适配 AutoLayout (纯代码方式)
  3. linux 解压命令大全
  4. jira破解
  5. poj3086---数论
  6. SLF4J - 一个允许你统一日志记录API的抽象层
  7. [USACO14DEC]后卫马克Guard Mark
  8. [Noi2015]小园丁和老司机
  9. 前端js总结
  10. ubuntu16.4系统和Gentos6.8系统查看开机自启动服务
  11. 自制操作系统Antz(3)——进入保护模式 (中) 直接操作显存
  12. Python创建目录
  13. 解题:CF1118F2 Tree Cutting (Hard Version)
  14. extjs4学习-02-导入相关文件
  15. 苹果电脑快速安装双系统 Winclone镜像包 Winclone安装Win7/Win8.1/Win10镜像
  16. (笔记)linux设备驱动--LED驱动
  17. 跨站点脚本编制-XSS 描述及解决方法
  18. c#截取图片
  19. 6.2 Controllers -- Representing Multipe Models
  20. nginx-vod-module && docker && docker-compose 测试

热门文章

  1. 百度API车牌识别——Restful方式
  2. mysql多表关联update
  3. Annotation-specified bean name 'userDaoImpl' for bean class [***] conflicts with existing, non-compatible bean definition of same name and class [***]
  4. 13. 罗马数字转整数(C#)
  5. CSS字体属性
  6. Python继承、多继承、魔术方法
  7. 用curl通过相同IP请求不同域名的URL
  8. 在python的虚拟环境venv中使用gunicorn
  9. 【洛谷P1963】[NOI2009]变换序列(二分图匹配)
  10. else if 使用注意