Query Planとは
開発者コンソール上で実行できるSOQLのパフォーマンス評価ツール
初期設定
Query Plan機能はデフォルトでは無効のため、下記手順に従って有効化する必要があります。
①「開発者コンソール>Help>Preferences」をクリック
②「Enable Query Plan」にチェックを付けて保存
Query Planの実行
Query Planを有効化すると、開発者コンソール下部の「Query Editor」タブ内に「Query Plan」ボタンが表示されるようになります。
SOQL文を入力し、「Query Plan」ボタンを押すと、結果が確認できます。
結果として返ってくる値の意味
Cardinality:返ってくるレコード数(の予想)
Fields:クエリオプティマイザにより利用されるインデックス項目。クエリ時にインデックスを使用していない場合、値はnullとなる。
Leading Operation Type:クエリ最適化のためにSalesforceが利用する操作種別。
- Index:クエリでインデックスを使用している
- Sharing:クエリで共有ルールに基づいたインデックスを使用している
- Table Scan:クエリ対象オブジェクトの全レコードがスキャンされている
- Other:Salesforceの内部的な最適化が適用されている
Cost:(クエリオプティマイザの選択的閾値と比較した場合の)クエリのコスト。値が1を超えるクエリは決して選択的(Selective)とならない。
SObject Cardinality:クエリ対象のオブジェクトのレコード数
SOQLの最適化
SOQLの最適化が必要な場合は、こちらの方針に従って、SOQLをチューニングする。