Spark 2.2.1 集成Hive数据仓库的案例与解读
一般情况下,各个公司都会建立自己的数据仓库,尤其是当前大数据生态圈中使用最普遍的Hive数据仓库,需要集成这部分数据,向外提供这部分数据的查询接口。Spark SQL提供了分布式SQL引擎,支持直接运行SQL查询的接口,不用写任何代码。
运行的集群环境说明:在新建的集群上运行,部署Spark 2.2.1版本和Hadoop 2.6.0版本,Hive 版本为apache-hive-1.2.1,对应Mysql数据库的驱动Jar包为:mysql-connector-java-5.1.35.tar.gz。
(一) ThriftJDBC/ODBC的案例。
Spark SQL提供Thrift JDBC/ODBC支持, 实现的Thrift JDBC/ODBC服务器与Hive HiveServer2相一致。可以用在Spark 或者Hive附带的Beeline脚本测试JDBC服务器。
下面给出两种方式启动JDBC/ODBC服务的案例。参考Hive的默认配置文件中的属性:
<property>
<name>hive.server2.transport.mode</name>
<value>binary</value>
<description>
Expects oneof [binary, http].
Transportmode of HiveServer2.
</description>
</property>
传输模式支持两种(Binary和Http)