Connect and Query Live Bitbucket Data in Databricks with CData Connect AI

Mohsin Turki
Mohsin Turki
Technical Marketing Engineer
Use CData Connect AI to integrate live Bitbucket data into Databricks and enable direct, live querying and analysis without replication.

Databricks is a leading AI cloud-native platform that unifies data engineering, machine learning, and analytics at scale. Its powerful data lakehouse architecture combines the performance of data warehouses with the flexibility of data lakes. Integrating Databricks with CData Connect AI gives organizations live, real-time access to Bitbucket data without the need for complex ETL pipelines or data duplication—streamlining operations and reducing time-to-insights.

In this article, we'll walk through how to configure a secure, live connection from Databricks to Bitbucket using CData Connect AI. Once configured, you'll be able to access Bitbucket data directly from Databricks notebooks using standard SQL—enabling unified, real-time analytics across your data ecosystem.

Overview

Here is an overview of the simple steps:

  1. Step 1 — Connect and Configure: In CData Connect AI, create a connection to your Bitbucket source, configure user permissions, and generate a Personal Access Token (PAT).
  2. Step 2 — Query from Databricks: Install the CData JDBC driver in Databricks, configure your notebook with the connection details, and run SQL queries to access live Bitbucket data.

Prerequisites

Before you begin, make sure you have the following:

  1. An active Bitbucket account.
  2. A CData Connect AI account. You can log in or sign up for a free trial here.
  3. A Databricks account. Sign up or log in here.

Step 1: Connect and Configure a Bitbucket Connection in CData Connect AI

1.1 Add a Connection to Bitbucket

CData Connect AI uses a straightforward, point-and-click interface to connect to available data sources.

  1. Log into Connect AI, click Sources on the left, and then click Add Connection in the top-right.
  2. Adding a Connection in CData Connect AI
  3. Select "Bitbucket" from the Add Connection panel.
  4. Selecting a data source
  5. Enter the necessary authentication properties to connect to Bitbucket.

    For most queries, you must set the Workspace. The only exception to this is the Workspaces table, which does not require this property to be set, as querying it provides a list of workspace slugs that can be used to set Workspace. To query this table, you must set Schema to 'Information' and execute the query SELECT * FROM Workspaces>.

    Setting Schema to 'Information' displays general information. To connect to Bitbucket, set these parameters:

    • Schema: To show general information about a workspace, such as its users, repositories, and projects, set this to Information. Otherwise, set this to the schema of the repository or project you are querying. To get a full set of available schemas, query the sys_schemas table.
    • Workspace: Required if you are not querying the Workspaces table. This property is not required for querying the Workspaces table, as that query only returns a list of workspace slugs that can be used to set Workspace.

    Authenticating to Bitbucket

    Bitbucket supports OAuth authentication only. To enable this authentication from all OAuth flows, you must create a custom OAuth application, and set AuthScheme to OAuth.

    Be sure to review the Help documentation for the required connection properties for you specific authentication needs (desktop applications, web applications, and headless machines).

    Creating a custom OAuth application

    From your Bitbucket account:

    1. Go to Settings (the gear icon) and select Workspace Settings.
    2. In the Apps and Features section, select OAuth Consumers.
    3. Click Add Consumer.
    4. Enter a name and description for your custom application.
    5. Set the callback URL:
      • For desktop applications and headless machines, use http://localhost:33333 or another port number of your choice. The URI you set here becomes the CallbackURL property.
      • For web applications, set the callback URL to a trusted redirect URL. This URL is the web location the user returns to with the token that verifies that your application has been granted access.
    6. If you plan to use client credentials to authenticate, you must select This is a private consumer. In the driver, you must set AuthScheme to client.
    7. Select which permissions to give your OAuth application. These determine what data you can read and write with it.
    8. To save the new custom application, click Save.
    9. After the application has been saved, you can select it to view its settings. The application's Key and Secret are displayed. Record these for future use. You will use the Key to set the OAuthClientId and the Secret to set the OAuthClientSecret.
    Configuring a connection (Salesforce is shown)
  6. Click Save & Test in the top-right.
  7. Navigate to the Permissions tab on the Bitbucket Connection page and update the user-based permissions based on your preferences. Updating permissions

1.2 Generate a Personal Access Token (PAT)

