logo

Install Database Drivers

Superset requires a Python DB-API database driver and a SQLAlchemy dialect to be installed for each datastore you want to connect to.

You can read more here about how to install new database drivers into your Superset configuration.

Supported Databases and Dependencies

Superset does not ship bundled with connectivity to databases, except for SQLite, which is part of the Python standard library. You’ll need to install the required packages for the database you want to use as your metadata database as well as the packages needed to connect to the databases you want to access through Superset.

A list of some of the recommended packages.

DatabasePyPI packageConnection String
Amazon Athenapip install "PyAthenaJDBC>1.0.9 , pip install "PyAthena>1.2.0awsathena+rest://{aws_access_key_id}:{aws_secret_access_key}@athena.{region_name}.amazonaws.com/{
Amazon Redshiftpip install sqlalchemy-redshift redshift+psycopg2://<userName>:<DBPassword>@<AWS End Point>:5439/<Database Name>
Apache Drillpip install sqlalchemy-drilldrill+sadrill:// For JDBC drill+jdbc://
Apache Druidpip install pydruiddruid://<User>:<password>@<Host>:<Port-default-9088>/druid/v2/sql
Apache Hivepip install pyhivehive://hive@{hostname}:{port}/{database}
Apache Impalapip install impalaimpala://{hostname}:{port}/{database}
Apache Kylinpip install kylinpykylin://<username>:<password>@<hostname>:<port>/<project>?<param1>=<value1>&<param2>=<value2>
Apache Pinotpip install pinotdbpinot+http://CONTROLLER:5436/ query?server=http://CONTROLLER:5983/
Apache Solrpip install sqlalchemy-solrsolr://{username}:{password}@{hostname}:{port}/{server_path}/{collection}
Apache Spark SQLpip install pyhivehive://hive@{hostname}:{port}/{database}
Azure MS SQLpip install pymssqlmssql+pymssql://UserName@presetSQL:TestPassword@presetSQL.database.windows.net:1433/TestSchema
Big Querypip install pybigquerybigquery://{project_id}
ClickHousepip install sqlalchemy-clickhouseclickhouse://{username}:{password}@{hostname}:{port}/{database}
CockroachDBpip install cockroachdbcockroachdb://root@{hostname}:{port}/{database}?sslmode=disable
Dremiopip install sqlalchemy_dremiodremio://user:pwd@host:31010/
Elasticsearchpip install elasticsearch-dbapielasticsearch+http://{user}:{password}@{host}:9200/
Exasolpip install sqlalchemy-exasolexa+pyodbc://{username}:{password}@{hostname}:{port}/my_schema?CONNECTIONLCALL=en_US.UTF-8&driver=EXAODBC
Google Sheetspip install gsheetsdbgsheets://
IBM Db2pip install ibm_db_sadb2+ibm_db://
MySQLpip install mysqlclientmysql://<UserName>:<DBPassword>@<Database Host>/<Database Name>
Oraclepip install cx_Oracleoracle://
PostgreSQLpip install psycopg2postgresql://<UserName>:<DBPassword>@<Database Host>/<Database Name>
Prestopip install pyhivepresto://
SAP Hanapip install hdbcli sqlalchemy-hana or pip install apache-superset[hana]hana://{username}:{password}@{host}:{port}
Snowflakepip install snowflake-sqlalchemysnowflake://{user}:{password}@{account}.{region}/{database}?role={role}&warehouse={warehouse}
SQLitesqlite://
SQL Serverpip install pymssqlmssql://
Teradatapip install sqlalchemy-teradatateradata://{user}:{password}@{host}
Verticapip install sqlalchemy-vertica-pythonvertica+vertica_python://<UserName>:<DBPassword>@<Database Host>/<Database Name>

Note that many other databases are supported, the main criteria being the existence of a functional SQLAlchemy dialect and Python driver. Searching for the keyword "sqlalchemy + (database name)" should help get you to the right place.

If your database or data engine isn't on the list but a SQL interface exists, please file an issue on the Superset GitHub repo, so we can work on documenting and supporting it.

StackOverflow and the Superset community Slack are great places to get help with connecting to databases in Superset.