分享

Shark Hive Spark Hadoop2 环境搭建

本帖最后由 xioaxu790 于 2014-7-14 14:27 编辑
问题导读
1、如何配置Scala?

2、如何配置Shark Hive Spark  Hadoop2 单机运行环境?



前言
本文主要介绍Shark Hive Spark  Hadoop2 单机运行环境的搭建。先简单对各个系统进行简单的介绍。

      Hadoop2是一个分布式的存储和计算的生态系统。本文主要使用它的分布式存储。
      Hive是Hadoop生态系统的一部分,用户编写类sql(HQL)语句之后再由hive进行转化成不同的map-reduce任务提交给hadoop来执行。
      Spark是一个分布式的内存计算系统,这里主要充当分布式计算部分,比Hadoop中的map-reduce速度更快。
      Shark是一个兼容hive的功能,速度比hive快的多,并在Spark之上运行的系统。它把HQL转化成很多个小任务在spark上执行。

准备
各个系统的版本:
Spark 0.8.1
Shark 0.8.1
Hive   0.9.0
Hadoop2-CDH4.3
Scala-0.9.3  

名称        下载地址
Spark 0.8.1        
下载地址

Shark 0.8.1        
下载地址


Hive 0.9.0        
下载地址

Hadoop2-CDH4.3        
下载地址

Scala 0.9.3        
下载地址


配置
    Scala: 下载之后配置到环境变量中,此处略   

       hadoop2:                  
  1. #core-site.xml
  2. <configuration>
  3. <property>
  4. <name>fs.defaultFS</name>
  5. <value>hdfs://localhost:8020</value>
  6. </property>
  7. <property>
  8. <name>dfs.replication</name>
  9. <value>1</value>
  10. </property>
  11. <property>
  12.     <name>hadoop.tmp.dir</name>
  13.     <value>/usr/yourlocal</value>
  14. </property>
  15. </configuration>
  16. #hadoop-env.sh
  17. ....
  18.   export JAVA_HOME=$JAVA_HOME        #本机的jdk路径
  19. ....
  20. #yarn-site.xml
  21.   <configuration>
  22.    <!-- Site specific YARN configuration properties -->
  23.    <property>
  24.    <name>yarn.nodemanager.aux-services</name>
  25.    <value>mapreduce.shuffle</value>
  26.    <description>shuffle service that needs to be set for Map Reduce to run </description>
  27.    </property>
  28.    </configuration>
  29. #mapred-site.xml
  30.   <configuration>
  31.    <property>
  32.    <name>mapreduce.framework.name</name>
  33.    <value>yarn</value>
  34.    </property>
  35.   </configuration>
复制代码

spark:        
  1. $cd $YOUR_SPARK_HOME/
  2. $vim conf/spark-env.sh
复制代码

修改spark-env.sh
  1. export SCALA_HOME=$YOUR_SCALA_HOME
  2. export JAVA_HOME=$YOUR_JAVA_HOME
  3. export SPARK_MASTER_IP=$YOUR_MASTER_HOST
  4. export SPARK_MASTER_PORT=$YOUR_MASTER_PORT
  5. export SPARK_WORKER_CORES=1
  6. export SPARK_WORKER_MEMORY=1g
  7. export SPARK_WORKER_INSTANCES=1
  8. export SPARK_JAVA_OPTS="-verbose:gc -XX:-PrintGCDetails -XX:+PrintGCTimeStamps"
  9. export HADOOP_HOME=$YOUR_HADOOP_HOME      
复制代码


  Hive:
  如果使用mysql保存hive的元数据相关信息,需要拷贝mysql-connector-java-3.1.13-bin.jar 到$HIVE_HOME/lib 目录下。
  1. #cd $YOUR_HIVE_HOME
  2. #cp conf/hive-env.sh.template conf/hive-env.sh
  3. #cp conf/hive-default.xml.template conf/hive-site.xml
  4. #vim conf/hive-env.sh
复制代码

  修改hive-env.xml         
  1. ....
  2. HADOOP_HOME=$YOUR_HADOOP2_HOME
  3. ....
复制代码

修改hive-site.xml
  1. .....
  2. <property>
  3. <name>javax.jdo.option.ConnectionURL</name>
  4. <value>jdbc:mysql://localhost:3306/SHARK_DATABASE?createDatabaseIfNotExist=true</value>
  5. <description>JDBC connect string for a JDBC metastore</description>
  6. </property>
  7. <property>
  8. <name>javax.jdo.option.ConnectionDriverName</name>
  9. <value>com.mysql.jdbc.Driver</value>
  10. <description>Driver class name for a JDBC metastore</description>
  11. </property>
  12. <property>
  13. <name>javax.jdo.option.ConnectionUserName</name>
  14. <value>shark</value>
  15. <description>username to use against metastore database</description>
  16. </property>
  17. <property>
  18. <name>javax.jdo.option.ConnectionPassword</name>
  19. <value>shark</value>
  20. <description>password to use against metastore database</description>
  21. </property>
  22. ......
  23.       
复制代码

Shark:      
  1. #cd $YOUR_SHARK_HOME
  2. #cp conf/shark-env.sh.template conf/shark-env.sh
  3. #vim conf/shark-env.sh
复制代码

修改shark-env.sh
  1. ......
  2. export SCALA_HOME=$YOUR_SCALA_HOME
  3. export HIVE_HOME=$YOUR_HIVE_HOME
  4. export HADOOP_HOME=$YOUR_HADOOP_HOME
  5. export SPARK_HOME=$YOUR_SPARK_HOME
  6. export MASTER=spark://localhost:8888
  7. ......
复制代码

启动并测试     
  1. #cd $YOUR_HADOOP_HOME
  2. #bin/hadoop namenode -format
  3. #sbin/start-alll.sh
  4. #cd $YOUR_SPARK_HOME
  5. #bin/start-all.sh
  6. #cd $YOUR_SHARK_HOME
  7. #bin/shark
  8. Starting the Shark Command Line Client
  9. ......
  10. ......
  11. shark>show databases;
  12. shark>create database SHARK_DB;
  13. shark>use SHARK_DB;
  14. shark>create table tbl_test(ID STRING);
复制代码


搭建完毕。
----DONE----






没找到任何评论,期待你打破沉寂

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条