She*_*jie 5 hadoop hive connection-pooling jdbc hdfs
我正在使用Hive JDBC驱动程序对我的HDFS数据存储执行sql查询.我一直在尝试使用c3p0来处理连接池.我不太确定这是正确的方法,因为Hive查询有时会花费很长时间,这意味着连接将持续很长时间而不会被释放回池中,我很难想到最大数量的正确设置号c3p0配置中的连接也是如此.
是否有任何最佳实践来汇集hive jdbc连接?C3P0?DBCP?
MAX_POOL_SIZE怎么样?它应该大于RDB的正常设置吗?
哦,太棒了,所以你提到的线程中的问题实际上是我很久以前问过的:)看看如何在你的用例中使用它会很有趣。
但让我告诉您,Hive 会根据您的查询在需要时启动 Hadoop 作业。因此,如果您想执行多个查询(我相信这就是您想要执行的操作),您需要使用可以同时运行多个作业的作业调度程序。默认情况下,Hadoop 使用 先进先出 (FIFO) 调度程序,从工作队列中提取作业。因此,想切换到公平调度程序或容量调度程序。
公平份额调度程序背后的核心思想是将资源分配给作业,以便平均而言,随着时间的推移,每个作业都会获得平等的可用资源份额。
容量调度程序与公平调度程序具有一些相同的原则,但也有明显的差异。首先,容量调度是为大型集群定义的,大型集群可能有多个独立的消费者和目标应用程序。在容量调度中,不是创建池,而是创建多个队列,每个队列都有可配置数量的映射和归约槽。每个队列还分配有保证容量(集群的总容量是每个队列容量的总和)。其次,能够对队列中的作业进行优先级排序。最后,队列上存在严格的访问控制。
| 归档时间: |
|
| 查看次数: |
7074 次 |
| 最近记录: |