论坛风格切换
  • 1844阅读
  • 4回复

搜索引擎相关技术浅解 [复制链接]

上一主题 下一主题
admin
用户信息
ID
№.5
级别
五星会员
经验
92%
性别
绝版帅哥
荣誉勋章
 

只看楼主 倒序阅读 使用道具 楼主  发表于: 2014-08-16
— 本帖被 admin 设置为精华(2014-08-16) —
  本文根据一些类似的项目经历和公开的资料,对搜索引擎相关技术作一个浅解。 E.yFCaL  
)fXxkOd  
  1、 爬虫(Spider)——数据来源 5I* 1CIO  
`-nSH)GBM  
  作为搜索引擎海量数据的来源,爬虫是搜索引擎技术的重要一环,闻道软件工作室有自己开发的爬虫,所以对此技术很熟悉。 ko.% @Y(=  
lBn<\Y!^  
  爬虫的英文是Spider,其实翻译成蜘蛛更容易理解,无数网站的链接构成了一张巨大的网,搜索引擎的内容采集程序就像一只只勤劳的蜘蛛在这张网上爬来爬去,每遇到一个感兴趣的节点便记录下来留待其他的程序处理。 *3^7'^j<  
]Vf p,"op  
  爬虫的实现其实不难,笔者用C++开发出一套爬虫的雏形只有500行左右的代码,而用python的话,不足100行。 =Q"thsR  
D}%VZA}].  
  但是,任何程序只要牵扯到了海量数据处理其开发难度和开发周期也会变得非常之大。举一个简单的例子,判断一个链接是否抓取过,这是爬虫每分析出一个链接后都要做的判断。如果此时你的内存中只有几千、几万的链接,即使是一条条的遍历对比也能基本上满足要求,可如果是十万、百万、千万、亿级别呢?红黑树这些算法勉强可以应付,十亿、百亿、千亿、万亿的级别呢?只能建立索引了。 Ym%# "  
4 JBfA,  
  百度技术委员会理事长陈尚义透露,“百度每天处理的数据量将近100个PB,1PB就等于100万个G,相当于5000个国家图书馆的信息量的总和”。 Q3r]T.].h  
oCwep^P(v  
  如此庞大的数据,百度的技术实力可见一斑。 Z=hn }QY.(  
uP7|#>1%  
  除了搜索引擎外其实很多场景都应用到了爬虫技术。如现在新兴的舆情分析系统、数据挖掘系统等。 !d0$cF):  
4P C'7V=S  
  现在越来越多的企业意识到数据的重要性,爬虫作为一个重要的数据来源,将来肯定会在更多领域得到应用。 e?\Od}Hbw  
0r@L A|P  
  2、 中文分词 ——数据预处理 %AV3eqghCg  
Pf8_6z_  
  中文分词也是搜索引擎中一个重要的技术,分词是否精准直接关系到查询结构是否符合搜索者的搜索意图 z@~Z Mk  
SdufI_'B  
  中文分词相对于英文分词来说难度大很多,因为英文有天然的分隔符,每个单词都是一个意思.如“WenDao Software Studio”可以很简单的根据空格分成“WenDao”,“ Software”,“Studio”三个词。而对于对应的中文“闻道软件工作室”,可以有“闻/道/软/件/工/作/室”、“闻道/软/件/工作/室”、“闻道/软件/工作室”等等很多种分法。 y;0Zk~R$  
PazWMmI  
  中文分词是一个需要研究很深入的领域,当然,目前也有一些比较不错中文词库,极大的简化了开发者的工作。 c[1{>z{G  
d+Mogku2  
  3、 全文检索 ——数据预处理 M|y!,/'  
HH*,Oe   
  建立索引是在大数据量查询时必不可少的重要方法。对于建立了索引的数据,我们可以在很短的时间内从海量数据中搜索到相同的数据。 WKr4S<B8mr  
W9Us I  
  为了便于理解,我们可以把索引想象成一本书的目录,有了目录我们就可以在较短的时间内迅速找到我们感兴趣的内容,而不必一页页翻开去找。 I9TNUZq('  
6 y"r '  
  全文检索需要在中文分词之后才能完成,需要把一个文章分成一个个关键词然后分别建立索引,这样才能达到从文章内容中搜索的目的。 qPN  
2+|r*2_glo  
  4、 排序 ——数据预处理 b5p;)#  
5 Bcmz'?!  
  排序是搜索引擎中非常重要的一环,排序不合理同样会极大的伤害用户体验,而很多站长为了提高自身的排名又有许多作弊的手段,这使得排序算法的开发难度更大。 $sL+k 'dY  
9U9ghWH8  
  搜索引擎能获取的参数也就几种,无论排序算法如何变化,那也只是调整这些参数的权重而已,以下列举两个重要的参数。 >yyu:dk-;  
wQ-BY"cK\  
  a)、内容 ^=I[uX-3ue  
zBrIhL]95  
  现在的搜索引擎非常重视用户体验,所以这将是所有影响排名的最重要的参数。 AB!({EIi  
WbFCj0  
  如何判断一个网站的内容质量高低?原创度是一个重要标准。比较常见的原创度判断算法有基于空间向量的余弦算法,算法的根据是关键词的频度和权重,对于很多做伪原创的站长来说,这个值得研究。 a"+VP>4  
$IKN7  
  b)、外链 `,  |l  
{3Gj rE  
  外链仍然是搜素引擎评价一个网站质量的重要标准。在此不再赘述。 3F6'3NvVc2  
i(u zb<  
  5、查询 ——数据显示 Q0 PqyobD  
Q2|6WE  
  很多人认为百度、Google等搜索引擎能够在那么短时间内在海量数据中找到结果,查询算法的难度一定非常复杂,其实不然。相反,这是搜索引擎技术中最简单的一环。它们之所以快,是因为经过前面几个步骤,它们早就准备好了数据等待你的查询。
评价一下你浏览此帖子的感受

精彩

感动

搞笑

开心

愤怒

无聊

灌水
葫芦山庄
用户信息
ID
№.7258
级别
一星会员
经验
72%
性别
保密
荣誉勋章

只看该作者 沙发  发表于: 2014-08-20
很给力的技术文章
豫象网络承接网站项目 联系电话:15942345143、联系QQ:3385302818
yibuys
用户信息
ID
№.19901
级别
一星会员
经验
84%
性别
绝世美女
荣誉勋章

只看该作者 板凳  发表于: 2014-10-25
我看不错噢 谢谢楼主!
易购社区恋依芳商城:http://www.yibuys.com/
yibuys
用户信息
ID
№.19901
级别
一星会员
经验
84%
性别
绝世美女
荣誉勋章

只看该作者 地板  发表于: 2014-10-25
楼主辛苦了,谢谢楼主分享!
易购社区恋依芳商城:http://www.yibuys.com/
yibuys
用户信息
ID
№.19901
级别
一星会员
经验
84%
性别
绝世美女
荣誉勋章

只看该作者 4楼 发表于: 2014-10-25
旗胜社区不能没有像楼主这样的人才
易购社区恋依芳商城:http://www.yibuys.com/
快速回复
限44 字节
如果您提交过一次失败了,可以用”恢复数据”来恢复帖子内容
做人要厚道,看帖要顶帖!
 
上一个 下一个

      鄂公网安备 42062502000001号