有人可以详细说明使用Spark SQL CLI与Thriftserver/Beeline在Hive中查询/修改数据之间的区别吗?Spark SQL 文档提到了它们,但是您何时会使用其中一个,或者从功能的角度来看它们是等效的替代方案?
澄清一下:
-
spark-sql 是一个运行 Spark 单个实例的程序,您可以与它进行交互,就好像它是一个类似 mysql 的 shell 提示符,它利用了 Spark-Warehouse 和这些类型的功能。
-
Spark with Thriftserver 是一个应用程序,它通过 JDBC 连接公开与正在运行的 Spark 实例的连接。https://community.hortonworks.com/questions/33715/why-do-we-need-to-setup-spark-thrift-server.html
-
Beeline 是一个查询/消费者工具,用于使用/连接到正在运行的 JDBC hive2 表(因此在 Spark 文档中,他们使用 beeline 来测试 JDBC 连接是否确实有效)。注意:如果SQL Workbench导入了正确的Hive2 JDBC驱动程序和jar,则可以使用Thriftserver将查询/连接器程序连接到Spark