「Windows 10の反応がにぶい」といった場合、「Windowsの検索」機能によるインデックス作成が繰り返し実行されていることが原因の可能性がある。インデックス作成には、意外とCPUパワーが要求され、ディスクアクセスも多く発生するため、Windowsの反応がにぶくなりがちだ。そこで、インデックス作成に不具合が発生していないかを見つける方法とその解決策を紹介する。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
対象:Windows 10
「何かWindows 10の反応がにぶい」と感じることはないだろうか? タスクマネージャーを見ると、CPUの負荷が高く、ディスクアクセスも多い状態になっている。これは、「Windowsの検索(Windows Search)」が実行している「Indexer(インデクサー)」にエラーが発生していて、インデックス作成を繰り返し行っている可能性が高い。
Indexerとは、検索処理を高速化するため「インデックス」情報をバックグラウンドで作成する機能だ。インデックス作成には、意外とCPUパワーが要求され、ディスクアクセスも多く発生するため、Windowsの反応がにぶくなりがちである。 そこで、本Tech TIPSでは、Indexer関連のトラブルを解決する方法を解説する。
「Windowsの検索」は、Windows 10 May 2019 Update(バージョン1903)で大きな改良が行われ、「拡張」検索モードが追加された。これに対して、October 2018 Update(バージョン1809)までの「Windowsの検索」を「クラシック」検索モードと呼ぶ。
現在、Indexerのエラーは、拡張検索モードで発生することが多いようだ。クラシック検索モードでは、Windows Vistaのころから改修されてきたコードが使われているため、トラブルは比較的少ないので、対策としてはクラシック検索モードに戻してしまうという方法もある。だが、「Windowsの検索」の使い勝手は落ちてしまう。
Indexerは、インデックスが作成されていれば、新規および更新されたファイルをインデックス化するだけで済むため、比較的短時間で実行を終了する。また、バックグラウンドで動作するため、システムに高い負荷をかけないように設計されていることもあり、通常であれば、ユーザーがその実行時の負荷を感じることはほとんどない。
しかしインデックスが未作成の場合、最初は、対象ファイルを全部スキャンし、ファイルによってはファイル内容を読み出し、インデックス情報を構築する必要がある。この「インデックス再構築」処理には、比較的大きな負荷がかかる。
また、インデックス情報に何らかのエラーがあった場合にも、インデックスファイルを作り直すため、同じ処理が実行される。インデックス再構築がうまくいけば、システム負荷が定常的に高くなることはない。
エラーなどによりインデックス再構築を繰り返すと、システムの負荷が定常的に高くなる。負荷が高いと思ったとき、タスクマネージャーやリソースモニターで「Microsoft Windows Search Indexer」の負荷がずっと続いているなら、インデックス再構築が行われている。ファイル数やシステム性能にも依存するが、インデックス再構築処理には1日程度かかることもある。数日以上、処理が続くようなら再構築を繰り返している可能性がある。
エラーの有無は、イベントビューアー([スタート]メニューの[Windows管理ツール]−[イベントビューアー]で起動)で確認できる。Indexerのイベントは、[Windowsログ\Application]フォルダにあり、ソース名は「Search」である。このソースのエラーが多発しているようであれば、インデックス再構築を疑うべきだ。また、イベントID「7040」は、インデックス再構築を意味するコードだ。
エラーが多発したためか、Microsoftは「Indexer Diagnostics」ツールを提供している。これは、Indexerの状態をリアルタイムに表示したり、インデックスの状態を調べたりでき、Windows Searchサービスの再起動やリセットなども可能にするものだ。Windows Search関連でトラブルがあるようなら、インストールしておくといいだろう。ただし、開発途上なのかWindows Search側に問題があるのか、このツール自体の動作が不安定なこともある点には注意してほしい。
Indexer Diagnosticsは、以下のURLでMicrosoft Storeからインストールが可能だ。
まず、役に立つのはウィンドウ左側の[Service status]タブにある「Total indexer usage」だ。ここには、インデックス処理されたファイル数が左側(indexed)に、未処理のファイル数が右側(pending)に表示される。だんだんと左側の数字が大きくなって、グラフが右端に到達すればインデックス再構築は終了である。
しかし、再構築が再度行われるとグラフは、左側に戻ってしまう。時間を空けて2回目にグラフを見たときに、以前よりも左側にグラフがあれば、その間に再構築が再スタートしたことを意味する。
なお、この数字は、[Windowsの設定]アプリの[検索]−[Windowsの検索]画面の「インデックスステータス」欄にも表示されるが、更新間隔が長く、動いているかどうかを判断するのにもしばらく見ている必要がある。これに対してIndexer Diagnosticsツールはリアルタイムに更新されていくため、状況をすぐに把握できる。また、グラフにより視覚的に状況を把握しやすいというメリットがある。
[Search is not working]タブには、メモリに常駐して動作している「Windows Search」サービスのRestart(再起動)/Reset(初期化)機能がある。基本的にはRestartでサービスを再起動させてエラーや異常な状態から復帰させる。それでも同じようにエラーが続く場合には、Resetを使う。うまくいけば、これでエラーが続く状態から脱せることがある。
それでも、再構築が繰り返し行われるのは、対象となるフォルダやファイルが原因で回復できないようなエラーがIndexerの内部で発生しているからだ。対策としては大きく2つある。1つは、トラブルシューティングツールを使う方法だ。もう1つは、インデックス化対象を絞ってインデックス再構築を行わせ、段階的に範囲を広げていく方法である。
Copyright© Digital Advantage Corp. All Rights Reserved.