Google浏览器搜索简述

说太专业了不懂。先简单的做一下比喻吧。我们的网页们在网上就像现实世界的一个个地址里的人家,但是要数字化的访问,可以把地址转换为编号,DNS就是把地址转换为统一的编号的装置。(至于Domain Name System域名系统的细致解释,之后陆续更新)
**对于搜索引擎而言:**搜索引擎每过一段时间,就回去访问一个个人家,如果主人愿意(robots.txt里面写的),就把人家家里的家具统计一下,做好一个关键词目录,送到Google的储存仓库,并且还有排序等内容。我们要搜索的时候,通过输入,Google就把找到的带这个家具名的人家地址返回给你,你就能找到了。
对于Google浏览器而言,他的搜索功能可以大致分为两个部分:
第一部分,是服务器端一直在做的工作。
由URL服务器发送许多地址让爬虫采集数据。爬虫可以按照服务器端的robots.txt文件决定是否采集这个网站。采集好后交给存储服务器,存储服务器压缩网页内容后存放到信息仓库。所有的网页都会有一个ID。然后为了用户能找到,服务器将会给这些网页制造索引,索引功能由索引器indexer和排序器sorter来执行完成。Indexer读取repository的文件,并将其转换为一系列的 关键字 排序,称为命中hits。Indexer然后将这些hits放到一系列的数据结构中(目测AVL树),建立了部分排序的好了的正向索引。Indexer还分离出网页中的所有链接,将重要的信息存放在Anchors文件之中。这个文件包含的信息可以确定链接的指向和链接的描述文本。建立索引的过程很长,不过这样的过程是可以用分布式的,用许多台服务器的阵列就可以加快速度。google的索引也很大很大,貌似是PB级别(1PB=1024TB,1TB=1024GB)
何为爬虫,对于python老鸟而言是个再熟悉不过的东西了,走数据挖掘方向的也是了解爬虫的,在这里就简单讲一下。我们把互联网比作一个巨型的蜘蛛网,而蜘蛛网上会有什么咧?可想而知spider!!!而爬虫,即“网络爬虫”就是一个可以在互联网上根据你所需要的内容,来获取网站上的一些信息。
第二部分,用户发送请求。
1.查询框由某人敲入对某种信息的查询开始,比如说如何把妹,什么时候开学,或者xxxx的课程设计报告(歪头)
2.DNS"Hello,这里是接线员.“Google的域名服务器软件运行在全世界Google租用的或者是公司所有的数据中心上,包括一个位于曼哈顿港务局的总部.它们唯一的任务就是尽可能高效的把搜索请求引导到一个Google集群,其中会考虑到哪个集群离搜索者最近以及当时哪个最空闲。
3.集群搜索请求接下来来到至少两百个集群中的一个.这些集群在Google在全世界拥有的数据中心里。
4.Google网页服务器这个程序把一个搜索请求分散到几百或上千的机器上以让它们能同时工作.这跟独自一人在食品店购物和让100人同时找一件物品并扔进你的购物车的差异是一个意思.(分布式这个时候就可以提高速度)
5.索引服务器Google所知道的东西都被保存在一个很大的数据库里.但与其等一台电脑筛选那么多G的数据,Google让几百台电脑同时扫描它的"卡片目录"来寻找任何相关的条目.热门的搜索条目被缓存起来–保存在内存里–几个小时而不是再次从头执行.
6.文档服务器在索引服务器生成了它的结果以后,文档服务器把所有相关的文档(包括链接和文章片断)从那个很大很大的数据库中拉出来.Google做了什么让搜索Web变得这么迅速?其实它没有.它保存有互联网上(被保存在它文档中心的)所有信息的三份拷贝,而所有这些数据都已经被整理好了的。
7.拼写服务器Google不懂阅读语句;它会查找字词的模式,可以是英语的也可以是梵语的.如果它根据你的搜索请求的模式得到1,000个结果但却找到一百万个由一个类似模式得到的结果,那它将把那些点连接起来并礼貌的询问你是否原本想要查询这些词语,甚至当它已经提供结果的时候也会发生.比如你的肥胖的手指输入"hwedge funds”(在键盘上e与w相邻.如果手指太粗就可能同时按下)的时候。
8.广告服务器任何搜索查询同时也会通过一个广告数据库,之后匹配的结果将会提供给Web服务器,来把这些广告放在结果页上.广告团队其实在和搜索团队赛跑.Google发誓让所有的搜索都能尽快的执行;所以如果广告结果需要比搜索结果更长的时间来生成,那么这些广告就不会被放到结果页上–Google也就没法从那次搜索中赚钱。
9.页面生成器Google网页服务器把几千条为这次搜索查询生成的结果收集起来,整理组织所有的数据,然后把Google简洁可爱的结果页展示在你的浏览器窗口里,所有的一切都发生在比看着条句子短的时间内。
10.搜索结果显示完毕一般在0.25s,或者更短。

       摘抄并编辑,来源自一位不知名网友,共同学习。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后第一间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后第一间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后第一间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值