高级文件搜索引擎
FilePulse 是一款超高性能以闪电般毫秒级性能搜索文件名和文件内容的搜索引擎。核心搜索引擎在本地运行,它无需安装,完全绿色便携。支持快速启动、快速预览、远程磁盘访问,全面支持 Windows、macOS、Linux 三大操作系统,且均提供 x86_64 与 ARM64 双架构版本,并可跨平台跨架构组建分布式搜索集群。




使用通配符模式、正则表达式、完整拼音、拼音首字母匹配算法搜索,可以使用文件大小、文件夹大小、修改时间、文件名、文件路径、扩展名进行排序筛选。支持前缀匹配、后缀匹配、全字匹配、变音字符匹配、忽略符号匹配、忽略空白字符匹配、大小写不敏感匹配等等。
在文件内部搜索特定文本内容,支持全文正则匹配、全文通配符匹配、分词正则匹配,分词普通匹配,分词前缀匹配,分词模糊匹配,支持自定义使用文件名搜索结果对内容搜索进行筛选。支持结果不排序,按照文件名搜索结果排序,按照相关分数排序。支持生成命中区域高亮显示与快速预览。
可以在256台服务器组成的集群中搜索整个集群结果,所有服务器节点平等。
所有节点都可以以HTTP的方式对外提供服务,并且支持多节点互相代理模式,用户可以在任何地点访问任意节点数据。
先进的索引技术确保即使在数百万个文件中也能获得即时搜索结果。
支持搜索文档、代码文件、PDF 和许多其他文件格式。
FilePulse 原生支持所有主流平台,功能完整无差异
测试环境:AMD 7900X, PCIe 4.0 SSD, Windows 11 24H2。用户的版本可能是加壳的,会导致性能下降,媒体性能测试可以申请无壳版本,未来验证机制完善将全面提供无壳版本。
时间统计方式为浏览器请求查询接口,服务器等待响应时间,全部测速都非命中缓存
| 测试项目 | FilePulse 2.0.1 Pro(自带统计文件夹大小和扩展名索引) | Everything 1.4.1.1026+统计文件夹大小+扩展名索引 | Everything1.5.0.1391a+统计文件夹大小+扩展名索引 |
|---|---|---|---|
| 200万文件扫描全盘速度+构建存储结构速度 | 2.58秒 | 5.73秒 | 4.26秒 |
| 200万文件查询一个大小写不敏感字母并修改时间降序排序 | 10.39毫秒 | 10.38毫秒 | 10.79毫秒 |
| 200万文件查询两个大小写不敏感字母并修改时间降序排序 | 9.28毫秒 | 13.44毫秒 | 9.21毫秒 |
| 200万文件查询三个大小写不敏感字母并修改时间降序排序 | 8.81毫秒 | 13.70毫秒 | 9.05毫秒 |
| 200万文件查询拼音一个大小写不敏感字母并修改时间降序排序 | 16.65毫秒 | 不原生支持 | 不原生支持 |
| 200万文件查询拼音两个大小写不敏感字母并修改时间降序排序 | 16.88毫秒 | 不原生支持 | 不原生支持 |
| 200万文件查询拼音三个大小写不敏感字母并修改时间降序排序 | 16.17毫秒 | 不原生支持 | 不原生支持 |
| 200万文件查询拼音首字母一个大小写不敏感字母并修改时间降序排序 | 17.25毫秒 | 不原生支持 | 不原生支持 |
| 200万文件查询拼音首字母两个大小写不敏感字母并修改时间降序排序 | 17.08毫秒 | 不原生支持 | 不原生支持 |
| 200万文件查询拼音首字母三个大小写不敏感字母并修改时间降序排序 | 15.29毫秒 | 不原生支持 | 不原生支持 |
| 支持HTTP1协议 | 支持HTTP1.1 | 仅支持老旧HTTP1.0 | 仅支持老旧HTTP1.0 |
| 支持HTTP2协议 | 支持HTTP2 | 不支持 | 不支持 |
| 支持HTTP3协议 | 支持HTTP3 | 不支持 | 不支持 |
| 支持复杂逻辑表达式 | 支持 | 支持 | 支持 |
| 支持正则表达式 | 支持 | 支持 | 支持 |
| 对目标同时按文件名和文件路径双层筛选 | 支持 | 不支持 | 不支持 |
| 文件大小/文件夹大小筛选/排序 | 支持 | 支持 | 支持 |
| 修改时间筛选/排序 | 支持 | 支持 | 支持 |
| 文件名筛选/排序 | 支持 | 支持 | 支持 |
| 文件路径筛选/排序 | 支持 | 支持 | 支持 |
| 扩展名筛选/排序 | 支持 | 支持 | 支持 |
| 自定义格式筛选 | 支持 | 支持 | 支持 |
| 大小写不敏感匹配 | 支持 | 支持 | 支持 |
| 前缀匹配 | 支持 | 支持 | 支持 |
| 后缀匹配 | 支持 | 支持 | 支持 |
| 全字匹配 | 支持 | 支持 | 支持 |
| 变音字符匹配 | 支持 | 支持 | 支持 |
| 忽略符号匹配 | 支持 | 不支持 | 支持 |
| 忽略空白字符匹配 | 支持 | 不支持 | 支持 |
| 组网集群文件名搜索 | 支持,最多支持256台服务器组成集群,256台机器可以互相挂载其余节点数据,每一个节点是平等的,可选是否跟踪目标磁盘变动 | 不支持 | 有限,必须将远程盘符映射到本地盘符名称,不仅占用宝贵的本地盘符名称,而且使用很不方便 |
| 普通权限打开远程节点文件 | 支持 | 不支持 | 不支持 |
| 管理员权限打开远程节点文件 | 支持 | 不支持 | 不支持 |
| 远程定位资源管理器中文件 | 支持 | 不支持 | 不支持 |
| 远程文件下载 | 支持 | 不支持 | 不支持 |
| 远程大文件断点续传 | HTTP1.1/2/3都支持断点续传 | HTTP1.0不支持断点续传 | HTTP1.0不支持断点续传 |
| 快速定位到某一个文件夹中搜索而非全局搜索 | 支持 | 不支持 | 不支持 |
| 实时引擎,盘符任何变动都会实时同步到搜索系统中 | 支持 | 支持 | 支持 |
| 绿色单文件不需要安装 | 支持 | 支持 | 支持 |
时间统计方式为浏览器请求查询接口,服务器等待响应时间,全部测速都非命中缓存
| 测试项目 | FilePulse 2.0.1 Pro | AnyTXT 1.3.2477 |
|---|---|---|
| 2480个txt文件组成的小说,构建搜索系统 | 748毫秒(max_batch:500),2.18秒(max_batch:50),max_batch越大速度越快对机器性能要求越高 | 16.38秒 |
| 在2480个文件中普通模式搜索一个词不排序 | 2.42毫秒 | 23毫秒 |
| 在2480个文件中普通模式搜索两个词不排序 | 2.52毫秒 | 23毫秒 |
| 在2480个文件中普通模式搜索三个词不排序 | 2.51毫秒 | 23毫秒 |
| 在2480个文件中全文使用正则表达式逐个匹配 | 9.03毫秒 | 90毫秒 |
| 在2480个文件中搜索一个词不排序高亮显示匹配部分片段预览 | 2.99毫秒 | 52.58毫秒 |
| 在2480个文件中搜索两个词不排序高亮显示匹配部分片段预览 | 2.75毫秒 | 49.22毫秒 |
| 在2480个文件中搜索三个词不排序高亮显示匹配部分片段预览 | 3.12毫秒 | 44.28毫秒 |
| 复杂表达式包括非,与,或,左括号,右括号 | 完整支持 | 不支持括号优先级 |
| 实时引擎,盘符任何变动都会实时将内容同步到搜索系统中 | 完全实时系统,符合条件的文件保存的一瞬间立刻更新到搜索系统中 | 不支持,定期扫描,无法实时更新 |
| 绿色单文件不需要安装 | 完全绿色,不需要安装,打开即可使用 | 需要安装 |
| 遍历搜索系统所有文件逐个通配符搜索内容 | 支持,速度很快 | 支持,但速度极慢 |
| 遍历搜索系统所有文件逐个正则表达式搜索内容 | 支持,速度很快 | 支持,但速度极慢 |
| 分词普通搜索 | 支持 | 支持 |
| 分词正则搜索 | 支持 | 不确定,应该没有,没有明确说明有这个功能 |
| 分词前缀搜索 | 支持 | 不确定,应该没有,没有明确说明有这个功能 |
| 模糊搜索 | 支持 | 不支持 |
| 根据文档相关度排序 | 支持 | 不支持 |
| 根据文件名搜索结果进行二次筛选 | 完整支持 | 不支持,仅支持粗粒度文件夹筛选,文件夹筛选不支持通配符或正则表达式 |
| 根据文件完整路径排序 | 支持 | 有限制支持,文件多了排序很慢 |
| 根据文件名排序 | 支持 | 有限制支持,文件多了排序很慢 |
| 根据修改时间排序 | 支持 | 有限制支持,文件多了排序很慢 |
| 根据扩展名排序 | 支持 | 有限制支持,文件多了排序很慢 |
FilePulse与竞品在不同使用场景下的内存占用对比
对标AnyTXT文件内容搜索功能
FilePulse对全盘227万文件名索引,对全盘71120个Python文件内容进行索引。FilePulse内存稳定后最终占用264MB,硬盘占用877MB。AnyTXT内存占用307MB,磁盘占用1.4GB。
对标Everything(Everything对文件内容搜索支持只在初级阶段)
如果关掉文件内容索引功能只进行文件名搜索,内存稳定后,FilePulse占253MB,Everything采用双进程模式总共占用246MB内存,FilePulse支持的功能多,多占几MB内存也正常。