zoukankan      html  css  js  c++  java
  • Spark Tachyon实战应用(配置启动环境、运行spark和运行mapreduce)

    Tachyon实战应用

    • 配置及启动环境

      • 修改spark-env.sh

      • 启动HDFS

      • 启动Tachyon

    • Tachyon上运行Spark

      • 添加core-site.xml

      • 启动Spark集群

      • 读取文件并保存

    • Tachyon运行MapReduce

      • 修改core-site.xml

      • 启动YARN

      • 运行MapReduce例子

    1  配置及启动环境

      1.1.1 修改spark-env.sh

      修改$SPARK_HOME/conf目录下spark-env.sh文件:

    $cd /app/hadoop/spark-1.1.0/conf
    $vi spark-env.sh

      在该配置文件中添加如下内容:

    export SPARK_CLASSPATH=/app/hadoop/tachyon-0.5.0/client/target/tachyon-client-0.5.0-jar-with-dependencies.jar:$SPARK_CLASSPATH

            

     

     

     

      1.1.2 启动HDFS

    $cd /app/hadoop/hadoop-2.2.0/sbin
    $./start-dfs.sh

      1.1.3 启动Tachyon

      在这里使用SudoMout参数,需要在启动过程中输入hadoop的密码,具体过程如下:

    $cd /app/hadoop/tachyon-0.5.0/bin
    $./tachyon-start.sh all SudoMount

     

     

     

     

     

     

    1.2 Tachyon上运行Spark

      1.2.1 添加core-site.xml

      在Tachyon的官方文档说Hadoop1.X集群需要添加该配置文件(参见http://tachyon-project.org/documentation/Running-Spark-on-Tachyon.html),实际在Hadoop2.2.0集群测试的过程中发现也需要添加如下配置文件,否则无法识别以tachyon://开头的文件系统,具体操作是在$SPARK_HOME/conf目录下创建core-site.xml文件

    $cd /app/hadoop/spark-1.1.0/conf
    $touch core-site.xml
    $vi core-site.xml

      在该配置文件中添加如下内容:

    <configuration>
      <property>
        <name>fs.tachyon.impl</name>
        <value>tachyon.hadoop.TFS</value>
      </property>
    </configuration>

              

     

     

      1.2.2 启动Spark集群

    $cd /app/hadoop/spark-1.1.0/sbin
    $./start-all.sh

      1.2.3 读取文件并保存

      第一步   准备测试数据文件

      使用Tachyon命令行准备测试数据文件

    $cd /app/hadoop/tachyon-0.5.0/bin
    $./tachyon tfs copyFromLocal ../conf/tachyon-env.sh /tachyon-env.sh
    $./tachyon tfs ls /

              

     

      第二步   启动Spark-Shell

    $cd /app/hadoop/spark-1.1.0/bin
    $./spark-shell

      第三步   对测试数据文件进行计数并另存

    对前面放入到Tachyon文件系统的文件进行计数

    scala>val s = sc.textFile("tachyon://hadoop1:19998/tachyon-env.sh")
    scala>s.count()

            

            

     

      把前面的测试文件另存为tachyon-env-bak.sh文件

    scala>s.saveAsTextFile("tachyon://hadoop1:19998/tachyon-env-bak.sh")

            

              

      第四步   在Tachyon的UI界面查看

      可以查看到该文件在Tachyon文件系统中保存成tahyon-env-bak.sh文件夹

            

       该文件夹中包含两个文件,分别为part-00000和part-00001:

             

     

     

      其中tahyon-env-bak.sh/part-0001文件中内容如下:

          

       另外通过内存存在文件的监控页面可以观测到,这几个操作文件在内存中:

          

     

     

     

     

    1.3 Tachyon运行MapReduce

      1.3.1 修改core-site.xml

      该配置文件为$Hadoop_HOME/conf目录下的core-site.xml文件

    $cd /app/hadoop/hadoop-2.2.0/etc/hadoop
    $vi core-site.xml

      修改core-site.xml文件配置,添加如下配置项:

    <property>
      <name>fs.tachyon.impl</name>
      <value>tachyon.hadoop.TFS</value>
    </property>
    <property>
      <name>fs.tachyon-ft.impl</name>
      <value>tachyon.hadoop.TFSFT</value>
    </property>

            

     

     

     

      1.3.2 启动YARN

    $cd /app/hadoop/hadoop-2.2.0/sbin
    $./start-yarn.sh

      1.3.3 运行MapReduce例子

      第一步   创建结果保存目录

    $cd /app/hadoop/hadoop-2.2.0/bin
    $./hadoop fs -mkdir /class10

     

      第二步   运行MapReduce例子

    $cd /app/hadoop/hadoop-2.2.0/bin
    $./hadoop jar ../share/hadoop/mapreduce/hadoop-mapreduce-examples-2.2.0.jar wordcount -libjars $TACHYON_HOME/client/target/tachyon-client-0.5.0-jar-with-dependencies.jar  tachyon://hadoop1:19998/tachyon-env.sh hdfs://hadoop1:9000/class10/output

            

             

     

     

      第三步   查看结果

      查看HDFS,可以看到在/class10中创建了output目录

            

     

       查看part-r-0000文件内容,为tachyon-env.sh单词计数

            

  • 相关阅读:
    今天是元旦啊
    [待解决]python 函数加括号和不加括号的区别
    Jupyter Notebook的快捷键列表误操作发现的新大陆
    Series选择和过滤
    做鸢尾花切片练习中的'&'问题:(&,|)和(and,or)
    报错合集
    关于随机数种子seed的问题尽量使用numpy下的seed
    pandas创建Series序列/hashable
    在jupyter notebook中插入截图
    xml反序列化时,如何生成与之对应的类文件
  • 原文地址:https://www.cnblogs.com/zlslch/p/6786386.html
Copyright © 2011-2022 走看看