
今天,互联网技术拥有大约3.5亿个注册域名,数十亿个二级域名和数万亿个不同的网页。搜索引擎收集这类页面包含的所有文字,将数百万台技术专业计算机组成一个平面搜索引擎,搜索引擎蜘蛛,免费下载所有可以浏览的网页,分析这类页面的内容,存储在遍布互联网的大中型数据库查询中。
然后,他们每天的任务就是获取这个数据库查询中存储的所有内容,并找出如何利用它对与客户会知道的所有关键词或句子配对的网页按照其相关性进行排序。
分析网页内容
搜索引擎试图从人们的客户的角度来查询网页,但在明确页面内容时,更重要的是猜测页面上有哪些英文单词或句子。包括网页的HTML标识,并且当根据诸如文本大小、在页面上的位置和字体样式的易读性等因素进行数据库索引时,网页上的词语可以被赋予大量的权重值。
您可以指定网页的语言,但大多数搜索引擎现在都可以实现语言识别,以完全自动地识别网页的语言。除此之外,出现在页面上的术语还会遭受被称为stem的全过程,在这个过程中,诸如“作战能力”、“战斗”、“战士”等术语被选择并还原为“战斗”的stem。
建立倒排数据库索引
大多数搜索引擎使用倒排索引来存储网页内容。考虑到倒排索引是如何存储和求解所有内容的,所以把搜索引擎的数据库索引看成是课本反面的数据库索引。书的数据库索引包括书中使用的英文单词列表和出现的页码(比如生物书的数据库索引会包括inflation:65,573-578,654,这样你就可以知道这些页眉中的“inflation”这个词)。如果要列出所有网页上显示信息的所有唯一的单词,那么列表会比所有网页的内容短很多,因为大部分单词都是在几个网页上显示信息的。
存储了数十亿个关键字和语句
搜索互联网上显示的所有唯一信息术语的列表比搜索所有网页的详细信息要快得多,但列表仍然太大,无法将URL与上面显示的关键字即时匹配。解决这个问题的方法是将网页的内容存储为n-gram,其中包含N个子字符串,大多数搜索引擎都会使用三元组来实现这一点。文档的三重表达式是将文本文档分解为所有三个空大小写字符,例如:
“毛衣”={swe,wea,吃,吃,ter}
因为一个术语可以包含26个字母、10个大数字和~10个标记的任意组合,所以可以存储的唯一三元组的数量是(26^10^10)3,相当于97,336。可以立即搜索到一个明显更小的术语列表,而不是互联网技术中所有独特术语的列表,这将是数千亿个。
增强关键关键词的内容
为了保证网页上显示的信息在给定关键词返回的结果列表中,你能做的最关键的事情就是把关键词放在页面的可见部分,然后应用在页眉、元信息内容、页面标题、文章前后的正文中。
将危及搜索引擎如何确定页面上的术语的相关性的其他因素是术语出现的频率、反向文本文档的频率以及其长度的标准化。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)