纠纷奇闻作文社交美文家庭
聚热点
家庭城市
爱好生活
创业男女
能力餐饮
美文职业
心理周易
母婴奇趣
两性技能
社交传统
新闻范文
工作个人
思考社会
作文职场
家居中考
兴趣安全
解密魅力
奇闻笑话
写作笔记
阅读企业
饮食时事
纠纷案例
初中历史
说说童话
乐趣治疗

深入拆解ampamp39搜索引擎ampamp39实现原理一初

10月2日 囍孤女投稿
  搜索引擎对于很多大厂来说已经不是什么新鲜技术了,
  百度、淘宝等大型网站的搜索功能通常使用搜索引擎技术实现。
  搜索引擎到底做了什么?
  它和普通的数据库搜索有什么区别?
  什么情况下才需要使用搜索引擎?
  带着这些疑问,我们开始【对搜索引擎的探索】
  搜索的本质其实是对数据的处理,所以我们先从数据讲起数据类型
  以搜索的角度划分,数据分为两种:结构化数据、非结构化数据(全文数据)
  结构化数据:具有固定格式或有限长度的数据,就像我们用的数据库(创建字段必须指定格式)
  非结构化数据:指不定长度或无固定格式的数据,如邮件、word文档
  于是衍生出两种搜索类型
  对结构化数据的搜索:也就是我们平时用的最多的,对数据库的SQL搜索,名称、状态、创建时间等
  举个例子来说,我们假设公众号将我的文章信息存到了这样一张表中
  table:idtitleauthorfilepath(文章内容的文件上传之后返回的保存路径)createtime
  当我想要查询标题中包含搜索的文章,一个SQL就可以SELECTfromtablewheretitlelike搜索
  这样就完成了一次结构化数据的搜索,
  另一种就是对非结构化数据的搜索:即对邮件、word文档等做内容搜索
  还是上面的例子,但这次我们希望搜索文章内容中包含搜索的文章,你会怎么做呢?
  按照上面结构化数据的搜索思路,遍历数据库中所有的filepath,通过filePath获取到文章文件本体,将文章内容从头到尾扫描一遍,直到将所有文件都扫描完,返回匹配结果。
  这种顺序扫描法想必不用说你也能想到效率问题,如果我有成千上万个文件,每个文件包含上千字,扫描量可想而知。
  全文检索
  既然顺序扫描法不可取,我们是否可以换个思路:将非结构化的数据中的一部分信息提取出来,然后以某种规则重组,使其变得有一定的结构,然后对此结构数据建立索引并进行搜索,从而达到快速搜索的目的。
  这种将非结构化数据拆分、结构化,建立索引并对索引进行搜索的搜索方式就叫做全文检索,即搜索引擎的设计思想。
  就像是文字和字典的关系,字典的拼音表和部首检字表就相当于字典的索引,对每一个字的解释是非结构化的,如果字典没有音节表和部首检字表,在茫茫辞海中找一个字只能顺序扫描。
  然而字的某些信息可以提取出来进行结构化处理,比如读音,就比较结构化,分声母和韵母,分别只有几种可以一一列举,于是将读音拿出来按一定的顺序排列,每一项读音都指向此字的详细解释的页数。
  我们搜索时按结构化的拼音搜到读音,然后按其指向的页数,便可找到我们的非结构化数据也即对字的解释。
  还记得上面搜索文章内容的问题吗,我们试着用全文检索模拟一下:
  假设现在我有100篇文章(编号0100),我需要找出内容中包含搜索、引擎两个关键字的文章,
  首先根据这两个词汇建立索引结构:
  左边保存的是一系列字符串,称为词典。
  每个字符串都指向包含此字符串的文档(Document)链表,此文档链表称为倒排表(PostingList)。
  这样一来,我们只需要将搜索、引擎两个链表做合并,即可得到搜索结果。
  值得注意的是,虽然创建索引的过程和顺序扫描是一样的,但区别在于顺序扫描是每次都要扫描,而创建索引的过程仅仅需要一次,以后便是一劳永逸,仅需要搜索创建好的索引即可。
  这也是全文搜索相对于顺序扫描的优势之一:一次索引,多次使用。
  以上就是本篇的内容,通过今天的内容我们了解了搜索引擎到底做了什么、它和普通的数据库搜索有什么区别、什么情况下才需要使用搜索引擎。下期预告
  下一篇我们将深入拆解搜索引擎如何创建索引?为什么在输入了错别字的情况下,百度依然返回了正确的搜索结果?
  更多干活内容尽在同名公众号:浩说编程,欢迎互相交流
投诉 评论 转载

