一、spark到底是什么?

Apache Spark? is a unified analytics engine for large-scale data processing

类似于Hadoop MapReduce 并行计算框架:分析处理海量数据

与MapReduce相比:

MapReduce: map,reduce函数
      将分析的结果写入到磁盘中,并且后续需要处理数据,再次从磁盘里读取,以此往复。
    而spark是将中间结果写入到内存中。

二、spark分析数据过程,3步骤走
    第一步:读取数据(输入)
        将要处理的数据 读取 封装到一个集合RDD(类似一个List)
        val inputRDD = sc.textFile("...")
        
    第二步:数据的处理(分析)
        调用RDD中的函数(高阶函数,类比List中的高阶函数)进行分析
        RDD -> 函数 ->另外RDD  :Transformation函数
        比如:map/filter/filterNot/flatMap/reduceByKey
        
    第三步:数据的输出(输出)
        调用RDD中函数,返回的不是RDD类型
        outoutRDD.#                :Action函数
            #:count/foreach/first/take/saveAsTextFile
    3步组合在一起,就是链式编程
    sc.textFile("...").transformation.action

    三、Runs Everywhere    
    -1 spark处理的数据在哪里
        hdfs/hive/hbase/TSV/CSV/ORC/Parquet/JDBC/redis/mongDB/ES/.....
    -2 spark运行在哪里
        java/scala编程,打包JAR包
        -本地模式
            local mode
        -集群模式
            Yarn cluster、standalone cluster、Mesos cluster

四、总结为什么很多人喜欢有spark的原因
    --- 代码
        很小,很少 ,在业务逻辑上,函数式编程,简洁
    --- 测试
        测试很简单
        由于使用Scala语言编写框架,提供Scala shell 交互式命令行
        在window系统下,直接本地测试,不需要任务插件
    --- 监控
        运行的每一个spark开发程序,都有自己的一个监控页面,端口号:4040
    - --速度快
        比MapReduce快

五、spark安装

首先需要先安装JDK8,安装Scala。安装很简单,只需要配置一下以及步骤就好了。
安装过程:
    (1)上传解压
    (2)修改配置(conf):spark-env.sh
         mv spark-env.sh.template spark-env.sh
         conf/spark-env.sh
            JAVA_HOME=/opt/modules/jdk1.8.0_91
            SCALA_HOME=/opt/modules/scala-2.11.8
            HADOOP_CONF_DIR=/opt/cdh5.7.6/hadoop-2.6.0-cdh5.7.6/etc/hadoop
    (3)启动
        ./spark-shell --help
        ./spark-shell --master local[2]

六、spark application 和MapReduce application区别
    spark-shell --master local[2]
    运行一个spark application在本地
    [2]:表示线程Tread
        每个task运行在Tread中运行的,都需要1 core cpu
        
    对于MapReduce application来说
        一个MapReduce application就是一个mapreduce job
        每个task (map,reduce)运行在进程中(JVM process)

