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



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

  

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

这是个有趣的问题。

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

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

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

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

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

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


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

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




  

相关话题

  如何评价 2020 年 8 月 12 日正式开启预订的 Surface Duo?有什么亮点和不足? 
  从操作系统本身来看Linux是否比Windows优秀? 
  中国政府为什么要求 Android 至少免费开源五年? 
  操作系统多进程多线程的相关问题? 
  现在有哪些中国大陆产 CPU 和操作系统?现状如何? 
  为什么很多人要禁止 Windows 10 自动更新? 
  关于malloc返回值的问题? 
  鸿蒙手机来了,如果可能,你会选择鸿蒙操作系统放弃安卓吗? 
  Linux 的核心思想是什么? 
  剪切板、文件拖拽这些功能桌面环境是怎么实现的? 

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





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