搜索引擎的工作原理
时间:2010-09-08 来源:blue-water
搜索引擎的出现大大方便了我们的互联网应用,很难想象没有搜索引擎的互联网,那人们寻找信息就不得不依赖自己的记忆或者是别人的介绍,诸如“分类目录”之类的网站严格来说也是“别人的介绍”。没有搜索引擎的互联网,只有少数的网站才能够成为宠儿,如新浪,美国在线(aol)等,我们称之为“常青树”。
那么搜索引擎如何在提供人们想要的信息呢?搜索引擎的工作原理是什么呢?
1.在互联网上寻找信息。万里长征的第一步。搜索引擎的信息都是寻找出来的,使用一种自动程序。叫做spider。俗称蜘蛛。如百度的蜘蛛就叫做baiduspider。搜索引擎的信息搜集基本都是自动的。那么,蜘蛛依靠什么方式来发现网页呢?它是根据网站的超链接来寻找的。找到一个之后,再找这个链接的网页内容,内容里面可能还有超级链接,那么久继续找。超链接组成的网络就像蜘蛛结成的网一样。那么在网络上的这种程序当然叫蜘蛛了。所以我们在网站建设的时候要注意尽量让搜索引擎发现我们建设的网站。以期让我们的网站有好的排名。
2.整理收集来的信息:搜索引擎整理信息的过程称为“建立索引”。搜索引擎不仅要保存搜集起来的信息,还要将它们按照一定的规则进行编排。关于具体的规则,则是广大网站优化者需要研究的,这些规则是很复杂也很多的。如果只整理不按规则排的话,那我们去搜索引擎找信息的时候,搜索引擎服务器都要临时查找,要耗费许多的时间和精力。
3.接受查询:客户在输入框中填入信息。并提交请求。搜索引擎按照用户的请求来检索自己的文件,然后将符合要求的结果返回到客户的浏览器来。搜索引擎每天接收的数据查询很大。所以要求搜索引擎要有很多的服务器才行,通过大量的服务器集中,产生足够的速度来满足需求。一般搜索引擎在返回信息的时候还会带一些信息的描述,一般是网页的描述,以进一步让用户识别是不是自己想要的。
在抓取网页的时候,网络蜘蛛有两种选择来抓取:广度优先和深度优先的策略。广度优先是指网络蜘蛛会先抓取起始网页中链接的所有网页,在抓取的网页里面如果还有链接,就抓取在这个网页中链接的所有网页。这是最常用的方式,因为这个方法可以让网络蜘蛛并行处理,提高其抓取速度。深度优先是指网络蜘蛛会从起始页开始,一个链接一个链接跟踪下去,处理完这条线路之后再转入下一个起始页,继续跟踪链接。这样的蜘蛛在设计上比较容易。
对于搜索引擎来说,要抓取互联网上所有的网页几乎是不可能的,谷歌(全球最大的搜索引擎、数据量也是最多的。谷歌的服务器超过20万台,一般来说,100万台才是比较符合事实的。)也不过是抓取了整个网页数量的一半。搜索引擎的算法现在还不是很先进。无法遍历所有的网页,哪怕有超链接。找不到的网站我们称之为“暗站”。暗站占了所有网站的很大部分。是搜索算法要考虑的地方。其次,网站数量太多,网站里面的网页也是超乎人的想象的,由于数据量太大,在提供搜索时也会有效率方面的影响。因此,许多搜索引擎的网络蜘蛛只是抓取那些重要的网页,而在抓取的时候评价重要性主要的依据是某个网页的链接深度。搜索引擎的发展还有待加强。
摘自:http://www.siviy.com/webnews/newsshow.asp?id=345