- Notifications
You must be signed in to change notification settings - Fork126
Databricks SQL Connector for Python
License
databricks/databricks-sql-python
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
The Databricks SQL Connector for Python allows you to develop Python applications that connect to Databricks clusters and SQL warehouses. It is a Thrift-based client with no dependencies on ODBC or JDBC. It conforms to thePython DB API 2.0 specification and exposes aSQLAlchemy dialect for use with tools likepandas andalembic which use SQLAlchemy to execute DDL.
This connector uses Arrow as the data-exchange format, and supports APIs to directly fetch Arrow tables. Arrow tables are wrapped in theArrowQueue class to provide a natural API to get several rows at a time.
You are welcome to file an issue here for general use cases. You can also contact Databricks Supporthere.
Python 3.7 or above is required.
For the latest documentation, see
Install the library withpip install databricks-sql-connector
Note: Don't hard-code authentication secrets into your Python. Use environment variables
export DATABRICKS_HOST=********.databricks.comexport DATABRICKS_HTTP_PATH=/sql/1.0/endpoints/****************export DATABRICKS_TOKEN=dapi********************************
Example usage:
importosfromdatabricksimportsqlhost=os.getenv("DATABRICKS_HOST")http_path=os.getenv("DATABRICKS_HTTP_PATH")access_token=os.getenv("DATABRICKS_TOKEN")connection=sql.connect(server_hostname=host,http_path=http_path,access_token=access_token)cursor=connection.cursor()cursor.execute('SELECT * FROM RANGE(10)')result=cursor.fetchall()forrowinresult:print(row)cursor.close()connection.close()
In the above example:
server-hostnameis the Databricks instance host name.http-pathis the HTTP Path either to a Databricks SQL endpoint (e.g. /sql/1.0/endpoints/1234567890abcdef),or to a Databricks Runtime interactive cluster (e.g. /sql/protocolv1/o/1234567890123456/1234-123456-slid123)personal-access-tokenis the Databricks Personal Access Token for the account that will execute commands and queries
About
Databricks SQL Connector for Python
Topics
Resources
License
Contributing
Uh oh!
There was an error while loading.Please reload this page.