When connecting to Connect AI through the REST API, the OData API, or the Virtual SQL Server, a Personal Access Token (PAT) is used to authenticate the connection to Connect AI. PAT functions as an alternative to your login credentials for secure, token-based authentication. It is a best practice to create a separate PAT for each service to maintain granularity of access.

  1. Click on the Gear icon () at the top right of the Connect AI app to open the settings page.
  2. On the Settings page, go to the Access Tokens section and click Create PAT.
  3. Give the PAT a name and click Create. Creating a new PAT
  4. Note: The personal access token is only visible at creation, so be sure to copy it and store it securely for future use.

Step 2: Connect and Query Bitbucket Data in Databricks

Follow these steps to establish a connection from Databricks to Bitbucket. You'll install the CData JDBC Driver for Connect AI, add the JAR file to your cluster, configure your notebooks, and run SQL queries to access live Bitbucket data data.

2.1 Install the CData JDBC Driver for Connect AI

  1. In CData Connect AI, click the Integrations page on the left. Search for JDBC or Databricks, click Download, and select the installer for your operating system.
  2. Once downloaded, run the installer and follow the instructions:
    • For Windows: Run the setup file and follow the installation wizard.
    • For Mac/Linux: Unpack the archive and move the folder to /opt or /Applications. Make sure you have execute permissions.
  3. After installation, locate the JAR file in the installation directory:
    • Windows:
      C:\Program Files\CData\CData JDBC Driver for Connect AI\lib\cdata.jdbc.connect.jar
    • Mac/Linux:
      /Applications/CData/CData JDBC Driver for Connect AI/lib/cdata.jdbc.connect.jar

2.2 Install the JAR File on Databricks

  1. Log in to Databricks. In the navigation pane, click Compute on the left. Start or create a compute cluster. Launching a compute cluster in Databricks
  2. Click on the running cluster, go to the Libraries tab, and click Install New at the top right. Accessing the Libraries tab in Databricks
  3. In the Install Library dialog, select DBFS, and drag and drop the cdata.jdbc.connect.jar file. Click Install. Uploading the JDBC driver JAR to DBFS

2.3 Query Bitbucket Data in a Databricks Notebook

Notebook Script 1 — Define JDBC Connection:

  1. Paste the following script into the notebook cell:

driver = "cdata.jdbc.connect.ConnectDriver"
url = "jdbc:connect:AuthScheme=Basic;User=your_username;Password=your_pat;URL=https://cloud.cdata.com/api/;DefaultCatalog=Your_Connection_Name;"
  1. Replace:
    • your_username - With your CData Connect AI username
    • your_pat - With your CData Connect AI Personal Access Token (PAT)
    • Your_Connection_Name - With the name of your Connect AI data source, from the Sources page
  2. Run the script.

Notebook Script 2 — Load DataFrame from Bitbucket data:

  1. Add a new cell for this second script. From the menu on the right side of your notebook, click Add cell below.
  2. Paste the following script into the new cell:

remote_table = spark.read.format("jdbc") \
  .option("driver", "cdata.jdbc.connect.ConnectDriver") \
  .option("url", "jdbc:connect:AuthScheme=Basic;User=your_username;Password=your_pat;URL=https://cloud.cdata.com/api/;DefaultCatalog=Your_Connection_Name;") \
  .option("dbtable", "YOUR_SCHEMA.YOUR_TABLE") \
  .load()
  1. Replace:
    • your_username - With your CData Connect AI username
    • your_pat - With your CData Connect AI Personal Access Token (PAT)
    • Your_Connection_Name - With the name of your Connect AI data source, from the Sources page
    • YOUR_SCHEMA.YOUR_TABLE - With your schema and table, for example, Bitbucket.Issues
  2. Run the script.

Notebook Script 3 — Preview Columns:

  1. Similarly, add a new cell for this third script.
  2. Paste the following script into the new cell:

display(remote_table.select("ColumnName1", "ColumnName2"))
  1. Replace ColumnName1 and ColumnName2 with the actual columns from your Bitbucket structure (e.g. Title, ContentRaw, etc.).
  2. Run the script.
Previewing Bitbucket data data in Databricks notebook

You can now explore, join, and analyze live Bitbucket data directly within Databricks notebooks—without needing to know the complexities of the back-end API and without replicating Bitbucket data.


Try CData Connect AI Free for 14 Days

Ready to simplify real-time access to Bitbucket data? Start your free 14-day trial of CData Connect AI today and experience seamless, live connectivity from Databricks to Bitbucket.

Low code, zero infrastructure, zero replication — just seamless, secure access to your most critical data and insights.

Ready to get started?

Learn more about CData Connect AI or sign up for free trial access:

Free Trial