查看: 14566|回复: 89
收起左侧

[讨论] 为什么我说 Everything 在 Windows Search 面前就是个弟弟

  [复制链接]
hez2010
发表于 2020-2-12 18:38:05 | 显示全部楼层 |阅读模式
本帖最后由 hez2010 于 2020-2-12 20:39 编辑

前言
看到这个标题相信很多人都会来怼我了,然而事实是 Windows Search 比 Everything 强了不止一个数量级。
Everything 相信很多人都用过,只要生成了索引之后,搜索文件简直是秒出,而 Windows 自带的搜索则经常会等很久才能出来,真的是这样吗?

Everything
Everything 利用它的 NTFS volumn service 可以做到快速对整个计算机上的文件名进行索引,然后当用户进行搜索的时候,相关的文件立即就能搜索出来。Everything 界面简单,操作直观,搜索极快,占用小巧,但是功能单一,纯粹的文件名搜索,因此后面不再着重说 Everything。

Windows Search
Windows Search 则利用它的索引服务在后台对文件进行索引,但是与 everything 不同的是,Windows Serach 默认只索引用户文件,即桌面、文档等文件夹之下的内容,对于索引范围之外的文件,因为没有索引,所以当搜索这些文件的时候会非常慢。
如果需要所以整个计算机的文件,可以在 Windows 设置中,将【经典】改为【增强】。
批注 2020-02-12 181143.png
然而有人肯定要说,同样是索引,Windows Search 比 Everything 慢得多,辣鸡!

这是为什么呢?

原因就在于:
Everything 只会对文件名进行索引,意味着你的文件搜索仅局限于文件名的搜索。
而 Windows Search 则除了对文件名进行索引之外,还会对文档的内容、压缩包里面的文件进行索引,因此利用 Windows Search,你甚至可以搜索到一个 .zip 压缩包中的某个 .docx 文件中的某一段文字。
这是Everything无论如何都比不上的。

下面我们等待全部文件索引完成后,测试一下 Windows Search

测试
首先我们在桌面新建一个word文档 test.docx,里面写上“这是一个文档”并保存。

批注 2020-02-12 182127.png
然后我们搜索“文档”:
批注 2020-02-12 182215.png
搜索结果秒出,没有经过任何等待就搜索到了我们 test.docx 中的“文档”这个词语。

下面我们做一点更变态的测试,我们将这个 test.docx 添加到一个压缩包中 test.zip 再次执行搜索:
批注 2020-02-12 182401.png
搜索结果依然瞬间出来,并且搜索出来了 test.zip。要知道,“文档”这个词语可是出现在 test.zip 中的 test.docx 中的一句话中。

以上测试足以可见 Windows Search 的强大。

定制 Windows Search
Windows Search 不仅仅支持常见文档的索引,而且还支持为其他扩展名的文件提供自定义的搜索行为。另外,而且利用 Windows API,你甚至可以为 Windows 实现其他格式的内容索引,使得第三方软件的存储格式也依然可以利用 Windows Search 实现对内容的搜索。

我们进入 Windows Search 的高级设置,转到文档类型:
批注 2020-02-12 182814.png
可以看到,对于不同的文件类型,Windows Search 有着不同的处理方式:有的文件只索引文件属性(即时间、大小、文件名等),而对于有的文件则会利用不同的筛选器支持文件内容的索引。在这里你可以尽情定制 Windows Search 的搜索行为。