【spark】Spark的介绍、安装以及配置相关介绍相关推荐

  1. 《Cacti实战》——2.2 安装与配置相关组件和服务

    本节书摘来自华章计算机<Cacti实战>一书中的第2章,第2.2节,作者:刘钊,张跃著, 更多章节内容可以访问云栖社区"华章计算机"公众号查看. 2.2 安装与配置相关 ...

  2. Charles手机抓包之下载、安装、配置、介绍

    一.Charles用于简单操作时 1.抓包工具Charles的下载和安装: 下载网址:Download a Free Trial of Charles • Charles Web Debugging ...

  3. 分布式文件存储FastDFS介绍安装部署及相关Java代码编写

    分布式文件存储FastDFS 一.FastDFS简介 1.1 FastDFS体系结构 FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储.文件同步.文件访问(文件上传 ...

  4. Smarty介绍安装及配置

    今天学的传说中smarty模版,为什么使用smarty,smarty的好处是什么: 将一些判断放在了HTML模板文件中,本身用模板的目的就是分开PHP代码和HTML, 这样不仅PHP中有判断,HTML ...

  5. spark的python开发安装方式_windows下安装spark-python

    首先需要安装Java 下载安装并配置Spark 从官方网站Download Apache Spark™下载相应版本的spark,因为spark是基于hadoop的,需要下载对应版本的hadoop才行, ...

  6. Kali Linux常用服务配置教程安装及配置DHCP服务

    Kali Linux常用服务配置教程安装及配置DHCP服务 在Kali Linux中,默认没有安装DHCP服务.下面将介绍安装并配置DHCP服务的方法. 1.安装DHCP服务 在Kali Linux中 ...

  7. 超详细Redis入门教程——Redis 的安装与配置

    前言 本文小新为大家带来 超详细Redis入门教程--Redis 的安装与配置 相关知识,具体内容包括Redis 的安装,连接前的配置,Redis 客户端分类(包括:命令行客户端,图形界面客户端,Ja ...

  8. Torque 4.0 下载、安装、配置、提交作业、列队id归零

    PBS是功能最为齐全,历史最悠久,支持最广泛的本地集群调度器之一. PBS的目前包括openPBS,PBS Pro和Torque三个主要分支. 其中OpenPBS是最早的PBS系统,目前已经没有太多后 ...

  9. 虚拟服务器数据库安装与配置,虚拟服务器数据库安装与配置

    虚拟服务器数据库安装与配置 内容精选 换一换 WordPress是使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上搭建属于自己的网站,本文教您通过华为云虚拟私有云.弹性云 ...

最新文章

  1. compser可以检查php扩展吗,composer扩展
  2. freebsd mysql 安装_Freebsd中mysql安装及使用笔记-阿里云开发者社区
  3. 每日一皮:地铁上打瞌睡的程序员...
  4. Android 的Parcelable接口
  5. Android 学习视频
  6. 102 二叉树层序遍历
  7. HIVE的安装配置、mysql的安装、hive创建表、创建分区、修改表等内容、hive beeline使用、HIVE的四种数据导入方式、使用Java代码执行hive的sql命令
  8. RDIFramework.NET ━ .NET快速信息化系统开发框架 V3.0 版本强势发布
  9. 代码流程图生成器_【进阶Python】第五讲:迭代器与生成器
  10. MAC使用homeBrew安装Redis
  11. (37)FPGA花样流水灯设计(第8天)
  12. java加载publickey,比较java中的PublicKey对象
  13. MAC 安装oracle instantclient
  14. python搬家具_python3 摆放家具练习
  15. html onload 写法,HTML onload用法及代码示例
  16. 白鹭引擎egert+PHP后端手游宠物小精灵题材源码
  17. golang中的iota
  18. 用示波器调出李萨如图形
  19. webrtcvad 安装失败
  20. Fortify常见漏洞解决方案

热门文章

  1. Oracle环境变量
  2. 微机计算机硬件技术实用教程知识点,微机接口技术实用教程1.ppt
  3. Spring Boot学习总结(17)——Spring Boot常见面试题再总结
  4. 消息中间件学习总结(11)——Kafka与RocketMQ的Topic数量对单机性能的影响比较分析
  5. App后台开发运维和架构实践学习总结(6)——App客户端与后台交互方式总结
  6. 湖南单招计算机专业大学排名,2021湖南单招学校排名及分数线:湖南单招分数线高吗?...
  7. 线性插值改变图像尺寸_【图像分割模型】实例分割模型—DeepMask
  8. java性能瓶颈分析_Java性能优化技巧整理,做一个深度的程序员
  9. 禁用计算机服务LanmanServer,[如何]在Windows 10中启用或禁用SMB协议 | MOS86
  10. android php实时聊天工具,Android_Android 应用APP加入聊天功能,简介 自去年 LeanCloud 发布实时 - phpStudy...