サポートされている接続プロパティ
この記事では、 Databricks JDBC ドライバー (OSS) でサポートされている接続プロパティについて説明します。
認証とプロキシのプロパティ
次の認証プロパティとプロキシ プロパティは、 Databricks JDBC ドライバー (OSS) でサポートされています。プロパティは大文字と小文字を区別しません。
属性 | デフォルト値 | 説明 |
---|---|---|
|
| 非同期クエリ実行ステータスの各ポーリング間の時間 (ミリ秒単位)。非同期とは、Spark に対するクエリの実行に使用される RPC 呼び出しが非同期であるという事実を指します。これは、JDBC 非同期操作がサポートされているという意味ではありません。 |
|
| ドライバー接続の OAuth2 認証フロー。このプロパティは、 |
|
| JWT 認証用の秘密鍵ファイル (PEM 形式) へのパス。 |
|
| 秘密鍵 JWT 認証のアルゴリズム。サポートされているアルゴリズムは、RSA:RS256、RS384、RS512、PS256、PS384、PS512、およびEC:ES256、ES384、ES512です。 |
|
| 暗号化された秘密キーを復号化するためのパスフレーズ。 |
|
| JWT 認証に必要なキー識別子 (KID)。これは、秘密鍵 JWT を使用する場合に必須です。 |
| 必須 | 認証メカニズム ( |
|
|
|
|
| また、 に |
|
| また、 |
|
|
|
|
|
|
|
| 使用するデフォルト・カタログの名前。 |
|
| 使用するデフォルトのスキーマの名前。これを指定するには、URL の URL の |
|
| Google サービス アカウントを使用した認証を有効にします。 |
|
| Google サービス アカウント認証用の JSON キー ファイルへのパス。 |
|
|
|
|
| OIDC 設定を取得するための OpenID Connect 検出 URL。 |
|
| 新しいアクセス トークンを取得するために使用される OAuth2 更新トークン。 |
|
| OAuth2 フローで使用される認証エンドポイント URL。 |
|
| OAuth2 フローのトークンエンドポイント URL。 |
|
|
|
|
| また、 に |
|
| また、 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| クライアントシークレット認証が制限されているM2Mユースケースで、プライベートキーJWT認証を有効にします。 |
SSL トラスト・ストア構成プロパティー
次の SSL トラスト ストア構成プロパティは、 Databricks JDBC ドライバー (OSS) でサポートされています。プロパティは大文字と小文字を区別しません。
属性 | デフォルト値 | 説明 |
---|---|---|
|
|
|
|
|
|
|
| コネクタが SSL 対応ソケットを介して Spark サーバーと通信するかどうか。 |
|
| SSL 証明書の検証のためのトラストストアファイルへのパス。 |
|
| トラスト・ストア・ファイルのパスワード (パスワードで保護されている場合)。 |
|
| トラストストアのタイプ (JKS や PKCS12 など)。指定しない場合、ドライバーはデフォルトで JKS トラストストアになります。有効なタイプは、 |
|
|
|
トラストストアの種類
JDBC ドライバーは、次の SSL モードとトラストストアタイプをサポートしています。
自己署名証明書モード
自己署名証明書モードを使用するには、接続プロパティを AllowSelfSignedCerts=1
に設定します。このモードでは、任意の証明書を受け入れる trust-all ソケット ファクトリを使用します。
カスタムトラストストア
カスタム・トラスト・ストアを使用するには、 SSLTrustStore
接続プロパティーでカスタム・トラスト・ストア・ファイルを指定します。このトラストストアは、指定されたパスから直接ロードされ、SSL証明書の検証に証明書を使用します。JKS、PKCS12、またはその他のサポートされている形式にすることができます。
次の追加の接続プロパティを指定する必要があります。
SSLTrustStore
: トラストストアファイルへのパスSSLTrustStorePassword
: トラストストアのパスワード (必要な場合)SSLTrustStoreType
: トラストストアのタイプ (オプション、指定されていない場合はデフォルトは JKS です)
Javaシステム・プロパティ・トラスト・ストア
システム・プロパティーのトラスト・ストアを使用するには、 UseSystemTrustStore=1
を設定し、カスタム・トラスト・ストアを指定しないようにしてください。代わりに、Java システム・プロパティ javax.net.ssl.trustStore
を使用してトラスト・ストアを指定します。このプロパティは、次のように -D
フラグを使用して JVM レベルで設定されます。
java -Djavax.net.ssl.trustStore=/path/to/truststore.jks -Djavax.net.ssl.trustStorePassword=changeit ...
JDBC ドライバーは、最初に Java システム・プロパティー javax.net.ssl.trustStore
を確認します。設定されている場合は、JDKのデフォルトのかわりにこのトラスト・ストア・ファイルが使用されます。システム・プロパティが設定されていない場合は、 $JAVA_HOME/lib/security/cacerts
または同様のパスでocatedされているJDKのデフォルトのトラスト・ストア(cacerts)を使用します。
JDK のデフォルト・トラスト・ストア (cacerts)
JDK には、有名な認証局からの証明書を含む cacerts と呼ばれる組み込みのトラストストアが付属しており、これらの CA によって発行された証明書を検証できます。このトラストストアは通常、デフォルトのパスワード「changeit」または「changeme」で $JAVA_HOME/lib/security/cacerts
にあります。
JDK のデフォルト・トラスト・ストアを使用するには、 UseSystemTrustStore=1
を設定し、カスタム・トラスト・ストアや Java システム・プロパティ・トラスト・ストアを指定しないようにします。トラストストアが Java システムプロパティ javax.net.ssl.trustStore
を使用しても指定されている場合、そのトラストストアは無視され、ドライバーはデフォルトの JDK トラストストアからの証明書のみを使用します。
トラストストアの優先順位
ドライバーは、次の優先順位を使用して、使用するトラストストアを決定します。
SSLTrustStore
接続プロパティで指定されたカスタム・トラスト・ストア- Java システム・プロパティで指定されたトラスト・ストア
javax.net.ssl.trustStore
(UseSystemTrustStore=1
の場合) - JDK のデフォルトのトラストストア (cacerts)
セキュリティに関する推奨事項
接続を安全に保つために、Databricks では次のことをお勧めします。
-
本番運用環境の場合:
- 自己署名証明書モード (
AllowSelfSignedCerts=1
) は使用しないでください。 - 公式の CA 署名付き証明書を使用します。
- カスタムトラストストアが必要な場合を除き、
UseSystemTrustStore=1
を使用してください。
- 自己署名証明書モード (
-
カスタムトラストストアの場合:
- デフォルトのトラストストアにない証明書を持つサーバーに接続する場合に使用します。
- トラストストアに完全な証明書チェーンが含まれていることを確認します。
- 適切なアクセス許可でトラスト ストア ファイルを保護します。
SQL 構成プロパティ
次の SQL 構成プロパティは、 Databricks JDBC ドライバー (OSS) でサポートされています。これらについては、「 構成パラメーター」でも説明されています。プロパティは大文字と小文字を区別しません。
属性 | デフォルト値 | 説明 |
---|---|---|
|
| 特定の関数とキャストルールに対して厳密な ANSI SQL 動作を有効にするかどうか。 |
|
| Photonベクトル化クエリエンジンを有効にするかどうか。 |
|
| 日付とタイムスタンプの解析と書式設定に使用されるメソッド。有効な値は、 |
|
| ファイルベースのソースから読み取るときに 1 つのパーティションにパックする最大バイト数。この設定は任意の正の整数にすることができ、オプションで |
|
| 外部メタストアを読み取り専用として扱うかどうかを制御します。 |
|
| SQL ステートメントのタイムアウトを 0 秒から 172800 秒の間で設定します。 |
|
| ローカルタイムゾーンを設定します。 |
|
| Databricks SQL が可能な限り結果をキャッシュして再利用するかどうか。 |
ログ記録のプロパティ
次のログ プロパティは、 Databricks JDBC ドライバー (OSS) でサポートされています。プロパティは大文字と小文字を区別しません。
属性 | デフォルト値 | 説明 |
---|---|---|
|
| ロギング・レベル (0 から 6 までの値):
このプロパティを使用して、コネクタでのログ記録を有効または無効にしたり、ログ ファイルに含まれる詳細の量を指定したりします。 |
| ログのデフォルトパスを決定するために、ドライバーはこれらのシステムプロパティに設定された値を次の優先順位で使用します。
| ログ記録が有効になっているときにコネクタがログファイルを保存するフォルダへの絶対パス (文字列)。接続 URL がすべての JDBC アプリケーションと互換性があることを確認するには、別のバックスラッシュを入力して、ファイルパスのバックスラッシュ (
|
| 上限なし | 許容される最大ログ・ファイル・サイズ (MB 単位) |
| 上限なし | 許可されるログ・ファイルの最大数 |
ログ記録の有効化と構成
JDBC ドライバは、 Simple Logging Facade for Java (SLF4J) および java.util.logging (JUL) フレームワークをサポートしています。ドライバーは、デフォルトで JUL ロギングフレームワークを使用します。
JDBC ドライバーのログ記録を有効にして構成するには、次のようにします。
-
使用するロギングフレームワークを有効にします。
- SLF4J ロギングの場合は、システムプロパティーを
-Dcom.databricks.jdbc.loggerImpl=SLF4JLOGGER
に設定し、SLF4J バインディング実装 (SLF4J バージョン 2.0.13 以上と互換性あり) と対応する構成ファイルをクラスパスに含めます。 - JUL ロギングの場合は、システム・プロパティーを
-Dcom.databricks.jdbc.loggerImpl=JDKLOGGER
に設定します。これがデフォルトです。
- SLF4J ロギングの場合は、システムプロパティーを
-
接続文字列の
LogLevel
プロパティを、ログ ファイルに含める情報レベルに設定します。 -
接続文字列の
LogPath
プロパティを、ログ ファイルを保存するフォルダーへのフル パスに設定します。たとえば、次の接続 URL はロギング レベル 6 を有効にし、ログ ファイルを C に保存します フォルダ:
jdbc: databricks://localhost:11000;LogLevel=6;LogPath=C:\\temp
-
JDBC アプリケーションを再起動し、サーバーに再接続して設定を適用します。
その他の機能プロパティ
次のプロパティを使用すると、 Databricks JDBC ドライバー (OSS) の機能が有効になります。プロパティは大文字と小文字を区別しません。
属性 | デフォルト値 | 説明 |
---|---|---|
|
|
|
|
|
|
|
| HTTP 要求に含める User-Agent エントリ。この値は次の形式です。 |
|
| JDBC ドライバーが Thrift クライアントとステートメント実行APIsのどちらを使用するか . |
| `` | UC ボリューム インジェスト ファイルのダウンロードとアップロードに許可されるローカル パスのコンマ区切りリスト。パスにはサブディレクトリも含まれます。ボリュームを使用したファイルの管理を参照してください。 |
|
| Unity Catalog ボリューム インジェストの再試行可能な HTTP コードのコンマ区切りリスト。 |
|
| Unity Catalog ボリューム インジェスト HTTP 要求の再試行タイムアウト (分単位)。 |
テレメトリ コレクション
テレメトリーにより、Databricks は以下を収集することで、デバッグを効率化し、タイムリーなトラブルシューティングを提供できます。
- クライアント環境の詳細 (ドライバーのバージョン、ランタイム、OS の詳細)
- JDBC 接続設定 (PII データは除く)
- 操作のレイテンシ測定
- 実行結果の形式(インラインJSON、Arrowなど)
- 操作の種類 (実行クエリ、メタデータ クエリ、ボリューム操作)
- エラー分類データ
- 再試行回数
Databricks は厳格なプライバシー基準を維持しており、クエリコンテンツ、結果、または個人を特定できる情報(PII)が収集されないようにしています。