
我透過以下連結安裝了 Apache Drill鑽孔文檔。阿帕契鑽機工作正常。我還使用 docker 安裝並運行了 Apache Superset。超級組也完全可以正常運作。
但我的目標是將 Superset 和 Drill 整合在一起。我能找到的唯一教程是來自 Dataist 的教學課程。在學習本教程時,他們要求我們添加資料庫。
由於我在本機電腦上執行 Drill 和 Superset,因此它們要求我們輸入drill+sadrill://localhost:8047/dfs/test?use_ssl=False
SQLAlchemy URI。他們要求我們按測試連接來測試連接。
當按下測試連接時,我收到以下錯誤訊息。
ERROR: {"error": "Connection failed!
The error message returned was:
Can't load plugin: sqlalchemy.dialects:drill.sadrill", "stacktrace": "Traceback (most recent call last):
File \"/home/superset/superset/views/core.py\", line 1755, in testconn
engine = database.get_sqla_engine(user_name=username)
File \"/home/superset/superset/utils/core.py\", line 132, in __call__
value = self.func(*args, **kwargs)
File \"/home/superset/superset/models/core.py\", line 911, in get_sqla_engine
return create_engine(url, **params)
File \"/usr/local/lib/python3.6/site-packages/sqlalchemy/engine/__init__.py\", line 435, in create_engine
return strategy.create(*args, **kwargs)
File \"/usr/local/lib/python3.6/site-packages/sqlalchemy/engine/strategies.py\", line 61, in create
entrypoint = u._get_entrypoint()
File \"/usr/local/lib/python3.6/site-packages/sqlalchemy/engine/url.py\", line 172, in _get_entrypoint
cls = registry.load(name)
File \"/usr/local/lib/python3.6/site-packages/sqlalchemy/util/langhelpers.py\", line 240, in load
\"Can't load plugin: %s:%s\" % (self.group, name)
sqlalchemy.exc.NoSuchModuleError: Can't load plugin: sqlalchemy.dialects:drill.sadrill
"}
有人能弄清楚為什麼我會收到此錯誤嗎?另外,是否有其他教程可供遵循,可以更好地了解如何設定練習和超級集。
答案1
我認為你必須安裝 SQLAlchemy Dialect for Drill:
git clone https://github.com/JohnOmernik/sqlalchemy-drill
cd sqlalchemy-drill
python3 setup.py install
(看https://superset.incubator.apache.org/installation.html#apache-drill)