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



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

  

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

这是个有趣的问题。

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

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

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

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

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

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


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

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




  

相关话题

  为什么Linux下要把创建进程分为fork()和exec()(一系列函数)两个函数来处理? 
  如何评价联想杨元庆“相信全球化”、“一个公司没必要做所有的事情,联想并不打算做操作系统和芯片”的言论? 
  小米有水军吗? 
  最近win11发布说兼容安卓,里面会不会有“com.android.xxx”的代码,是不是安卓套壳? 
  对于多核CPU java中Thread.currentThread() 指的是哪个核上的线程? 
  为什么安卓的手机越用越慢,刷机也不行,是 CPU 老化吗? 
  华为一旦「抛弃」安卓,改用自研的「鸿蒙」系统,你是否愿意尝试? 
  为什么 MIUI 不能叫 MIOS? 
  3·15晚会曝光的手机充电桩是否能盗取iPhone用户的信息甚至操控消费?原理是怎样的? 
  如何看待华为2021年4月升级鸿蒙系统? 

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





© 2025-06-06 - tinynew.org. All Rights Reserved.
© 2025-06-06 - tinynew.org. 保留所有权利