结语
Windows Search 的索引之所以慢,是因为 Windows Search 承担了比 Everything 多了几个数量级的工作:除了文件名之外,其余的文件属性、文件内容等一并被索引
Windows Search 这几年似乎被妖魔化:占资源、占CPU、占磁盘、搜索慢、经常出问题等等。
很多人反应,Windows 10 为什么这么占用资源,磁盘 100%,CPU 降不下来等等,其实就是 Windows Search 搞的鬼。Windows Search 会在 Windows 新安装、重置、大版本升级后进行一次全新的初始索引,因为被索引的内容较为复杂,索引所需要的资源不亚于杀毒软件进行一次全盘扫描。这段时间,机器性能会肉眼可见的下降,并且 CPU、磁盘占用飙升,索引完成之前,Windows Search 的搜索结果是不完整的,这也就是为什么很多用户反应搜不出来东西。
然而一旦此过程完成,你就可以尽情享受 Windows Search 带来的丝滑而强大的搜索体验。
当然,关闭了 Windows Search 服务的人是永远也体验不到如此强大的搜索功能了。
只要你会配置 Windows Search(排除自己不需要搜索的目录或添加自己需要搜索的额外目录,按需选择经典和增强模式,按需调整高级设置中的筛选器等等),并给 Windows Search 一点耐心让他的初次索引完成,Windows Search 一定不负众望。笔记本用户不必担心电池续航问题,因为索引只会在插电的情况下进行。
那么什么时候 Windows Search 的索引工作是完成呢?就是我第一张图中“挂起中”的数字归零时,就是索引完成之时,这个数字代表了剩余需要索引的文件数量。

从 Windows 10 的下一个版本(20H1,又叫2004,会在2020年4-5月正式发布和推送)开始,微软调整了 Windows Search 的索引时机,将仅会在电脑的空闲时候进行 Windows Search 的索引,因此从 20H1 版本开始,Windows Search 初次索引对性能的直观影响将会下降不少,大家可以期待一下。


评分

参与人数 2人气 +3 收起 理由
ELOHIM + 1 感谢解答: )
mak999 + 2 感谢提供分享

查看全部评分

chuxuana
发表于 2020-2-12 19:29:09 | 显示全部楼层
是不是每次升级系统后都要重新索引
hez2010
 楼主| 发表于 2020-2-12 19:30:27 | 显示全部楼层
chuxuana 发表于 2020-2-12 19:29
是不是每次升级系统后都要重新索引

是的,因为升级系统不会保留之前的索引记录。
但是如果是那种每个月的小的累积更新的话,不会导致重新索引。
这也导致了“越更新越慢”的错觉。
chuxuana
发表于 2020-2-12 19:32:44 | 显示全部楼层
hez2010 发表于 2020-2-12 19:30
是的,因为升级系统不会保留之前的索引记录。
但是如果是那种每个月的小的累积更新的话,不会导致重新索 ...

但是我现在在使用预览版
hez2010
 楼主| 发表于 2020-2-12 19:34:23 | 显示全部楼层
chuxuana 发表于 2020-2-12 19:32
但是我现在在使用预览版

调整成经典模式的话,即使是全新索引的话内容也不算多,很快就能完成。
记录微笑
发表于 2020-2-12 22:33:07 | 显示全部楼层
我总觉得索引非常费SSD
阿香婆也告诉我SSD需要关闭索引服务。
saga3721
发表于 2020-2-12 22:34:55 | 显示全部楼层
我觉得自带就挺好
lychichem
发表于 2020-2-13 00:37:56 来自手机 | 显示全部楼层
可是我总觉得windows搜索有点菜…以前还发生过关键词在文件名里都搜不到的事……不知道是不是因为我文档是全部存onedrive的原因
beasy
头像被屏蔽
发表于 2020-2-13 09:29:16 | 显示全部楼层
本帖最后由 beasy 于 2020-2-13 19:44 编辑

装完系统第一件事彻底禁用Windows search这种流氓软件,对于系统资源吃的太狠了这个功能,得不偿失
hez2010
 楼主| 发表于 2020-2-13 12:26:52 | 显示全部楼层
lychichem 发表于 2020-2-13 00:37
可是我总觉得windows搜索有点菜…以前还发生过关键词在文件名里都搜不到的事……不知道是不是因为我文档是 ...

Windows 10 1909前,Windows Search 的确不支持索引 OneDrive 里的文件。
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2024-3-29 17:04 , Processed in 0.136837 second(s), 20 queries .

卡饭网所发布的一切软件、样本、工具、文章等仅限用于学习和研究,不得将上述内容用于商业或者其他非法用途,否则产生的一切后果自负,本站信息来自网络,版权争议问题与本站无关,您必须在下载后的24小时之内从您的电脑中彻底删除上述信息,如有问题请通过邮件与我们联系。

快速回复 客服 返回顶部 返回列表