是否有可能通过编写单独的MapReduce程序并行执行蜂巢查询?(Is it possible to

2019-09-17 04:10发布

我也问过一些问题上增加蜂巢查询的性能。 一些问题的答案都属于映射器和减速器的数量。 我试着用多个映射器和减压器,但我没有看到在执行任何区别。 不知道为什么,可能是我没有做到以正确的方式还是我错过了什么东西。

我想知道是否有可能在parallell执行蜂巢查询? 究竟我的意思是,一般查询得到的队列执行。 例如:QUERY1

QUERY2

QUERY3

。 。 。 ñ

它需要太多的时间来执行,我想,以减少执行时间。

我需要知道,如果我们使用的MapReduce程序蜂巢JDBC程序则是可以并行执行呢? 不知道这是否会工作或没有但这是我的目标是实现?

我下面复原我的问题:

1)如果有可能并行运行多个蜂箱查询,确实是需要多个蜂巢节俭服务器?

2)是否有可能打开多个蜂巢节俭服务器?

3)我认为这是不可能的同一端口上打开多个蜂巢节俭服务器?

4)我们可以打开不同端口的多个蜂巢节俭服务器?

请建议我一些这方面的解决方案。 如果您有任何其他替代我会尝试这一点。

Answer 1:

正如你可能已经知道,蜂巢是一个类似于SQL的前端Hadoop和MAP-减少。 在蜂巢任何不平凡的查询被编译为Map-Reduce和Hadoop的运行。 的map-reduce是并行处理架构,因此每个蜂巢查询将运行并在并行处理数据。 蜂巢采用FIFO调度,默认情况下安排在Hadoop作业,因此,只有一个蜂巢查询可以在给定时间执行,当第一个完成将要执行的下一个查询。 在大多数情况下,我会建议人们优化,而不是并行多个蜂巢查询个人蜂巢查询。 如果你正朝着并行蜂巢查询倾斜的,它可能是一个指示正在使用效率低下的集群。 为了进一步分析您的蜂巢查询的性能和使用情况,您可以安装一个分布式监控系统像神经节用于监视集群的使用(亚马逊EMR支持它太)。

长话短说,你不必写的map-reduce程序; 这就是你正在使用蜂巢在首位的。 但是,如果有一些你可能知道这蜂巢可能不是,它可能会导致你的蜂巢查询的次优的性能数据。 例如,您的数据可能被一些列进行排序和蜂房可能不知道的有关信息。 在这种情况下,如果不能设置蜂巢额外的元信息,它可能是有意义写的map-reduce作业需要的附加信息考虑在内,并有可能给你更好的性能。 在大多数情况下,我发现蜂巢的表现是在同水准与地图,相应减少蜂房查询工作。



文章来源: Is it possible to execute Hive queries parallelly by writing seperate mapreduce program?