如何在配置单元中指定要分配给查询的最大vcore数?

bttbmeg0  于 2021-06-25  发布在  Hive
关注(0)|答案(1)|浏览(306)

我正在配置单元上运行多个查询。我有一个hadoop集群,有6个节点。集群中的vCore总数为21。
我只需要将2个内核分配给一个python进程,这样其他可用的内核就可以被另一个主进程使用。
代码

from pyhive import hive
hive_host_name = "subdomain.domain.com"
hive_port = 20000
hive_user = "user"
hive_password = "password"
hive_database = "database"

conn = hive.Connection(host=hive_host_name, port=hive_port,username=hive_user, database=hive_database, configuration={})
cursor = conn.cursor()
cursor.execute('select count(distinct field) from somedata')
ncgqoxb0

ncgqoxb01#

尝试在配置Map中传递以下设置: yarn.nodemanager.resource.cpu-vcores=2 此设置的默认值为8。
说明: Number of CPU cores that can be allocated for containers. 更新后的代码如下:

from pyhive import hive
hive_host_name = "subdomain.domain.com"
hive_port = 20000
hive_user = "user"
hive_password = "password"
hive_database = "database"
configuration = {
    "yarn.nodemanager.resource.cpu-vcores": 2
}

conn = hive.Connection( \
                       host=hive_host_name,
                       port=hive_port,
                       username=hive_user,
                       database=hive_database,
                       configuration=configuration
                      )
cursor = conn.cursor()
cursor.execute('select count(distinct field) from somedata')

引用url

相关问题