spark作为执行引擎还是spark作为应用程序?

xriantvc  于 2021-05-29  发布在  Spark
关注(0)|答案(1)|浏览(434)

使用spark作为配置单元上的执行引擎或使用sparksql访问配置单元表,哪个选项更好?为什么?

pnwntuvh

pnwntuvh1#

以下是一些假设:
选择sql的原因是为了保持用户友好,例如,如果您有业务用户尝试访问数据。
之所以考虑hive,是因为它提供了类似sql的接口和数据持久性
如果这是真的,sparksql也许是更好的方法。它更好地集成在spark中,作为spark的一个组成部分,它将提供更多的功能(一个例子是结构化流媒体)。您仍然可以获得用户友好性和类似sql的界面,这样您就可以获得充分的好处。但是您只需要从spark的Angular 来管理您的系统。配置单元的安装和管理仍将在那里,但从单一的Angular 来看。
使用带有spark的hive作为执行引擎将使您受到限制,这取决于一个hive的库在将hql转换为spark方面的性能。它们可能做得很好,但仍然会丢失sparksql的高级特性。与sparksql相比,新特性可能需要更长的时间才能集成到hive中。
此外,随着hive向最终用户公开,一些高级用户或数据工程团队可能希望访问spark。这将导致您管理两个工具。在这种情况下,与仅使用spark-sql相比,系统管理可能会变得更加繁琐,因为spark-sql有可能同时服务于非技术用户和高级用户,即使高级用户使用pyspark、spark-shell或更多,它们仍将集成在同一工具集中。

相关问题