Databricksでは、常にクエリの実行速度向上に取り組んでいます。それでも、クエリがどのように実行計画に変換され、並列実行のために分散されるかをより深く理解したい場合があります。
そこで役立つのがクエリプロファイルです。私たちはDatabricks SQLの最初のリリースでこの機能を導入しました。それ以来、ノートブックやワークフロー用のサーバーレスコンピュート上で実行されるSQLやPythonコード、さらにはDLTパイプラインにまでカバレッジを拡大してきました。
皆様からのフィードバックのおかげで、クエリプロファイルはさらに改善されました。現在、すべてのクラウドで利用可能な新しいエクスペリエンスにより、パフォーマンスの微調整やボトルネックの解決がより簡単で楽しいものになりました。
クエリプロファイルは、SQL、Python DataFrames、またはDLTパイプラインを使用しているかに関わらず、クエリの実行方法を理解するのに役立ちます。各クエリの遅い部分を特定し、実行中に何が起きているかを理解し、パフォーマンスチューニングの判断をサポートします。以下の動画でクエリプロファイルの実際の動作をご覧いただき、ぜひお試しください。
アップグレードされたインターフェースは非常にインタラクティブで直感的です。実行計画を視覚的に調査し、スキャンや結合などの関連する操作を確認し、クエリがまだ実行中か既に完了しているかに関わらず、時間とリソースがどこで消費されたかを示すメトリクスにすぐに深入りできます。
クエリプロファイルはDatabricks全体で見つけることができます:クエリ履歴ページ、ノートブック、SQLエディタ、ジョブUI、DLTパイプラインなどです。また、/optimizeコマンドを使用する際にはDatabricksアシスタントとも統合されています。
開発中のクエリの微調整から、遅いジョブやパイプラインの調査、クエリ履歴システムテーブルを使用して外れ値を発見した後の詳細調査まで、クエリプロファイルはパフォーマンスを理解し改善するための頼れるツールです。
クエリサマリーパネルを一新し、完全なプロファイルを開く前でもクエリの明確な全体像を把握できるようにしました。クエリ履歴からステートメントをレビューしている場合でも、エディタで積極的に開発している場合でも、一目で概要が分かります。
読み取り/書き込みメトリクスとフィルターの効果の視覚的なサマリーが表示されるため、どれだけのデータが削減されたかをすぐに把握できます。また、クエリプロファイルの全体的な形状と複雑さの概要と、時間がどこで費やされたか(実行対最適化などの他のステップ)の高レベルな内訳も確認できます。
クイックリンクから新しいトップオペレータパネルに直接アクセスでき、クエリソースもワンクリックで利用できるため、クエリ履歴やジョブページなど直接編集ができない場所からでも、クエリを生成した正確なコードに簡単に戻ることができます。
さらに、すべてのオペレータにわたって集計された主要メトリクスのサマリーも表示されるため、実行計画全体を見る前でも赤信号をすぐに発見できます。
新しいトップオペレータパネルは、クエリの最も負荷の高い部分をすぐに表示するため、最適化の最大の機会にすばやく焦点を当てることができます。オペレータのランク付けされたリストが表示され、チューニングの取り組みを最も影響のある場所に集中させることが容易になります。
インタラクティブなコントロールも追加されました:パネル内のオペレータをクリックするだけで、グラフのその部分にズームインし、詳細なメトリクスを即座に確認できます。これはクエリプラン内のパフォーマンスのホットスポットをより速く探索する方法です。
実行グラフを再設計し、ナビゲーションをより簡単かつ効率的にしました。任意のノードに直接ズームしたり、キーワードでノードをフィルタリングしたり、より豊富な詳細を表示したりできるようになり、すべてがよりクリーンで洗練されたインターフェース内で行えます。
大きなグラフも管理しやすくなりました。ズームアウト時に最小化されたノードビューを導入し、視覚的なノイズを減らしながらプラン内の最も負荷の高いノードを強調表示します。この機能により、パフォーマンスのホットスポットをすばやく発見し、どこにズームインして詳しく調査するかを決定できます。
何に焦点を当てるかを選択できます:費やされた時間、使用されたメモリ、処理された行数を切り替えられます。特に時間メトリクスは、最も集中的な作業が行われた場所を特定するのに役立ちます—これはクラスター内の複数のワーカーノードで並列にコードを実行したすべてのタスクにわたる実行時間を集計します。
オペレータメトリクスの探索と分析を簡素化しました。更新されたレイアウトでは主要な詳細がより明確に表示され、新しいフィルターオプションにより、気になるメトリクスをすばやく絞り込むことができます—もう無限にスクロールする必要はありません。
分析を他の場所に持ち出す必要がありますか?ワンクリックでオペレータメトリクスをCSVにエクスポートできるようになりました。さらに、スキャンオペレータにテーブルレベルの洞察を追加し、読み取るテーブルの主要な詳細の概要を提供します。
ここで終わりではありません。現在検討中の機能をご紹介します:
他にも見たいものがあれば、ぜひお知らせください—皆様のフィードバックが私たちの開発の原動力です。
早速試してみませんか?Databricks SQLで新しいクエリプロファイルを探索するか、Databricks SQLを無料でお試しください。クエリプロファイルはノートブック、ワークフロー、DLT用のサーバーレスコンピュートもサポートしています!