hive(在tez上)和spark之间针对我的特定用例的性能基准测试

eimct9ow  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(579)

我在玩集群上的一些数据,想做一些聚合——没什么太复杂的,但比求和更复杂的是,很少有连接和计数差异。我已经用scala在hive和spark中实现了这个聚合,并希望比较执行时间。
当我从gateway提交脚本时,linux时间函数给我的实时时间比我期望的sys时间小。但我不确定该选哪一个作为比较。可能只是使用sys.time并运行两个查询几次?在这种情况下,我是可以接受的还是完全不懂?

kqlmhetl

kqlmhetl1#

实时的。从性能基准的Angular 来看,您只关心在查询完成之前需要多长时间(人工时间),您可以查看结果,而不关心应用程序内部正在启动多少进程。
注意,我会非常小心地进行性能基准测试,因为spark和hive都有大量可调的配置旋钮,这些旋钮会极大地影响性能。请参阅这里的一些示例,这些示例通过矢量化、数据格式选择、数据bucketing和数据排序来改变配置单元的性能。
“普遍共识”是spark比tez上的hive更快,但是hive可以更好地处理不适合内存的巨大数据集(我不打算引用一个来源,因为我很懒,做一些谷歌搜索)

相关问题