nannan1232 2017-06-24 04:47 采纳率: 0%
浏览 2709

hive on spark 和 spark sql 有啥区别?

hive on spark 和 spark sql 都是用spark引擎计算,个人觉得没啥区别。
网友说:
hive on spark 是cloudera公司开发的,spark sql是spark开发的,这个算是区别吗?
写法不同?

请大神解答。

  • 写回答

1条回答 默认 最新

  • zhanjr 2017-06-24 06:10
    关注

    SparkSQL和Hive On Spark都是在Spark上实现SQL的解决方案。Spark早先有Shark项目用来实现SQL层,不过后来推翻重做了,就变成了SparkSQL。这是Spark官方Databricks的项目,Spark项目本身主推的SQL实现。Hive On Spark比SparkSQL稍晚。Hive原本是没有很好支持MapReduce之外的引擎的,而Hive On Tez项目让Hive得以支持和Spark近似的Planning结构(非MapReduce的DAG)。所以在此基础上,Cloudera主导启动了Hive On Spark。这个项目得到了IBM,Intel和MapR的支持(但是没有Databricks)。
    结构上Hive On Spark和SparkSQL都是一个翻译层,把一个SQL翻译成分布式可执行的Spark程序。需要理解的是,Hive和SparkSQL都不负责计算,它们只是告诉Spark,你需要这样算那样算,但是本身并不直接参与计算。
    Spark官方Databricks本身是不愿意承认Hive On Spark的正统地位的。Shark, Spark SQL, Hive on Spark, and the future of SQL on Spark从它们官博上可以看出他们对Hive On Spark的定位更像是小三而不是正房。所以你看到Apache Hive On Spark的各种努力,并没有得到最重要的Spark Vendor,Databricks的多少支持。SQL是面对用户最直接的一个层面,如果Databricks能控制这个层面,各种功能添加都由自己做主,就不用受制于Hive的社区,这也是很直接的好处,而且我觉得引擎就位之后几个厂商拼的都是上层,要搞出数据仓库还有很多东西要做,但是如果把不住SQL这层,就很难办。但Hive毕竟有辣嘛多厂商支持,D社是否能拿到主控权,还不好说。D社已经有废掉Shark的前科,所以我不是很看好SparkSQL。

    评论

报告相同问题?

悬赏问题

  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号
  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
  • ¥15 让node服务器有自动加载文件的功能
  • ¥15 jmeter脚本回放有的是对的有的是错的
  • ¥15 r语言蛋白组学相关问题