在 SparkSQL 使用 JDBC
此处使用的 Thrift JDBC/ODBC 服务器对应着 Hive 0.12 的 HiveServer2。你可以用直线脚本在 Hive0.12 或者 Spark 测试 JDBC 服务器。
Spark 的镜像需要在选项-Phive,-Phivethriftserver 下配置。否则 sbin/start-thriftserver.sh 将会显示以下的错误信息:
- failed to launch org.apache.spark.sql.hive.thriftserver.HiveThriftServer2:
- You need to build Spark with -Phive and -Phive-thriftserver.
复制代码
需要启动 JDBC/ODBC server,请执行以下的 Spark 目录内容:
- ./sbin/start-thriftserver.sh
复制代码
此处的脚本接收所有 bin/spark-submit 的命令行选项,同时还有 --hiveconf 选项来置顶 Hive 属性。你可以执行 ./sbin/start-thriftserver.sh –help 获取所有可用的选项。服务器默认的监听端口为 localhost:10000 你可以使用以下任意环境变量来重写它:
- export HIVE_SERVER2_THRIFT_PORT=<listening-port>
- export HIVE_SERVER2_THRIFT_BIND_HOST=<listening-host>
- ./sbin/start-thriftserver.sh --master <master-uri> ...
复制代码
或是系统属性:
- ./sbin/start-thriftserver.sh --hiveconf hive.server2.thrift.port=<listening-port> --hiveconf hive.server2.thrift.bind.host=<listening-host> --master <master-uri> ...
复制代码
现在可使用直线脚本测试 Thrift JDBC/ODBC server:
复制代码
在直线脚本连接 JDBC/ODBC server in beeline :
- beeline> !connect jdbc:hive2://localhost:10000
复制代码
Beeline 直线脚本会询问用户名和密码。在非安全模式下,简单输入 username 和空白密码即可。在安全模式下,请按照beeline documentation 下的说明来执行。
Hive 的配置将 hive-site.xml 文件移动到 conf/.目录下
你也可以使用 Hive 自带的直线脚本。
|