SparkSQL on Hive配置与实战
2017-06-08 23:19
453 查看
首先要配置好hive,保存元数据到mysql中,这个大家自己查资料!
然后配置Spark SQL,
1.配置hive-site.xml
在master1上的/usr/local/spark/spark-1.6.0-bin-hadoop2.6/conf目录创建hive-site.xml文件,内容如下:
这个配置信息从hive的目录
2.配置驱动
将
注意:
因为之前我spark环境配置了Zookeeper,做HA,现在不在练习HA,将HA的配置去掉。如果不去掉,必须启动Zookeeper集群才可以单独一台节点上启动spark-shell等;
因为我在master1、worker1、worker2上安装了Zookeeper,所以,要将这三台节点上的$SPARK_HOME/conf/spark-env.sh文件中的SPARK_DAEMON_JAVA_OPTS去掉,并且将配置HA是注释的SPARK_MASTER_IP参数的注释去掉;
export SPARK_MASTER_IP=master1
export SPARK_DAEMON_JAVA_OPTS=”-Dspark.deploy.recoveryMode=ZOOKEEPER -Dspark.deploy.zookeeper.url=master1:2181,worker1:2181,worker2:2181 -Dspark.deploy.zookeeper.dir=/spark”
3.启动hive的metastore后台进程
将日志打印到/root/logs/hive目录下,如果目录不存在则先创建
root@master1:~/logs# hive –service metastore >> /root/logs/hive/metastore.log 2>& 1&
因为配置了上面的hive.metastore.uris,所以必须启动hive的service metastore后台进程才可以执行./spark-shell –master spark://master1:7077和./spark-sql –master spark://master1:7077命令。
在$SPARK_HOME/bin下执行 ./spark-shell –master spark://master1:7077命令。
然后依次执行下面的命令
然后配置Spark SQL,
1.配置hive-site.xml
在master1上的/usr/local/spark/spark-1.6.0-bin-hadoop2.6/conf目录创建hive-site.xml文件,内容如下:
<configuration> <property> <name>hive.metastore.uris</name> <value>thrift://master1:9083</value> <description>Thrift URI for the remote metastore. Used by metastore client to connect to remote metastore.</description> </property> </configuration>
这个配置信息从hive的目录
$HIVE_HOME/conf/hive-default.xml.template文件中找到的,默认情况下的value是空值;
2.配置驱动
将
$HIVE_HOME/lib/mysql-connector-java-5.1.35-bin.jar 中的mysql驱动拷贝到$SPARK_HOME/lib/下面即可。
注意:
因为之前我spark环境配置了Zookeeper,做HA,现在不在练习HA,将HA的配置去掉。如果不去掉,必须启动Zookeeper集群才可以单独一台节点上启动spark-shell等;
因为我在master1、worker1、worker2上安装了Zookeeper,所以,要将这三台节点上的$SPARK_HOME/conf/spark-env.sh文件中的SPARK_DAEMON_JAVA_OPTS去掉,并且将配置HA是注释的SPARK_MASTER_IP参数的注释去掉;
export SPARK_MASTER_IP=master1
export SPARK_DAEMON_JAVA_OPTS=”-Dspark.deploy.recoveryMode=ZOOKEEPER -Dspark.deploy.zookeeper.url=master1:2181,worker1:2181,worker2:2181 -Dspark.deploy.zookeeper.dir=/spark”
3.启动hive的metastore后台进程
将日志打印到/root/logs/hive目录下,如果目录不存在则先创建
root@master1:~/logs# hive –service metastore >> /root/logs/hive/metastore.log 2>& 1&
因为配置了上面的hive.metastore.uris,所以必须启动hive的service metastore后台进程才可以执行./spark-shell –master spark://master1:7077和./spark-sql –master spark://master1:7077命令。
在$SPARK_HOME/bin下执行 ./spark-shell –master spark://master1:7077命令。
然后依次执行下面的命令
scala> val hiveContext = new org.apache.spark.sql.hive.HiveContext(sc) scala> hiveContext.sql("show databases").collect.foreach(println) scala> hiveContext.sql("use testdb").collect.foreach(println) scala> hiveContext.sql("show tables").collect.foreach(println) res5: org.apache.spark.sql.DataFrame = [tableName: string, isTemporary: boolean] scala> hiveContext.sql("show tables").collect.foreach(println)
相关文章推荐
- 第57课:Spark SQL on Hive配置及实战
- 大数据IMF传奇行动绝密课程第57课:Spark SQL on Hive配置及实战
- Spark SQL on Hive配置
- 【Spark篇】---SparkSQL on Hive的配置和使用
- 第57课 spark sql on hive实战
- spark sql on hive配置及其使用
- SparkSQL On Yarn with Hive,操作和访问Hive表
- spark sql on hive安装问题解析
- SparkSQL与Hive on Spark的比较
- SparkSQL On Yarn with Hive,操作和访问Hive表
- SparkSQL On Yarn with Hive,操作和访问Hive表
- SparkSQL On Yarn with Hive,操作和访问Hive表
- spark sql on hive
- SparkSQL On Yarn with Hive,操作和访问Hive表
- SparkSQL On Yarn with Hive,操作和访问Hive表
- Spark SQL 1.2(building-spark1.2, sparksql on hive,spark-sql)
- Hive on Spark配置总结
- SparkSQL On Yarn with Hive,操作和访问Hive表
- 第69课:SparkSQL通过Hive数据源实战学习笔记
- SparkSQL On Yarn with Hive,操作和访问Hive表