次の方法で共有


レガシ Databricks JDBC ドライバー

メモ

この記事は、Databricks JDBC Simba ドライバーに適用されます。 Databricks で開発された JDBC ドライバーについては、「Databricks JDBC ドライバー (OSS)」を参照してください。

次の情報は、旧バージョンの Databricks JDBC ドライバー 2.6.22 以前に適用されます。 Databricks JDBC ドライバー 2.6.25 以降の詳細については、「Databricks JDBC ドライバー」を参照してください。

Azure Databricks 個人用アクセス トークンを使って認証する際に JDBC 接続 URL を使うには、次のプロパティ コレクションを設定し、<personal-access-token> をお使いの Azure Databricks 個人用アクセス トークンに置き換えます。

jdbc:spark://<server-hostname>:443;httpPath=<http-path>;transportMode=http;SSL=1;UID=token;PWD=<personal-access-token

Databricks では、使用可能な最も安全な認証フローを使用することをお勧めします。 この記事で説明する認証フローには、他のフローに存在しないリスクがあります。 このフローは、マネージド ID など、より安全なフローが実行可能ではない場合にのみ使用してください。

Azure Databricks 個人用アクセス トークンを使って認証する際に Java コードを使うには、次のプロパティ コレクションを設定し、<personal-access-token> をお使いの Azure Databricks 個人用アクセス トークンに置き換えます。

// ...
String url = "jdbc:spark://<server-hostname>:443;httpPath=<http-path>;transportMode=http;SSL=1";
Properties p = new java.util.Properties();
p.put("UID", "token");
p.put("PWD", "<personal-access-token>");
// ...
DriverManager.getConnection(url, p);
// ...

Microsoft Entra ID トークンを使って認証する際に JDBC 接続 URL を使うには、次のプロパティ コレクションを設定し、<microsoft-entra-id-token> を Microsoft Entra ID トークンに置き換えます。

 jdbc:spark://<server-hostname>:443;httpPath=<http-path>;transportMode=http;SSL=1;AuthMech=11;Auth_Flow=0;Auth_AccessToken=<microsoft-entra-id-token>

Microsoft Entra ID トークンを使って認証する際に Java コードを使うには、次のプロパティ コレクションを設定し、<microsoft-entra-id-token> を Microsoft Entra ID トークンに置き換えます。

String url = "jdbc:spark://<server-hostname>:443;httpPath=<http-path>;transportMode=http;SSL=1";
Properties p = new java.util.Properties();
p.put("AuthMech", "11");
p.put("Auth_Flow", "0");
p.put("Auth_AccessToken", "<microsoft-entra-id-token>");
// ...
DriverManager.getConnection(url, p);
// ...
  • レガシ Databricks JDBC ドライバーの場合、transportModeSSL の各プロパティを設定する必要があります。 Databricks では、これらの値をそれぞれ http1 に設定することを推奨しています。
  • ニーズに合わせて調整できる完全な Java コード例については、「Databricks JDBC ドライバーの認証設定」の冒頭を参照してください。
  • <server-hostname><http-path> の値を取得するには、以下の手順を参照してください。

Azure Databricks クラスターの接続の詳細を取得するには:

  1. Azure Databricks ワークスペースにログインします。
  2. サイドバーで、[計算] をクリックします。
  3. 使用可能なクラスターの一覧で、ターゲット クラスターの名前をクリックします。
  4. [構成] タブで、[詳細オプション] を展開します。
  5. [JDBC/ODBC] タブをクリックします。
  6. [サーバー ホスト名][ポート][HTTP パス] など、必要な接続の詳細をコピーします。

Databricks SQL ウェアハウスの接続の詳細を取得するには、以下の操作を実行します。

  1. Azure Databricks ワークスペースにログインします。
  2. サイドバーで、[SQL] > [SQL ウェアハウス] をクリックします。
  3. 使用可能な倉庫の一覧で、ターゲット ウェアハウスの名前をクリックします。
  4. [接続の詳細] タブで、[サーバー ホスト名][ポート][HTTP パス] など、必要な接続の詳細をコピーします。

Azure Databricks クラスターでドライバーを使うには、呼び出し元ユーザーまたはサービス プリンシパルがクラスターに接続するときまたはクラスターを再起動するときに必要な 2 つのアクセス許可があります。

  • アタッチ可能: 実行中のクラスターに接続するためのアクセス許可。
  • 再起動可能: 接続時にクラスターが終了されている場合に、クラスターの起動を自動的にトリガーするためのアクセス許可。

Databricks SQL ウェアハウスでドライバーを使用するには、呼び出し元のユーザーまたはサービス プリンシパルに、CAN USE アクセス許可が必要です。 Databricks SQL ウェアハウスが停止している場合は、自動的に起動します。

メモ

DirectQuery モードで Microsoft Power BI を使うときは、Databricks SQL ウェアハウスをお勧めします。