我正在尝试使用 pyhive 库在 python 中运行 presto 查询,但 max retries 错误即将到来。我在本地(笔记本电脑)的 jupyter notebook 中运行它。我认为它无法连接到 presto 节点。我正在使用 Azure hdinsight 集群并在头节点上安装了 presto 应用程序(使用星爆分布)。我使用了集群用户名和密码,也尝试了头节点 ssh 用户和密码,但没有任何效果。下面是我的代码:
from pyhive import presto
conn= presto.connect(
host='clustername-ssh.azurehdinsight.net',
port=8085,
username='sshuser'
password='sshpassword',
protocol='https'
).cursor()
conn.execute('SELECT * FROM hive.default.parquettest limit 1')
我得到的错误是:
ConnectionError: HTTPConnectionPool(host='sm-hdinsight01-ssh.azurehdinsight.net', port=8085): 最大重试次数超过 url: /v1/statement (由 NewConnectionError(': 无法建立新连接: [Errno 110) ] 连接超时',))
但是当我在头节点的终端运行它时,它可以工作:
from pyhive import presto
conn= presto.connect(
host='localhost',
port=8085).cursor()
conn.execute('SELECT * FROM hive.default.parquettest limit 1')
我想我在这里遗漏了一些关键的东西。请帮忙。