我阅读了post on quora,它告诉我Spark Thrift服务器与Apache Thrift有关,这是一种二进制通信协议。Spark Thrift服务器是Hive的接口,但是Spark Thrift服务器如何使用Apache Thrift通过二进制协议/rpc与Hive通信?
发布于 2017-08-14 20:03:22
Spark Thrift Server是Spark的配置单元兼容接口。
这意味着,它创建了HiveServer2的实现,你可以使用beeline连接,但是几乎所有的计算都将使用Spark来计算,而不是Hive。
在以前的版本中,查询解析器来自Hive。目前,Spark Thrift服务器使用Spark查询解析器。
Apache Thrift是一个用于开发RPC (远程过程调用)的框架,因此有许多使用Thrift的实现。Cassandra也使用了Thrift,现在它被Cassandra原生协议所取代。
因此,Apache Thrift是一个开发RPC的框架,Spark Thrift Server是Hive协议的一个实现,但它使用Spark作为计算框架。
有关更多详细信息,请参阅@RussS的this link
发布于 2018-04-27 03:05:40
您可以使用以下命令在AWS EMR上启动Spark thrift服务器- sudo /usr/lib/spark/sbin/start-thrftserver.sh --master yarn-client
在EMR上,Spark thrift服务器的默认端口为10001
在使用spark的直线时,在EMR上使用以下命令
/usr/lib/spark/bin/beeline -u‘jdbc:hive2://:10001/默认’-e‘显示数据库;“
默认情况下,Hive thrift服务器始终在EMR上启动并运行,而不是Spark thrift服务器
您还可以使用ODBC/JDBC将任何应用程序连接到Spark thrift服务器,还可以通过单击Yarn Resource Manager上的"org.apache.spark.sql.hive.thriftserver.HiveThriftServer2“作业的应用程序主链接监视EMR集群上的查询
https://stackoverflow.com/questions/45667735
复制相似问题