根据Spark官网所述,Spark SQL实现了Thrift JDBC/ODBC server:
The Thrift JDBC/ODBC server implemented here corresponds to the HiveServer2 in Hive 1.2.1 You can test the JDBC server with the beeline script that comes with either Spark or Hive 1.2.1.
这就意味着我们可以像HIVE那样通过JDBC远程连接Spark SQL发送SQL语句并执行。
1、准备工作
把hive里的hive-site.xml拷贝到spark的conf下,并且修改里面参数,如主机名为当前机器的主机名,后面登陆的时候就用这个主机名,端口就是设置的10000,此时这台机器是上启动的start-thriftserver.sh相当于hive上启动hiverserver2,不管是在hive上启动(sbin/hiveserver2)还是在spark上启动(sbin/start-thriftserver.sh),都用bin/beeline 连接时的主机名和这个配置里的一样(注意,这个配置里的主机名也必须是当前启动服务的机器的主机名,也就是,在哪台机器上启动就配置哪台机器上的主机名)
例如
sbin/start-thriftserver.sh --jar "mysql-connect---.....jar"(mysql的驱动jar包) "json-sered-.... "(处理json格式数据的jar包)
bin./beeline
beeline> !connect jdbc:hive2://spark2:10000
<