百科问答小站 logo
百科问答小站 font logo



为什么我见过的操作系统都是树状存储结构,有没有用关键字来组织文档存储的网状结构的操作系统? 第1页

  

user avatar   haozhi-yang-41 网友的相关建议: 
      

这是个有趣的问题。

给一个相似的情况:绝大多数网站里,所有的网页结构也是组织成像你说的树形结构的。

后来,有两个天才发明了一个系统,让这种树形结构变成了一个像你说的“关键字组织的网状结构”——嗯,这就是大家都很熟悉的搜索引擎。

虽然作为业外人士,你可能并不清楚搜索引擎为了达到这个目的,到底投入了多少软硬件资源去实现这样的功能。我就说放眼全球,有竞争力的做全网搜索的,也就google/bing/baidu三家,另外还有若干聚焦在特定垂直细分领域的——其难度和资源投入水平可见一斑。

讲点技术话语就是:本质上树状结构和一维索引结构都是为了快速准确定位你的最终目标所在。然而,树状结构通过分层逐级细化,把一次或几次(如果你要做多标签关联的话)全网/全盘搜索变成了多次某个层级内的局部搜索,这个逐步聚焦的搜索过程背后,实际上节约了极为巨大的运算资源和io资源——就这我还极为友善的假定你的文件系统一开始就针对此设计而不会额外占用过多的存储资源来放索引了(然而如果要做复杂的关联查询,这些索引极有可能都免不掉)。

事实上,在当年搜索引擎如日中天的时候,google和baidu都推出过桌面搜索这样的软件——其思路就和这题目几乎完全一致。然而,在火了很短的时间后(大概……几个月?),两家搜索引擎巨头都不约而同的放弃了这个市场。

所以,google和baidu两家搜索领域巨头级企业都亲自认证过的结论,基本上属于盖棺论定了。


user avatar   mai-cui-ya-96 网友的相关建议: 
      

你可以自己弄啊……文件hash 、路径、关键词放到数据库里……




  

相关话题

  在国内华为的鸿蒙系统能否在 10 年内替换 Windows 系统? 
  MIUI 12 是否抄袭 iOS? 
  最早的操作系统API出现在什么时候? 
  如何看待鸿蒙今日起到 6 月 2 日陆续开源,还是安卓套壳吗? 
  为什么 Windows 操作系统开很多应用和游戏都不会杀后台? 
  Android 基于 Linux,为什么可以收费? 
  华为的鸿蒙系统可以玩b服的原神吗?如果可以的话能和windows与安卓数据互通吗? 
  苹果麦金塔操作系统(macOS)比微软视窗操作系统(Windows) 好用吗? 
  Android 的 HAL 层是否是在破坏 GPL? 
  从 Windows 95 开始一直在 shell32.dll 中存在的一个大树图标是出自哪里? 

前一个讨论
C/C++在函数调用时,为什么需要先将参数压栈?
下一个讨论
C++中怎么区分char和数值?





© 2024-11-22 - tinynew.org. All Rights Reserved.
© 2024-11-22 - tinynew.org. 保留所有权利