我想从 SQL 客户端对我的 Amazon EMR 集群运行 SQL 查询。我如何为 Spark Thrift 服务器配置 Java 数据库连接 (JDBC) 驱动程序,以便我能做到这一点?

注意:以下步骤需要 SQuirrel SQL 客户端。下载并安装 SQuirrel SQL,然后再继续。

1.    在 Amazon EMR 集群的主节点上,运行以下命令以启动 Spark Thrift 服务器:

sudo /usr/lib/spark/sbin/start-thriftserver.sh

2.    将主节点上的 /usr/lib/spark/jars 目录中的所有 .jar 文件复制到本地计算机。

3.    打开 SQuirrel SQL 并创建新的驱动程序。
对于 Name (名称),输入 Spark JDBC Driver
对于 Example URL (示例 URL),输入 jdbc:hive2://localhost:1000

4.    在 Extra Class Path (额外类路径) 选项卡上,选择 Add (添加)

5.    在对话框中,导航到您在步骤 2 中复制的 .jar 文件所在的目录,然后选择所有文件。

6.    在 Class Name (类名称) 字段中,输入 org.apache.hive.jdbc.HiveDriver,然后选择 OK (确定)

7.    在本地计算机上运行与以下内容类似的命令来使用本地端口转发设置 SSH 隧道:

ssh -o ServerAliveInterval=10 -i path-to-key-file -N -L 10001:localhost:10001 hadoop@master-public-dns-name

8.    要连接到 Spark Thrift 服务器,请在 SQuirrel SQL 中创建新的别名。
对于 Name (名称),输入 Spark JDBC
对于 Driver (驱动程序),输入 Spark JDBC Driver
对于 URL,输入 jdbc:hive2://localhost:10001
对于 Username (用户名),输入 hadoop

您现在应该能从 SQuirrel SQL 客户端运行查询了。


此页内容对您是否有帮助? |

返回 AWS Support 知识中心

需要帮助? 请访问 AWS 支持中心

发布时间:2018 年 9 月 24 日