Spark SQL ThriftServer 使用

配置

拷贝 $HIVE_HOME/conf/hive-site.xml 文件到 $SPARK_HOME/conf 目录下。

编辑 $SPARK_HOME/conf/spark_env.sh 文件,将 MySQL Driver 包添加到 SPARK_CLASSPATH 变量中:

SPARK_CLASSPATH=mysql-connector-java.jar  

Spark SQL 将连接 hive-site.xml 中的 Hive Metastore 数据源获取元数据。

启动 ThriftServer

$SPARK_HOME/sbin/start-thriftserver.sh --master yarn --deploy-mode client

注意:

Java 8 下过度的虚拟内存分配导致任务被杀 https://issues.apache.org/jira/browse/YARN-4714

解决方案:

编辑 yarn-site.xml 文件,添加:

<property>  
    <name>yarn.nodemanager.pmem-check-enabled</name>
    <value>false</value>
</property>  
<property>  
    <name>yarn.nodemanager.vmem-check-enabled</name>
    <value>false</value>
</property>  

Beeline

使用 Beeline 通过 JDBC 连接到 ThriftServer

beeline -u jdbc:hive2://localhost:10000/test -n user -p password