搜索引擎如何工作并使您的生活更轻松?
已发表: 2015-11-06Short Bytes:搜索引擎是一种软件,它允许根据输入的搜索查询,通过使用网络爬虫和网络索引、一些胖公式和智能算法来显示相关的网页结果,以收集适当的数据。
在您的计算机上加载此网页时,进行了数千次搜索。 但是,这是否曾经刺激过你的神经元,搜索引擎是如何工作的?Google 如何在一瞬间为您提供最佳结果? 实际上,在谷歌、必应出现之前,这并不重要。 如果没有谷歌、必应或雅虎,情况就会大不相同。 让我们深入搜索引擎的世界,看看搜索引擎是如何工作的。
窥视历史
搜索引擎的童话故事始于 1990 年代,当时 Tim Berners-Lee 曾经将每一个新的网络服务器加入到由 CERN 网络服务器维护的列表中。 直到 93 年 9 月,互联网上还没有搜索引擎,只有少数能够维护文件名数据库的工具。 Archie、Veronica、Jughead 是这一类别的第一批参赛者。
日内瓦大学的 Oscar Nierstrasz 获得了第一个名为 W3Catalog 的搜索引擎的认可。 他编写了一些严肃的 Perl 脚本,最终在 1993 年 9 月 3 日推出了世界上第一个搜索引擎。此外,1993 年出现了许多其他搜索引擎。 JumpStation 由 Jonathon Fletcher、AliWeb、WWW Worm 等 Yahoo! 1995 年作为网络目录推出,但从 2000 年开始使用 Inktomi 的引擎搜索,然后在 2009 年转移到微软的 Bing。
现在,谈论作为搜索引擎术语的主要同义词的名称,谷歌搜索,是两名斯坦福大学毕业生拉里佩奇和塞尔吉布林的研究项目,在 1995 年 3 月有最初的足迹。谷歌的工作最初是受到启发的Page的反向链接方法是根据一个网页有多少反向链接进行计算,以衡量该页面在万维网中的重要性。 “我得到的最好的建议”,佩奇回忆说,他的主管特里·维诺格拉德是如何支持他的想法的。 从那时起,谷歌就再也没有回头。
一切从爬行开始
一个处于初期阶段的婴儿搜索引擎开始探索万维网,它用它的小手和膝盖探索它在网页上找到的所有其他链接并将它们存储在它的数据库中。
现在,让我们关注一些幕后的技术思想,搜索引擎包含一个网络爬虫软件,它基本上是一个互联网机器人,其任务是打开网页上的所有超链接,并从所有链接中创建一个文本和元数据数据库. 它从一组初始访问链接开始,称为种子。 一旦它继续访问这些链接,就会在要访问的现有 URL 列表中添加新链接,称为 Crawl Frontier。
当爬虫遍历链接时,它会从这些网页下载信息,以便稍后以快照的形式查看,因为下载整个网页需要大量数据,而且它的成本很低,至少在印度等国家。 我敢打赌,如果谷歌在印度成立,他们所有的钱都将用于支付互联网账单。 希望这不是现在关注的话题。
网络爬虫基于一些策略探索网页:
选择策略:爬虫决定它应该下载哪些页面和不应该下载哪些页面。 选择策略侧重于下载网页最相关的内容,而不是一些不重要的数据。
重新访问政策:由于互联网的动态特性,Crawler 会安排重新打开网页并编辑其数据库中的更改的时间,这使得 Crawler 很难保持与最新版本的更新。网页。
并行化策略:爬虫一次使用多个进程来探索称为分布式爬虫的链接,但有时不同进程可能会下载相同的网页,因此爬虫保持所有进程之间的协调以消除任何可能表里不一。
礼貌政策:当爬虫遍历一个网站时,它会同时从中下载网页,从而增加了托管该网站的网络服务器的负载。 因此,实现了一个术语“Crawl-Delay”,其中爬虫在从网络服务器下载一些数据后必须等待几秒钟,并受礼貌策略的约束。
另请阅读:如何在 Python 中构建基本的 Web 爬虫
标准网络爬虫的高级架构:
上图描述了网络爬虫的工作原理。 它打开初始链接列表,然后打开这些链接中的链接,依此类推。
维基百科写道,计算机科学研究人员 Vladislav Shkapenyuk 和 Torsten Suel 指出:
虽然构建一个在短时间内每秒下载几页的慢速爬虫相当容易,但构建一个可以在几周内下载数亿页的高性能系统在系统设计中提出了许多挑战, I/O 和网络效率,以及稳健性和可管理性。
索引爬虫
在婴儿搜索引擎在整个互联网上爬行后,它会为它找到的所有网页创建一个索引。 拥有索引比浪费时间从大量大型文档中查找搜索查询要好得多,它将节省时间和资源。
有许多因素有助于为搜索引擎创建有效的索引系统。 索引器使用的存储技术、索引的大小、快速找到包含搜索关键字的文档的能力等是影响索引效率和可靠性的因素。
成功制作网络索引的主要障碍之一是两个进程之间的冲突。 假设一个进程想要搜索一个文档,同时另一个进程想要在索引中添加一个文档,这会在两个进程之间产生冲突。 搜索引擎为了处理更多数据而实施分布式计算,使问题更加严重。
索引类型
转发:在这些类型的索引中,文档中存在的所有关键字都存储在列表中。 前向索引在索引的开始阶段很容易创建,因为它使异步索引器能够相互协作。
反向:将正向索引排序并转换为反向索引,其中包含特定关键字的每个文档与包含该关键字的其他文档放在一起。 反向索引简化了为给定搜索查询查找相关文档的过程,而正向索引并非如此。
另请阅读:什么是 DNS(域名系统)及其工作原理?
文件解析
也称为标记化,是指对文档的组件进行分解,例如关键字(称为标记)、图像和其他媒体,以便以后可以将它们插入索引中。 该方法主要侧重于理解母语并预测用户可能搜索的关键字,这是创建有效网络索引系统的基础。
主要挑战包括找到要提取的关键字的单词边界,因为我们可以看到像中文和日文这样的语言通常在其语言脚本中没有空格。 理解一种语言所具有的歧义性也是一个值得关注的问题,因为一些语言会随着地理变化而略有不同,甚至有很大差异。 此外,一些网页效率低下没有明确提及所使用的语言也是一个值得关注的问题,并增加了索引器的工作量。
搜索引擎能够识别各种文件格式并成功地从中提取数据,在这些情况下必须格外小心。
元标记在快速创建索引方面也非常有用,它们减少了网络索引器的工作量并简化了完全解析整个文档的需要。 您会在本文底部找到附加的元标记。
搜索索引
现在,宝宝搜索引擎已经不是宝宝了,他学会了如何爬行,如何快速高效地抓取东西,如何系统地整理自己的东西。 假设他的朋友让他从他的安排中找到一些东西,他会怎么做? 有四种类型的搜索查询在使用中,虽然它们不是正式派生的,但它们随着时间的推移而发展,并且已被发现在用户提出的现实生活查询方面是有效的。
导航:该术语用于用户想要访问 Internet 上存在的特定网页或网站的查询。 例如,当您在 Google 上搜索fossBytes时,您正在启动导航查询。
信息性:这种类型的查询有数千个结果,涵盖了增强用户知识的一般主题。 例如,当您搜索史蒂夫乔布斯时,您将看到与史蒂夫乔布斯相关的所有链接。
事务性:关注用户执行特定操作的意图的查询可能涉及一组预定义的指令。 例如,如何找到丢失/被盗的笔记本电脑?
连接性:这些类型的查询不经常使用,它们关注从网站创建的索引的连接程度。 例如,如果您搜索,维基百科上有多少页?
Google 和 Bing 创建了一些严谨的算法,足以确定与您的查询最相关的结果。 Google 声称会根据 200 多个因素计算您的搜索结果,例如内容质量、新旧、网页安全等等。 他们的搜索实验室任命了世界上最伟大的头脑,他们进行艰苦的计算并处理令人兴奋的公式,只是为了让搜索对您来说更加简单和快捷。
其他显着特点*
图片搜索:您会惊讶地发现 Google 的著名图片搜索工具背后的灵感。 J.Lo,是的,你没听错,J.Lo 和她在 2000 年格莱美颁奖典礼上的绿色范思哲 (ver-sah-chay) 礼服是谷歌推出图片搜索的真正原因,因为人们正忙着谷歌搜索她。
埃里克施密特在其 2015 年 1 月 19 日发表的题为“修补匠的学徒”的文章中说。
语音搜索:谷歌经过一番努力,率先在其搜索引擎上引入了语音搜索,随后其他搜索引擎也纷纷实现了这一功能。
垃圾邮件打击:搜索引擎部署了一些严格的算法,以便他们可以保护您免受垃圾邮件攻击。 垃圾邮件基本上是散布在整个互联网上的消息或文件,可能用于广告或传播病毒。 同样在这件事上,谷歌人员手动通知他们发现负责在互联网上传播垃圾邮件的网站。
位置优化:搜索引擎现在能够根据用户的位置显示结果。 如果搜索,班加罗尔的天气怎么样,那么天气统计数据将参考班加罗尔。
更好地了解您:现代搜索引擎能够理解用户查询的含义,而不是查找用户输入的关键字。
自动完成:在您键入时根据您之前的搜索和其他用户进行的搜索来预测您的搜索查询的能力。
知识图:此功能由 Google 搜索提供,展示了其根据现实生活中的人物、地点和事件提供搜索结果的能力。
家长控制:搜索引擎允许小型家长控制他们的孩子在互联网上的活动。
* 很难涵盖这些强大的搜索引擎提供的大量功能。
清盘
搜索引擎为使我们的生活更简单做出了贡献,他们为利用互联网上的所有信息所做的辛勤工作是无价的。 但是这种探索导致了我们个人空间在公共平台上的展示,我必须说,是时候为我们走过的路感到慌张了,除非我们回顾自己的行为为时已晚而我们的生活只是尴尬的双年展。 我们不能否认搜索引擎现在是我们数字人格分裂的重要组成部分。 我们只需要利用我们已经获得的技术,而不是让它将我们奴役在我们自己的恶行的锁链中。
好了,不多说感情线了,欣赏一下那个现在已经十几岁的宝贝搜索引擎的可爱和才华,对你的理解更深了。 谷歌一直在那里为我们搜索一切,它是我们许多人的互联网,我们必须珍惜我们在使用谷歌搜索时获得的良好体验。 哦! 我忘了提到必应,你也很棒。 保持警惕,保持安全并使用 Google 搜索。
观看此视频并了解有关搜索引擎的更多信息:
您是否曾经点击过 Google 搜索上的“手气不错”按钮。 打开它并在下面的评论部分告诉我们你最喜欢哪个涂鸦。