zoukankan      html  css  js  c++  java
  • 01、Spark安装与配置

    01、Spark安装与配置

    1、hadoop回顾

    Hadoop是分布式计算引擎,含有四大模块,common、hdfs、mapreduce和yarn。

    2、并发和并行

    并发通常指针对单个节点的应对多个请求的能力,是单一节点上计算能力的衡量,并行通常针对集群来讲,是利用多个节点进行分布式协同作业,我们称之为并行计算。

    3、Spark

    快如闪电集群计算引擎,应用于大规模数据处理快速通用引擎,使用内存计算。

    • Speed
      内存计算速度是hadoop的100倍以上,硬盘计算是Hadoop是10倍以上,Spark使用高级DAG(Direct acycle graph)执行引擎。
    • 易于使用
      提供了80+高级算子,能够轻松构建并行应用,也可以使用scala,python,r的shell进行交互式操作。
    • 通用性
      对SQL、流计算、复杂分析可进行组合应用。spark提供了类库栈,包括SQL、MLlib、graphx和Spark streaming。
    • 架构
      Spark core
      spark SQL
      spark streaming
      spark mllib
      spark graphx
    • 到处运行
      spark可以运行在hadoop、mesos、standalone和clound上,同时可以访问多种数据源,如hdfs、hbase、hive、Cassandra、 S3等。

    4、spark集群部署模式

    • local

      不需要启动任何Spark进程,使用一个JVM运行Spark所有组件,主要用于调试和测试。

    • standalone

      独立模式,需要安装Spark集群,分别启动master节点和worker节点,master是管理节点,worker是task的执行节点。

    • mesos

      略。

    • yarn

      不需要单独部署Spark集群,可以说根本没有Spark集群的概念。该模式下,使用的完全是Hadoop的Job执行流程,只是到末端启动任务时使用Spark的Task执行发生,相当于Spark是一个Hadoop的Job,将Spark的所有jar包打入job运行的依赖包中,流程按照hadoop的执行流程来进行。

    5、安装spark

    1. 下载spark-2.1.0-bin-hadoop2.7.tgz

      以下是Spark的官方下载地址:

      https://www.apache.org/dyn/closer.lua/spark/spark-2.3.0/spark-2.3.0-bin-hadoop2.7.tgz
      
    2. 解压文件到/soft目录下

      $>tar -xzvf spark-2.3.0-bin-hadoop2.7.tgz -C /soft
      
    3. 创建软连接

      创建软连接后,编译各种文件配置以及后期进行版本升级和替换非常方便。

      $>cd /soft
      $>ln -s spark-2.3.0-bin-hadoop2.7 spark
      
    4. 配置环境变量

      编辑/etc/profile环境变量文件:

      $>sudo nano /etc/profile
      

      在文件末尾添加如下内容:

      ...
      SPARK_HOME=/soft/spark
      PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin
      

      注意:将Spark的bin目录和sbin目录都添加到环境变量path中,而且Linux使用“:”作为分隔符。

    5. 环境变量生效

      $>source /etc/profile
      
    6. 进入Spark-shell命令行

      $>/soft/spark/spark-shell
      
      #进入scala命令提示符
      $scala>
      
    7. 体验Spark-shell

      因为Spark使用的scala语言,因此同Scala的使用完全一致。

      $scala>1 + 1
      
      #输出结果
      2
      
  • 相关阅读:
    nginx
    git命令
    mysql的优化
    nginx下的负载均衡
    IO模式和IO多路复用
    回顾java基础—Java数据类型
    解决jdk1.8上编译dubbo失败
    KB,Kb单位换算,网络带宽中的Kbps和KB/s到底是什么意思? (注:B和b的区别)
    生成器函数_yield_yield from_send
    推导式_集合
  • 原文地址:https://www.cnblogs.com/xupccc/p/9543958.html
Copyright © 2011-2022 走看看