適用対象: Power BI Desktop
Power BI サービス
Power BIでは、データの読み込み時、DirectQuery のインポート時、または DirectQuery の使用時、およびレポートを使用したデータの操作時のクエリ パフォーマンスが最適化されます。 ただし、状況によっては、動作に影響を与えて既定値を変更する場合があります。
Power BIには、次の 2 つの設定グループがあります。
- クエリ実行を Power Query最適化するための設定。 これらの設定は、データをPower BIに読み込むときに、またはデータ変換ステージの一部として DirectQuery クエリを実行するときに使用される速度とリソースに影響します。
- Power BI エンジンのクエリ実行を最適化するための設定。 これらの設定は、データの変換ステージが完了した後のパフォーマンスに影響します。
次の例を考えてみましょう。
| 状況 | ガイダンス |
|---|---|
| データのインポートに時間がかかりすぎる。 | 同時評価の最大数、評価ごとの使用可能なメモリ、または同時実行ジョブの最大数を増やします。 |
| ソース システムの制限が原因ではなく、DirectQuery クエリの実行が遅い。 | 評価ごとに同時評価の最大数および/または使用可能なメモリを増やします。 |
| Power BIは、データのインポート時や DirectQuery クエリの実行時に、コンピューターのリソースの量が多すぎます。 | 同時評価の最大数、評価ごとの使用可能なメモリ、または同時実行ジョブの最大数を減らします。 |
| ソース システムの制限が原因で、DirectQuery クエリの実行が遅い。 | ソース システムで同時クエリの数が制限されている場合は、同時評価の最大数を減らすか、ソースごとのアクティブな接続の最大数を減らします。 |
| Power BIビジュアルを操作するときに応答が遅い | ビジュアルが DirectQuery ソースのデータに基づいている場合は、ソースごとのアクティブな接続の最大数を増やします。 そうでない場合は、同時実行ジョブの最大数を増やします。 |
| Power BI、データのインポートまたは更新が完了している間にコンピューターのリソースの多くを取りすぎている | 同時実行ジョブの最大数を減らします。 |
Power Queryクエリ実行の最適化
この設定グループを使用すると、Power Queryクエリ実行のパフォーマンスを最適化できます。 Power BIでは、このグループに次の設定が用意されています。
- 同時評価の最大数。 これにより、Power Queryでのクエリ実行の並列化のレベルが構成されます。
- 同時評価ごとに使用される最大メモリ。 これにより、評価ごとの使用可能なメモリが構成されます。
注
これらの設定は、Power BI サービスではなく、コンピューターでのPower Query クエリの実行にのみ影響します。
同時評価の最大数
同時評価の数を制御して、Power Queryでのクエリ実行の並列処理のレベルに影響を与えることができます。 既定では、同時評価の最大数は、マシン上の論理 CPU コアの数と等しくなります。 最小値は 1 であり、最大値はマシン上の論理 CPU コア数と等しくなります。
注
この設定は、Power BI エンジンによって実行される同時実行ジョブの最大数にも影響します。 これらの設定間の相互作用について詳しくは、こちらを参照してください。
同時評価ごとに使用される最大メモリ
同時評価ごとの使用可能なメモリを制御できます。 この設定では、評価ごとに使用可能なメモリを MB 単位で構成します。既定では、Power BIの評価あたりの最大メモリ割り当ては 432 MB です。 最小値は 1 (256 以上を推奨) で、理論上の (ただし、推奨されない) 最大値は、マシン上の RAM の 100% を同時評価の最大数で割った値 (前述の同時評価の最大数の設定により設定される) と等しくなります。 ベスト プラクティスとして、この値をマシンの RAM の 90% より高く設定しないことをお勧めします。
Power Query のクエリ実行構成設定の変更
Power BIには、これらの設定を変更する 2 つの方法があります。
- [Power BI デスクトップのオプション] で。
- レジストリの編集。
Power BI デスクトップで
これらの設定は、Power BI Desktop のユーザー インターフェイスで変更できます。 [ファイル] メニュー [オプションと設定][オプション] で、[グローバル] の下にある [データの読み込み] を選択してから、[テーブルの並列読み込み] で以下の設定を変更します。
- 同時評価の最大数
- 同時評価ごとに使用される最大メモリ (MB)
レジストリの設定の場合
適切な DWORD レジストリ値を設定することで、これらの設定を変更することもできます。 また、管理者はこの方法を使用して、組織全体の設定を制御することもできます。
評価コンテナーの数を変更するには、DWORD レジストリ値 を設定します。 評価コンテナーごとの使用可能なメモリを変更するには、DWORD レジストリ値 を設定します。
これらの設定を変更する場合は、上記の最小および最大値にご注意ください。
上記のキーは、お使いのオペレーティング システムに応じて、次のいずれかのフォルダーにあります。
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Microsoft Power BI Desktop
または:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft Power BI Desktop
Power BI エンジンのパフォーマンスの最適化
この設定グループを使用すると、データ変換の手順が完了した後にクエリを処理するPower BI エンジンを最適化できます。 これらの設定は、レポートが発行された後のコンピューターおよびPower BI サービスでのPower BI エンジンのパフォーマンスに影響します。 Power BIでは、このグループに次の設定が用意されています。
- ソースあたりのアクティブな接続の最大数。 これにより、DirectQuery ソースに送信される並列クエリの数が構成されます。
- 同時実行ジョブの最大数。 これにより、更新中にPower BI エンジンによって実行される同時実行タスクの最大数が制御されます。
ソースあたりのアクティブな接続の最大数
基になるデータ ソースごとに DirectQuery によって開かれる接続の "最大" 数を設定できます。これにより、各データ ソースに同時に送信されるクエリ数が制御されます。 この設定は、Power BI Desktop が DirectQuery の使用時にコンピューター上のリソースを過剰に使用している場合、またはソース システムの制限によって DirectQuery クエリの実行が遅い場合に便利です。 この設定の詳細については、「DirectQuery の接続の最大数オプション」を参照してください。
同時実行ジョブの最大数
Power BI エンジンによって実行される同時実行ジョブの数maximumを設定できます。 この設定を使用すると、データ変換の手順が完了した後Power BIパフォーマンスを最適化できます。
この設定の最大値は、Power BI エンジンによって自動的に決定されます。 最大値を変更すると、テーブルの並列読み込みが増減することで、セマンティック モデルの更新パフォーマンスに影響を与える可能性があります。
注
この設定は、同時評価数の最大値設定によって影響を受けます。 これらの設定間の相互作用について詳しくは、こちらを参照してください。
Power BI Desktop で同時ジョブの最大数の設定を変更する
この設定は、Power BI Desktop のユーザー インターフェイスで変更できます。 [ファイル] メニュー [オプションと設定][オプション] で、[現在のファイル] の下にある [データの読み込み] を選択してから、[テーブルの並列読み込み] で任意の設定を選びます。 次のオプションを使用できます。
- Default. この設定では、同時実行ジョブの最大数は 6 です。
- 1 つ。 これにより、同時実行ジョブの最大数が 1 に制限され、テーブルの並列読み込みは実質的に無効になります。
- カスタム。 1 から 30 までの任意の正の数を入力できます。 ただし、Pro セマンティック モデルの場合、6 より大きい数は適用されません。 既定値と同じ 6 未満の数値を指定すると、並列化が制約される可能性があります。
Power BI Desktopで、同時実行可能なジョブの最大数を変更するデータ読み込み並列設定のスクリーンショット。
同時に評価される最大数と並行ジョブの最大数の相互作用
同時評価の最大数を同時実行ジョブの最大数より大きい数に構成すると、Power BI エンジンは並列化を同時実行ジョブの最大数に制限します。 同時評価の最大数を同時実行ジョブの最大数より少なく構成すると、Power BI エンジンは使用可能なシステム リソースに基づいて同時ジョブの最大数を開始できますが、同時評価の最大数によって、それらのジョブによって同時に実行できるPower Query操作の数が制限される可能性があります。 残りのジョブはキューに入れられ、いずれかのジョブが完了するまで待機状態になります。 ただし、このような状況では、計算列、計算テーブル、およびPower Queryに依存しないその他のPower BI エンジン項目の評価は、同時評価の最大数によって制限されず、同時実行ジョブの最大数によって決定される並列ジョブの最大数に達する可能性があります。