Databricks JDBC ドライバーのドライバー機能設定
この記事は、Databricks JDBC Simba ドライバーに適用されます。 Databricks が開発した JDBC ドライバーについては、Databricks JDBC ドライバー (OSS)を参照してください。
この記事では、 Databricks JDBC ドライバーの特別なドライバー機能と高度なドライバー機能設定を構成する方法について説明します。
Databricks JDBC ドライバーには、次の特殊で高度なドライバー機能設定が用意されています。
- JDBC での ANSI SQL-92 クエリのサポート
- デフォルトのカタログとスキーマ
- 追跡用のクエリタグ
- JDBCで大きなクエリ結果を抽出する
- JDBC でのArrowのシリアル化
- ログ記録を有効にする
JDBC での ANSI SQL-92 クエリのサポート
レガシーSpark JDBCドライバーは、ANSI SQL-92言語のSQLクエリーを許可しており、クエリーをサーバーに送信する前にDatabricks SQL言語に変換します。ただし、アプリケーションがDatabricks SQLを直接生成する場合、またはアプリケーションがDatabricksに固有の非ANSI SQL-92標準SQL構文を使用する場合、Databricksでは接続構成としてUseNativeQuery=1
を設定することをお勧めしています。この設定を使用すると、ドライバーはSQLクエリーをそのままDatabricksに渡します。
デフォルトのカタログとスキーマ
デフォルトのカタログとスキーマを指定するには、JDBC接続URLにConnCatalog=<catalog-name>;ConnSchema=<schema-name>
を追加します。
追跡用のクエリタグ
プレビュー
この機能はプライベートプレビュー段階です。アクセスをリクエストするには、アカウント チームにお問い合わせください。
追跡と分析の目的で、 SQLクエリにキーと値のタグを添付できます。 クエリ タグは、クエリの識別と分析のためにsystem.query.history
テーブルに表示されます。
接続にクエリ タグを追加するには、 JDBC接続 URL にssp_query_tags
問題を含めます。
jdbc:databricks://<server-hostname>:443;httpPath=<http-path>;ssp_query_tags=key1:value1,key2:value2
クエリ タグを、各キーと値がコロンで区切られた、コンマ区切りのキーと値のペアとして定義します (例: key1:value1,key2:value2
)。
JDBCで大きなクエリ結果を抽出する
大規模なクエリー結果を抽出するときに最高のパフォーマンスを実現するには、以下の最適化が含まれている最新バージョンのJDBCドライバーを使用してください。
JDBC でのArrowのシリアル化
JDBC ドライバー バージョン 2.6.16 以降では、 Apache Arrow を使用した最適化されたクエリ結果のシリアル化形式がサポートされています。
ログ記録を有効にする
JDBC ドライバーでログ記録を有効にするには、 LogLevel
プロパティを 1
から 6
までの重大なイベントのみをログに記録するように設定して、すべてのドライバー アクティビティをログに記録します。 LogPath
プロパティを、ログ ファイルを保存するフォルダーへの完全なパスに設定します。
詳細については、『 Databricks JDBC Driver Guide』のConfiguring Logging
セクションを参照してください。