cancel
Showing results forย 
Search instead forย 
Did you mean:ย 
Data Engineering
Join discussions on data engineering best practices, architectures, and optimization strategies within the Databricks Community. Exchange insights and solutions with fellow data engineers.
cancel
Showing results forย 
Search instead forย 
Did you mean:ย 

Import Data from Databricks to SQL Server

KSharmaDE
New Contributor

Hi our team wants to import data from Databricks catalog tables to SQL server.

Is it possible to do so using SSIS package on SQL server ? what settings are required on Databricks tables?

Suggest me some ETL tools and how to do it using SSIS

1 ACCEPTED SOLUTION

Accepted Solutions

Ashwin_DSA
Databricks Employee
Databricks Employee

Hi @KSharmaDE,

Yes, it is possible to load data from Databricks Unity Catalog tables into SQL Server using SSIS. The common approach is to use the Databricks Simba ODBC driver in SSIS, connect to a Databricks SQL warehouse (preferred) or a supported cluster endpoint, and then use SSIS data flow tasks to read from Databricks and write to SQL Server.

Databricks itself does not require special "table settings" for SSIS. The main requirements are connectivity, a valid SQL endpoint, and proper Unity Catalog permissions on the catalog/schema/table.

You can refer to the instructions here

In practice, configure these on the SSIS side:

  • Databricks ODBC/JDBC driver
  • Server hostname
  • Port 443
  • HTTP Path of the SQL warehouse / cluster
  • Authentication (PAT or supported auth method)

Typical SSIS flow:

  1. Install the Databricks Simba ODBC driver on the SSIS/SQL Server host.
  2. Create a DSN pointing to the Databricks SQL warehouse.
  3. In SSIS, use an ODBC Source (or ADO.NET source if your setup supports it) to query the Databricks table or view.
  4. Use Data Conversion / Derived Column transforms if needed.
  5. Load the output into SQL Server using OLE DB Destination / SQL Server Destination.

Some additional recommendations.... Consider Databricks SQL warehouse over a cluster for BI/ETL-style connectivity. For large loads, SSIS over ODBC works, but it may not be the fastest option for very high-volume ingestion. If the requirement is a modern managed ETL approach, consider Databricks-native pipelines or managed ingestion tools instead.

If this answer resolves your question, could you mark it as โ€œAccept as Solutionโ€? That helps other users quickly find the correct fix.

Regards,
Ashwin | Delivery Solution Architect @ Databricks
Helping you build and scale the Data Intelligence Platform.
***Opinions are my own***

View solution in original post

3 REPLIES 3

ziafazal
Databricks Partner

Hi @KSharmaDE 

You can create ODBC/ADO.NET Connection on your machine running the SSIS to import data from databricks tables. Databricks provides ODBC driver which can be use to create ODBC/ADO.NET Connection.
Follow these Steps 
1. Download and install ODBC driver 
2. Create a new connection with Databricks host using ODBC driver
3. Create Databricks table as source and write SQL to select fields from source table in data flow task
4. Configure SQL server as destination in data flow task
5. Run SSIS task to populate data from source to destination

You can see the details in this article.

Thanks

Ashwin_DSA
Databricks Employee
Databricks Employee

Hi @KSharmaDE,

Yes, it is possible to load data from Databricks Unity Catalog tables into SQL Server using SSIS. The common approach is to use the Databricks Simba ODBC driver in SSIS, connect to a Databricks SQL warehouse (preferred) or a supported cluster endpoint, and then use SSIS data flow tasks to read from Databricks and write to SQL Server.

Databricks itself does not require special "table settings" for SSIS. The main requirements are connectivity, a valid SQL endpoint, and proper Unity Catalog permissions on the catalog/schema/table.

You can refer to the instructions here

In practice, configure these on the SSIS side:

  • Databricks ODBC/JDBC driver
  • Server hostname
  • Port 443
  • HTTP Path of the SQL warehouse / cluster
  • Authentication (PAT or supported auth method)

Typical SSIS flow:

  1. Install the Databricks Simba ODBC driver on the SSIS/SQL Server host.
  2. Create a DSN pointing to the Databricks SQL warehouse.
  3. In SSIS, use an ODBC Source (or ADO.NET source if your setup supports it) to query the Databricks table or view.
  4. Use Data Conversion / Derived Column transforms if needed.
  5. Load the output into SQL Server using OLE DB Destination / SQL Server Destination.

Some additional recommendations.... Consider Databricks SQL warehouse over a cluster for BI/ETL-style connectivity. For large loads, SSIS over ODBC works, but it may not be the fastest option for very high-volume ingestion. If the requirement is a modern managed ETL approach, consider Databricks-native pipelines or managed ingestion tools instead.

If this answer resolves your question, could you mark it as โ€œAccept as Solutionโ€? That helps other users quickly find the correct fix.

Regards,
Ashwin | Delivery Solution Architect @ Databricks
Helping you build and scale the Data Intelligence Platform.
***Opinions are my own***

sudhirr
New Contributor II

Yes, it is possible to integrate SSIS packages with Delta tables using JDBC/ODBC connectivity.

Required on Databricks side:

  • SQL Warehouse or interactive cluster
  • JDBC/ODBC driver
  • Hostname, HTTP Path, Port 443, and PAT token
  • Proper table permissions in Unity Catalog

Recommended approach:
SSIS โ†’ JDBC/ODBC โ†’ Databricks SQL Warehouse โ†’ Delta Tables

For better performance, use batch/bulk loads instead of row-by-row inserts.
In modern architectures, many teams use SSIS for orchestration and move heavy transformations to Databricks notebooks, Lakeflow, or ADF.