インデックスの正体、機械的な話
検索インデックスは、ExchangeのメールストアやActive Directoryを動かしているのと同じExtensible Storage Engine(ESE)の上に築かれた本物のデータベースで、C:\ProgramData\Microsoft\Search\Data\Applications\Windowsに住んでいます。NTFSボリュームではインデクサーがUSN変更ジャーナルを購読するため、保存したばかりのファイルは全走査を待たず数秒で拾われます。テキストはiフィルターとプロパティハンドラーが抽出します。PDFのフォルダーとプレーンテキストのフォルダーで索引の付き方が違うのはこのためです。すべては、ほとんどの人が一度も開いたことのないひとつのファイル群に行き着きます。
- Windows.edb — パス、プロパティ、抽出コンテンツを保持する本体データベース
- Windows.db — 最近のビルドで仲間入りした新しいプロパティストア
- edbXXXXX.log — 書き込みをデータベース到達前にクラッシュ安全にするトランザクションログ
- edb.chk — どのトランザクションが書き込み済みかを示すチェックポイントファイル
- tmp.edb — エンジンがメンテナンスパス用に確保する作業領域
edb一族が太る理由と、問題になる線
健康なクラシックモードの環境では一式全体が50 MB〜1 GBの間に収まり、文書数に応じてスケールします。直すところはありません。既定でPC全体を索引する拡張モードは、ゲームライブラリやプロジェクトツリー、仮想マシンフォルダーの番が来た途端、データベースを数GBへ押し込みます。Outlookは古典的な増幅器です。PSTとOSTも内容まで索引され、メールアーカイブは一夜にして300 MBのインデックスを4 GBへ変えます。
本物のトラブルはこう知らせます。Windows.edbは成長を続けるのに検索は遅くなるか何も見つからない——たいていは、汚いシャットダウンや一杯になったシステムドライブの後でインデクサーが書き直し続ける、壊れたデータベースです。その状態での再構築は賭けではなく標準の一手です。ログファイル自体はリークではありません。Windowsは回転する一式を保持し、古いものは自動的に刈ります。
何も壊さずにインデックスを再構築する
正規の経路はコントロール パネル → 索引のオプション → 詳細 → 再構築です。「設定」の「Windows の検索」ページでクラシック/拡張モードを切り替え、フォルダーを刈り込みます。再構築はデータベースを削除して最初から這い回るため、大きなライブラリでは1〜2時間、検索が不自由なままです。それは修復が働いているのであって失敗ではありません。手動ルート——Windows Searchサービスを停止し、Windows.edbとログを削除し、サービスを再開——も同じ結果になります。Windowsが次の起動時に一式を再生成するからです。
やってはいけないのは、Searchフォルダーを毎週の掃除対象にすることです。インデックスは検索を一瞬にするために存在し、7日ごとに消せば1 GBのディスクと引き換えに、永遠に生ぬるいインデックスと終わらない再走査が手に入ります。実際に症状があるときに一度だけ再構築し、それ以外は放置してください。
よくある質問
Windows.edbは削除しても安全ですか?
安全です。ただし先にWindows Searchサービスを止めてから。これは検索用データベースにすぎず、Windowsがあなたのファイルから作り直します。インデックスが復旧する1〜2時間は検索が遅くなります。
私のPCでWindows.edbがこれほど大きいのはなぜ?
拡張モードでPC全体を索引している、OutlookがPST/OSTアーカイブを索引している、あるいはクリーンでないシャットダウンの後でデータベースが壊れたかのどれかです。クラシックモードへの戻しか再構築で、通常はサイズは元に戻ります。
購入前にライセンスの内容をご確認ください。
一度限りの 30 分試用では基本ツールを利用できます。PRO 機能は有料ライセンスを有効にするまでロックされています。
次に読む記事
お問い合わせ: [email protected]