Spark SQL CLI
Spark1.1增加了Spark SQL CLI和ThriftServer
SparkSQL CLI配置
1、创建并配置hive-site.xml
在运行Spark SQL CLI中需要使用到Hive Metastore,故需要在Spark中添加其uris。具体方法是在SPARK_HOME/conf目录下创建hive-site.xml文件,然后在该配置文件中,添加hive.metastore.uris属性,具体如下:
<?xml version="1.0"?> <configuration> <property> <name>hive.metastore.uris</name> <value>thrift://m1:9083</value> </property> </configuration>
2、启动Hive
在使用Spark SQL CLI之前需要启动Hive Metastore(如果数据存放在HDFS文件系统,还需要启动Hadoop的HDFS),使用如下命令可以使Hive Metastore启动后运行在后台,可以通过jobs查询:
$nohup hive --service metastore > metastore.log 2>&1 &
3、启动spark cli
如果要连接spark集群,应该首先启动spark集群,此处连接spark集群,因此,如下启动spark集群
./sbin/start-all.sh
启动前建议调整log4j的日志级别,不然控制台输出内容过多,不利于观察。
具体修改方法如下:
1、进入spark conf目录下,重命名log4j.properties.template
mv log4j.properties.template log4j.properties
2、编辑log4j.properties,设置日志级别为ERROR
log4j.rootCategory=ERROR, console
启动cli
./bin/spark-sql --master spark://m1:7077 --executor-memory 512m
测试命令行:
show databases;
命令行启动成功后就可以对hive数据进行查询了
通过spark cli创建表,然后使用HQL进行操作
create table person ( id int, name string, age int ) row format delimited fields terminated by ' ' ;