微软将以687亿美元收购动视暴雪,成公司史上最大规模收购微软公司1月18日发布声明称,公司将以每股95美元的价格全现金收购动视暴雪,包括动视暴雪的净现金在内,交易价值687亿美元。微软表示,交易完成后,微软将成为世界上收入第三……Julia的控制流分支和循环等控制流是命令式编程风格的核心。作为一种多范式编程语言,Julia支持所有知名的命令式风格和结构。复合语句语句是程序员给计算机下达的命令。如打印一段文字,或给一……微信大更新,10年最清爽版本这两天微信又更新了,不像之前的小修小补,这次绝对是一次大更新,直接冲上了微博热搜第1!这次版本更新到了8。0。14,特地强调可开启关怀模式,毕竟之前被点名没做好适老化工作……联发科和华为海思谁的水平更高一筹?文小伊评科技以近两年旗舰芯片的表现来看,华为海思明显要比联发科强出一线,但两家在技术上实际上还处于一个阶层,只不过华为海思拥有比联发科更多的施展空间,更好的品牌所以在表现……我是真的不明白并且非常讨厌,现在的有些手机为什么用玻璃背壳,我曾经拿着iphone6,在高铁上电话打不出去,网也上不了。看着身边拿着华为的几位同事上网、刷剧、打电话都不耽误。我陷入了深深的思考中,装X却被同事取笑,说我买高档手机是拿来当……深入拆解ampamp39搜索引擎ampamp39实现原理一初搜索引擎对于很多大厂来说已经不是什么新鲜技术了,百度、淘宝等大型网站的搜索功能通常使用搜索引擎技术实现。搜索引擎到底做了什么?它和普通的数据库搜索有什么区别?……企业必须突破融资瓶颈朱耿洲博士清华大学深圳研究生院讲学4月14、15日,风光秀丽的深圳南山区西丽大学城清华校区CI101会议厅里人气沸腾、气氛热烈,由清华大学深圳研究生院主办的《清华大学金融投资与资本运营高级研修班(第38期)》在……Web3。0互联网发展的新阶段互联网无疑是人类历史上最伟大的发明之一。这一里程碑式的发明彻底改变了人们传递信息、交流观点的方式,为人类社会注入了无穷的活力,源源不断地激发并释放人类的无尽的潜力。从上世……荣耀50SE正式开售,前辈机皇闻声跌至乞丐价让路7月2日10时,作为活动的荣耀50SE正式销售。其中8GB128GB版本为2399韩元,8GB256GB版本为2699元。从外观上看,荣耀50SE采用6。78英寸超窄全屏……小米婉拒,前OPPO员工辱骂,荣耀华为做手机,他们就不会用鸿华为的鸿蒙系统已经于昨日正式发布,虽然在手机应用和生态方面华为目前稍微有些逊色,但对于一个初生系统来说,这已经算是了不起的成就,而华为也通过鸿蒙系统向未来的无限互联踏出了第一步……3080万美元,VOXX与夏普正式收购安桥和Integra品继5月26日,安桥董事会确定将家庭娱乐业务转让给VOXX和夏普后,近日相关收购案又有了新进展。6月28日,VOXX宣布其与旗下子公司PremiumAudioCompany将拥有……手机号不用了需要注销吗?如卡是普通套卡可以不用注销,但是全球通卡或拉光纤的卡一定要注销。是的,如果不注销的卡是会产生费用,曰积月累,所以名下开的卡一定要注销,对你真信不好,坐车方面也较麻烦,有时间还是……
老师说双减时代,小学阶段的孩子该选私立还是公立?手把手教你在windows11里安装抖音南卡Runner骨传导运动蓝牙耳机体验做一个安全的疾风少年中国为什么失信被执行人那么多?如何化解?全球市场格局生变国产手机加快布局iOS15Beta8更新,正式版和发布会本月即将到来央视播放不老人生倪光南,新华社下架智慧山河,啥情况?国内外有哪些著名的凶宅?户外安装的LED显示屏需要具备什么特点?骁龙710675660636之间性能差距有多大?数据库最常用的8种基础语法SketchUpProforMac草图大师中怎么导入cad图
帼纹啤酒几品好喝,最推荐七品仙鹤八品犀牛两款果味小麦对普通人来说,资本市场意味着什么?我的iPad笔记指南(建议收藏)发型妆容改变气质卷发直发对比图如懿传婉嫔深受日本人喜爱曹曦文被赞为中国完美人妻简析汉语多义动词打的意义满分作文丨中考满分作文历练宿卓水二首其二股权众筹与非法集资的区别是什么励志人生话语高汤做法上下通透黑丝透视装盘点组图

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找美丽时装彩妆资讯历史明星乐活安卓数码常识驾车健康苹果问答网络发型电视车载室内电影游戏科学音乐整形