繁体   English   中英

为什么在Spark上使用Hive而不是Spark-SQL?

[英]Why use Hive on Spark instead of Spark-SQL?

我是数据科学领域的新手,我不明白为什么有人会想将Hive连接到Spark而不仅仅是使用Sqark-SQL。

在Spark上使用Hive而不是Spark-SQL有什么好处(除了能够使用已经在生产中使用的Hive代码之外)?

谢谢

上面的答案不正确。 Hive和SparkSQL之间常见的一个组件是SemanticAnalyzer Hive具有明显更好的SQL支持和更复杂的基于成本的优化器。 我的建议是使用Tive上的Hive而不是Spark或SparkSQL上的Hive,因为它可以投入生产,更稳定且可扩展。

嗯,看来这里唯一的答案是使用Tez的建议。

回到最初的问题,使用Hive on Spark,IMHO的好处主要是更好的hive功能支持,而不是HiveQL语言支持,Hive on Spark对hiveserver2和安全功能的支持要好得多。

在SparkSQL中,它们确实是错误的,在SparkSQL中有hiveserver2 impl,但在最新发行版(1.6.x)中,SparkSQL中的hiveserver2不再与hivevar和hiveconf参数一起使用,并且通过jdbc登录的用户名不再起作用可以工作...请参见https://issues.apache.org/jira/browse/SPARK-13​​983

我们的要求是以安全的方式(通过身份验证和授权)在hiveserver2中使用spark,目前仅SparkSQL不能提供此功能,并且我们不需要使用其他hadoop组件(例如HDFS或YARN),我们使用spark独立,因此对于我们要求,我们在Spark上使用了Ranger / sentry + Hive。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM