我可以使用sqlalchemy连接到hive而没有任何问题:
oguz@dikanka:~$ python
Python 2.7.15+ (default, Jul 9 2019, 16:51:35)
[GCC 7.4.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from sqlalchemy import create_engine
>>> engine = create_engine('hive://dikanka:10000')
>>> result = engine.execute("select movieid from default.ratings")
>>> result.first();
(242,)
但当我尝试将超集连接到配置单元时,收到以下错误:
ERROR: {"error": "Connection failed!\n\nThe error message returned was:\nCan't load plugin: sqlalchemy.dialects:hive"}
具体情况如下:
我的笔记本电脑上有一个单节点hdp-3.1.4.0设置。我已经启动并运行了以下服务:hdfs 3.1.1、hive 3.1.0、zookeeper 3.4.6、superset 0.23.0
python版本是python 2.7.15+。
配置单元命令行界面工作顺利。
我安装了以下python模块:
pip install thrift
sudo apt-get install libsasl2-dev
pip install sasl
pip install thrift_sasl
pip install pyhive
最后但并非最不重要的是,我有一个kubuntu 18.04。
在superset上,我尝试添加一个名为“default”的数据库,并将sqlalchemyuri设置为
hive://dikanka:10000
这与我在上面的create\u引擎中使用的uri完全相同。
然后我单击“testconnection”,表单其余部分都有默认值。
我得到的错误如上所述。这里是一个截图
希望有人能帮我解决这个问题。
暂无答案!
目前还没有任何答案,快来回答吧!