Lakehouseクエリエクスプローラーは、Lakehouseエクスプローラーの内部に直接組み込まれた統合クエリエディタです。 エクスプローラーを離れることなく、Lakehouse データに対して Spark SQL クエリを記述して実行できます。 SQL 分析エンドポイントに切り替えたり、データをすばやく探索するためのノートブックを作成したりする必要はありません。
クエリエクスプローラーは、lakehouse Livyエンドポイントを活用し、Apache Sparkを実行エンジンとして使用しています。 Spark ノートブックと同じ SQL 言語、読み取りおよび書き込み操作のサポート、大規模なデータセットに効率的にクエリを実行する機能が得られます。
クエリ エクスプローラーを開く
次の方法で、Lakehouse エクスプローラーからクエリ エクスプローラーを開くことができます。
- 上部のナビゲーション メニュー - 上部のナビゲーション メニューから [新しい SparkSQL クエリ ] を選択します。 空のクエリ タブが Lakehouse エクスプローラー内でインラインで開きます。
-
左側のナビゲーション メニュー - エクスプローラー ツリーで任意のテーブル、ビュー、またはショートカットを右クリックし、[ 新しい SparkSQL クエリ] を選択します。 クエリ タブが開き、事前設定された
SELECT * FROM <table> LIMIT 100ステートメントが表示されます。
クエリ エクスプローラーを開くと、エクスプローラー ツリーは左側に表示されたままになるため、クエリの作成中にスキーマとテーブルを参照できます。
クエリ エディターの機能
クエリ エディターは、Spark SQL の生産性の高い作成エクスペリエンスを提供します。
-
IntelliSense - テーブル名、列名、スキーマ、および SQL 関数のオートコンプリート。
FROM入力すると、IntelliSense によって、使用可能なレイクハウス、スキーマ、およびテーブルが提案されます。 クエリでテーブルが参照されると、列の候補が表示されます。 テーブル名の上にカーソルを合わせると、その列がポップアウトに表示されます。 - 構文の強調表示 - 色分けされた SQL キーワード、識別子、リテラル。
- [書式 ] - ツール バーの [書式 ] を選択して、SQL の自動インデントと構造化を行います。
- 実行とキャンセル - クエリを実行するには [実行 ] を選択し、実行中のクエリを停止するには [キャンセル] を選択します。
- 行番号とコード 折りたたみ - ナビゲーションを容易にするために、長いクエリ セクションを折りたたみます。
動的タブ
複数のクエリ タブを同時に開き、すぐに切り替えることができます。 各タブは、独自のクエリ テキスト、実行状態、および結果を個別に保持します。
新しいタブを開くには、リボンまたはコンテキスト メニューから [新しい SparkSQL クエリ ] を選択します。 タブを閉じるには、タブの [X ] を選択します。1 つのタブを閉じても、他のタブには影響しません。
動的タブは、データのさまざまな側面を同時に調べる必要がある場合に便利です。 たとえば、注文用に 1 つのタブ、1 つは顧客用、1 つは地域の内訳用です。
Note
タブはセッション間で永続的ではありません。 レイクハウスを閉じたり、離れたりすると、開いているすべてのタブとそのクエリ コンテンツが失われます。
クエリを実行する
クエリ ウィンドウのツール バーから [ 実行 ] を選択すると、クエリ エクスプローラーは lakehouse Livy エンドポイントを使用する軽量の Spark セッションに接続し、高速起動用に最適化されます。
クエリ エクスプローラーの下部にあるステータス バーに、現在のセッション状態が表示されます。
| Status | Meaning |
|---|---|
| 未接続 | アクティブな Spark セッションはありません。 |
| セッションの開始 | 新しい Spark セッションが初期化されています (コールド スタートのみ)。 |
| クエリの実行 | クエリが実行されています。 |
| セッションの準備完了 | セッションはアクティブであり、次のクエリの準備ができています。 |
後続のクエリ (ウォーム スタート) では、"セッションの開始" ステップなしですぐに実行が開始されます。
サポートされている SQL ステートメント
クエリ エクスプローラーでは、次のようなすべての Spark SQL ステートメントがサポートされます。
- SELECT - スキーマと lakehouse 間でデータのクエリを実行し、調査します。
- DML — データ変更のための INSERT、UPDATE、DELETE、MERGE。
- DDL - スキーマ管理用の CREATE VIEW、CREATE TABLE、ALTER、DROP。
- ユーティリティ ステートメント — DESCRIBE、SHOW TABLES、SHOW SCHEMAS、およびその他のメタデータ クエリ。
Note
クエリ エクスプローラーでは、具体化されたビューの作成はサポートされていません。 クエリ エクスプローラーで具体化されたビュー構文が検出された場合は、代わりにノートブックを使用するように求めるダイアログが表示されます。
スキーマ間およびレイクハウス間のクエリ実行
1 つのクエリ タブから、同じレイクハウス内の異なるスキーマ間、同じワークスペース内の複数のレイクハウス間、および異なるワークスペース内の複数の lakehouse 間のテーブルに対してクエリを実行できます。
-
クロススキーマ —
schema_name.table_name構文 (たとえば、SELECT * FROM sales.orders JOIN marketing.campaigns ON ...) を使用してテーブルを参照します。 -
クロスレイクハウス — 完全修飾パス
workspace_name.lakehouse_name.schema_name.table_nameを使用して、他のレイクハウス内のテーブルに対してクエリを実行します。
Tip
レイクハウスの追加 を使用して参照先のレイクハウスをエクスプローラー ペインに追加すると、レイクハウス間クエリに対する IntelliSense の候補表示が有効になります。 参照を追加しなくてもクエリは正常に実行されますが、オートコンプリートのサポートは受けられません。
Results
クエリ結果は、エディターの下のグリッドに表示されます。 結果グリッドには次の情報が表示されます。
- 列の並べ替え - 昇順または降順で並べ替える列ヘッダーを選択します。
- 検索とフィルター - 結果をインラインでフィルター処理して、特定の値を検索します。
- 行数インジケーター - 返された行の数を示します。 既定では、結果の上限は 1,000 行です。 結果が切り捨てられると、明確なインジケーターが表示されます。
- コピー - セルを選択し、Ctrl + C キーを押してコピーします。 Excelまたはその他のツールに貼り付けます。
- エクスポート — 結果を CSV、JSON、または XML 形式でダウンロードします。
- インライン グラフ - 結果セットから直接、横棒グラフ、折れ線グラフ、円グラフ、およびその他のグラフの種類を作成します。 グラフは、グラフの種類または基になるデータを変更すると更新されます。 視覚化コードは必要ありません。
ビューを作成する
クエリ エクスプローラーから直接ビューを作成して、再利用可能な資産として便利なクエリを保持できます。 ビューは、テーブルと共に Lakehouse エクスプローラー ツリーに自動的に表示されます。
ビューを作成するには、次の 2 つの方法があります。
SQL ステートメント - エディターで
CREATE VIEWステートメントを記述して実行します。 Spark ビューの詳細については、 Lakehouse の Spark ビューを参照してください。CREATE VIEW my_view AS SELECT customer_id, SUM(amount) AS total FROM sales.orders GROUP BY customer_idビューとして保存 - SELECT クエリを実行した後、ツールバーの [ビューとして保存] を選択します。 ダイアログでビューの名前を指定します。
Note
ビューを作成するには、レイクハウスへの書き込みアクセス権が必要です。 書き込みアクセス許可がない場合は、ビューの作成でアクセス許可エラーが返されます。
Limitations
- Spark SQL のみ - クエリ エクスプローラーは Spark SQL をサポートします。 PySpark、Scala、R はサポートされていません。 多言語サポートの場合は、ノートブックを使用 します。
- クエリの保存なし - セッション間でクエリが保持されることはありません。 便利なクエリを保持するには、ビューとして保存します。
- クエリ履歴なし - 以前のクエリは格納されません。 クエリの保存と履歴は、今後のリリースで予定されています。
- 具体化されたビューの作成なし - 具体化されたビュー (MLV) の作成はサポートされていません。 ノートブックを使用して具体化されたビューを作成します。
- リアルタイム コラボレーションなし - クエリ エクスプローラーでは、ライブ共同編集はサポートされていません。
- クエリ スケジュールなし - スケジュールされたクエリの実行には、 パイプライン またはノートブックを使用します。