この記事では、ディスク領域が足りないゲートウェイ ユーザーのディスク領域を管理する構成設定に焦点を当てています。
ゲートウェイ スプーリング データ
"スプーリング" と呼ばれるプロセスでオンプレミスの環境とクラウドの間で通信するときに、Power BI とオンプレミス データゲートウェイが一時的なキャッシュ ファイルを作成します。 スプーリングに使用できるディスク領域によっては、スプーラが原因でディスク容量がいっぱいになると、"ディスク容量不足" エラーが発生するおそれがあります。
注
最適なパフォーマンスを得るためのスプーリング ストレージ ドライブとしてソリッド ステート ドライブ (SSD) を使用することをお勧めします。
スプーリングによって "ディスク領域不足" エラーが発生する場合は、次の手順を使用して、スプーラの場所をより容量が多いディスクに変更します。
C:\Program Files\On-premises data gateway に移動します。
Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.dll.config 構成ファイルのバックアップを作成します。
Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.dll.config 構成ファイルを編集します。
SpoolerDirectory を検索します。
<setting name="SpoolerDirectory" serializeAs="String"> <value>%LOCALAPPDATA%\Microsoft\On-premises data gateway\Spooler</value> </setting>
<value> タグは、SpoolerDirectory の場所を指定します。
このパスを、ビジネス ニーズに十分なディスク領域を含む場所に変更します。
変更したら、ファイルを保存して、オンプレミス データ ゲートウェイを再起動します。
注
パスを変更する場合は、オンプレミス データ ゲートウェイ サービスを再起動する必要もあります。
マッシュアップ エンジンの永続キャッシュ
スプーリングが別のドライブにマップされているにもかかわらず、"ディスク領域不足" エラーが発生する場合は、永続キャッシュが原因である可能性があります。 このエラーは、フォールディングされていないクエリが原因の可能性があります (クエリ フォールディングの詳細については、「クエリ フォールディングの概要」にアクセスしてください)。 または、クエリのパフォーマンスが低いことが原因である可能性があります (ゲートウェイのパフォーマンスの最適化の詳細については、「オンプレミス データ ゲートウェイのパフォーマンスの監視と最適化」にアクセスしてください)。
クエリを最適化できない場合は、永続キャッシュを大容量のドライブに移動できます。 永続的キャッシュは (スプーラとは対照的に)、ルート ドライブとオペレーティング システムの \temp パスを使用します。 "ディスク領域不足" エラーを回避するには、ルート ドライブの領域を解放するか、ルート ドライブのサイズを拡張するか、一時フォルダーをより多くの領域を持つドライブに再マップする必要があります。
"ゲートウェイの実行に使用するユーザー アカウント" の Windows TMP 環境変数の値を変更 (または設定) して、永続キャッシュを大容量ドライブに移動できます。 キャッシュおよび一時ディレクトリに使用されるパスは、Win32 GetTempPath 関数を使用して決定されます。 Win32 のドキュメントによると、この関数は次のリストから最初に見つかった値を使用します。
- TMP 環境変数で指定されたパス。
- TEMP 環境変数で指定されたパス。
- USERPROFILE 環境変数で指定されたパス。
- Windows ディレクトリ。
そのため、ゲートウェイ ユーザーの TMP を変更して、永続キャッシュを別のドライブに移動します。
注
Windows で環境変数を変更するには、[スタート] メニューから、[検索] を選択し、「環境変数」と入力し、[システム環境変数を編集する] を選択して、[システム プロパティ] から [環境変数] を選択します。