
다음 링크를 통해 Apache Drill을 설치했습니다.드릴 문서. Apache Drill이 잘 작동합니다. 또한 Docker를 사용하여 Apache Superset을 설치하고 실행했습니다. 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를 설치해야 한다고 생각합니다.
git clone https://github.com/JohnOmernik/sqlalchemy-drill
cd sqlalchemy-drill
python3 setup.py install
(보다https://superset.incubator.apache.org/installation.html#apache-drill)