Connecting Dremio to SuperSet

Hi All, I am new to Dremio. I have installed the Super Set and try to connect to the Dremio. While passing the Dremio URL I am not able to connect to the Dremio.The Configurations are mentioned below
Connection URL : dremio+flight://admin:admin123@instance-1:32010/dremio
Super Set Version: 2
Python 3.8.13
Flask 2.0.3
Werkzeug 2.0.3
Dremio Version : 22.1.1
Did latest Super set support connection to Apache Dremio ? If so do I need to change any configuration in dremio.conf file. Please help me to sort it out. Thanks in Advance.

Hi @Arjun1 ,
did you install GitHub - narendrans/sqlalchemy_dremio: SQLAlchemy for Dremio via the ODBC and Flight interface. beforehand ?

Hoping it helps,

Hi
While Connected Dremio from Super Set following error is continuously showing in the log.


[‘UID=admin’, ‘PWD=admin123’, ‘HOST=34.148.32.46’, ‘PORT=32010’, ‘Schema=dremio’, ‘SSL=0’]


E0923 13:36:06.743943671 19874 ssl_transport_security.cc:1455] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:ssl3_get_record:wrong version number.
Traceback (most recent call last):
File “”, line 1, in
File “/home/techuser/super/lib/python3.8/site-packages/sqlalchemy/engine/base.py”, line 2234, in execute
connection = self._contextual_connect(close_with_result=True)
File “/home/techuser/super/lib/python3.8/site-packages/sqlalchemy/engine/base.py”, line 2302, in _contextual_connect
self._wrap_pool_connect(self.pool.connect, None),
File “/home/techuser/super/lib/python3.8/site-packages/sqlalchemy/engine/base.py”, line 2336, in _wrap_pool_connect
return fn()
File “/home/techuser/super/lib/python3.8/site-packages/sqlalchemy/pool/impl.py”, line 366, in connect
return _ConnectionFairy._checkout(self, self._fairy)
File “/home/techuser/super/lib/python3.8/site-packages/sqlalchemy/pool/base.py”, line 778, in _checkout
fairy = _ConnectionRecord.checkout(pool)
File “/home/techuser/super/lib/python3.8/site-packages/sqlalchemy/pool/base.py”, line 495, in checkout
rec = pool._do_get()
File “/home/techuser/super/lib/python3.8/site-packages/sqlalchemy/pool/impl.py”, line 349, in _do_get
c = self._create_connection()
File “/home/techuser/super/lib/python3.8/site-packages/sqlalchemy/pool/base.py”, line 309, in _create_connection
return _ConnectionRecord(self)
File “/home/techuser/super/lib/python3.8/site-packages/sqlalchemy/pool/base.py”, line 440, in init
self.__connect(first_connect_check=True)
File “/home/techuser/super/lib/python3.8/site-packages/sqlalchemy/pool/base.py”, line 661, in connect
pool.logger.debug(“Error on connect(): %s”, e)
File “/home/techuser/super/lib/python3.8/site-packages/sqlalchemy/util/langhelpers.py”, line 68, in exit
compat.raise
(
File “/home/techuser/super/lib/python3.8/site-packages/sqlalchemy/util/compat.py”, line 182, in raise

raise exception
File “/home/techuser/super/lib/python3.8/site-packages/sqlalchemy/pool/base.py”, line 656, in __connect
connection = pool._invoke_creator(self)
File “/home/techuser/super/lib/python3.8/site-packages/sqlalchemy/engine/strategies.py”, line 114, in connect
return dialect.connect(*cargs, **cparams)
File “/home/techuser/super/lib/python3.8/site-packages/sqlalchemy_dremio/flight.py”, line 176, in connect
return self.dbapi.connect(*cargs, **cparams)
File “/home/techuser/super/lib/python3.8/site-packages/sqlalchemy_dremio/db.py”, line 20, in connect
return Connection(c)
File “/home/techuser/super/lib/python3.8/site-packages/sqlalchemy_dremio/db.py”, line 63, in init
bearer_token = client.authenticate_basic_token(properties[‘UID’], properties[‘PWD’])
File “pyarrow/_flight.pyx”, line 1209, in pyarrow._flight.FlightClient.authenticate_basic_token
File “pyarrow/_flight.pyx”, line 69, in pyarrow._flight.check_flight_status
pyarrow._flight.FlightUnavailableError: gRPC returned unavailable error, with message: failed to connect to all addresses

E0923 13:36:11.728026976 20012 ssl_transport_security.cc:1455] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:ssl3_get_record:wrong version number.
E0923 13:36:16.728024156 20011 ssl_transport_security.cc:1455] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:ssl3_get_record:wrong version number.
E0923 13:36:21.727949663 20012 ssl_transport_security.cc:1455] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:ssl3_get_record:wrong version number.
E0923 13:36:26.727974617 20011 ssl_transport_security.cc:1455] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:ssl3_get_record:wrong version number.
E0923 13:36:31.727974685 20012 ssl_transport_security.cc:1455] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:ssl3_get_record:wrong version number.
E0923 13:36:36.728213118 20011 ssl_transport_security.cc:1455] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:ssl3_get_record:wrong version number.
E0923 13:36:41.727937366 20012 ssl_transport_security.cc:1455] Handshake failed with fatal error SSL_ERROR_SSL: error:1408F10B:SSL routines:ssl3_get_record:wrong version number.

Also I tried to run with code snippet, still showing the above error. Code snippet is pasted below I couldn’t find what is causing the issue. Please help me. Thanks in Advance

from sqlalchemy import *
db_uri = “dremio+flight://admin:admin123@instance-1:32010/dremio;SSL=0”
engine = create_engine(db_uri)
sql = 'SELECT * FROM sys.options limit 5 – SQL Alchemy Flight Test ’

result = engine.execute(sql)

I have the same issue - did you find solution?

Hi @shaggy and @Arjun1 ,
The setting should be UseEncryption=false rather than SSL=0.
Also the separator between the schema and additional options is ?, then & (similar to HTTP URI parameters):
eg:

dremio+flight://admin:admin123@instance-1:32010/dremio?UseEncryption=false&<option>=<value>”

Also, the sqlalchemy_dremio module has been updated to version 3.0.2 which has some Superset bugfixes and fixes case-sensitivity of the connection URI.

1 Like

Yep this worked!)
no error in version 3.0.2)
Thank you