登陆注册
19122000000001

第1章 前言

说说搜索引擎

搜索引擎这几年热起来了。

作为世界上最大、最出名的搜索引擎,Google在很多方面都发挥了重要的作用。

但是,当手中没有Google的搜索代码时,该如何搭建一个自己的搜索引擎呢?业界的人士说,全新开发一套完备的企业级搜索引擎要五年的时间。诚然,许多“业界”人士的话并不可信,不过,在搜索引擎这一块,真想要做好确实不容易。

开发搜索引擎耗费大量的时间和精力,所以有一些人开始研发独立的搜索引擎模块,并将其源代码开放,这样就可以给其他需要建立自己的搜索引擎的人提供一个基础平台。在这些开源搜索引擎模块的基础上做开发,可以节约非常多的时间和精力,大大减少了开发成本,缩短了产品投入市场的周期。而且,由于这些平台是开源的,可以亲自检查每一行代码,修改算法和显示格式等内容,这样的搜索引擎就相当于自己写的,用起来放心。

有时使用某些商业搜索模块,尽管搜索效果也很好,但是很难知道在单击“搜索”按钮的瞬间自己是否做了一些自己并不想做的事情,比如:给某个陌生人发送了一个特洛伊木马。

写这本书的动机

开源搜索引擎,对解决企业搜索等问题提供了可靠的二次开发平台(有的甚至不需要二次开发),大大提高了开发搜索引擎的效率,缩减了成本,好处多多。所以,需要有一些书来介绍如何使用开源搜索模块来提供搜索服务,而目前市面上这类书籍并不多。

我写了几本书,从搜索引擎的原理开始,讲解基于数据库的搜索引擎、基于文件系统的搜索引擎,内容覆盖各种主流的数据库(如Oracle,SQL Server,MySQL)提供的全文搜索机制到各种开源搜索引擎(如Lucene,DotLucene,Nutch,Hyper Estraier)实现的网络搜索平台所需的一切核心知识。当然,其中也不乏分词原理、搜索算法、Spider抓取网页以及对各种不同格式文件(如HTML,Word,PDF等)的解析等知识。

实事求是地讲,做搜索引擎是一个门槛较高的行业,不是普通的程序员轻易就可以做的。

但有了这几本书,即便是普通的程序员也可以轻松地搭建起自己的搜索引擎了。

这本书的特点

本书的内容以实践为主,并不深挖理论。用石志国博士的话来讲,就是“理论联系实际,并有所发展”。这是他写书的特点,同样适用于我。

这几本书中包含了必要的理论,但以实践为主。所讲的理论都不是纸上谈兵,而是可以立即付诸实践进行工程应用的。代码可以直接拿出来用(只是不要忘了输入信息验证等基本的安全检查),构建出搜索引擎。

书中含有大量的案例,由浅入深。浅,并不从“什么是程序设计”开始,所以读者需要具备一些编程的基础知识才能看懂。深,并没有深到“只可意会,无法言传”的地步,所以读者不需要担心无法看懂。

选择本书的理由

我始终认为翻译别人的书容易,只要照实翻就行。可是自己写书就不是很容易,一定要写有用的书,写好书。以下几点可以成为你看这本书的理由。

第一,搜索引擎很热,构建搜索引擎很有用。这本书可以使读者轻松掌握搭建搜索引擎平台所需的核心知识,并能轻松搭建起自己的搜索引擎平台。

第二,这本书讲解详细,书中涉及的代码全部提供。使用这些代码,即使不进行修改,也可以建立起一个中型的搜索平台了。

第三,网上有些文档,多半是英文的,还有其他国家语言的。对于外文不太好的读者来说,理解起来难免有误差和困难。这本书,至少比直接翻译外国文档要强一些,看起来会轻松些。

第四,即便网上所有的文档都不是外文的,而是中文的,我依然认为买一本书来看比在网上浏览要好得多。人要爱护眼睛,软件工程师尤其是这样。

这本书的内容和编写思路

这本书共包括7章,可以分成三个部分。介绍了搜索引擎相关的核心知识。

第一部分(第1章):搜索引擎概论。介绍搜索引擎的历史及当前的发展状况,与搜索引擎相关的公司、技术,以及搜索引擎对人类生活的影响。

第二部分(第2章):搜索引擎的原理和相关技术。介绍搜索引擎的基本构造方法,实现索引建立和搜索的基本算法。

第三部分(第3~7章):基于数据库的全文搜索。介绍通常采用数据库的全文索引服务时搜索引擎的基本搭建方式。对于Windows索引服务,专门稍微细致地讲了一些。

这本书从当前搜索引擎市场的形势分析开始,陆续地介绍了与开发搜索引擎相关的理论和技术,这是为了使读者对搜索引擎有完全的认识,从整体上把握搜索引擎行业的走势及相关的技术情况,如果读者希望自己创立一个搜索引擎的公司或者在搜索行业有大作为,那么,这部分知识是必不可少的。

之后,介绍了常规的数据库搜索引擎的实现原理,这部分知识非常简单,大部分人对它都很熟悉。所以只做了简单的回顾,没有细致介绍。然而这部分知识又是需要的,它可以作为初级读者对搜索的新接触,也可以作为中级读者学习全文搜索引擎的过渡。介绍了这部分知识之后,再介绍主流数据库的全文索引服务和全文搜索支持就不会显得唐突了。

本书的最后介绍了目前世界上应用最广的三种数据库(Oracle,SQL Server,MySQL)提供的全文索引服务,并且介绍了有效的案例来实现应用程序层面的全文搜索模块。使用这些技术(只需在案例基础上修改)就可以轻松地搭建起企业搜索引擎。

另外,考虑到Windows的用户较多,专门介绍了Windows索引服务,在某些情况下,它是解决企业搜索的有效途径。

这样,通过这些知识的讲解,有关搜索引擎的理论、技术入门及基于数据库的全文搜索策略就阐述清楚了。对于想要涉足搜索行业的软件开发人员来说,这些知识足以将其领入门并使其可以向前走一段路。

但是,如果读者想要再向前走一步,建议看看本书的兄弟篇《迅速搭建全文搜索平台——开源搜索引擎实战教程》。兄弟篇介绍了Lucene,Lucene.net,DotLucene(现已更名为Lucene.net),Lemur,Nutch,Hyper Estraier等高性能的开源搜索引擎的原理和架设方法以及抓取网页,分词处理、中文支持等相关内容。

谅解和支持本书从章节的安排到案例的编写,都经过了仔细揣摩,力图做到最好。然而,没有最好,只有更好。

本书尽力做到精练,且没有附加光盘以减少读者的购书成本。本书的所有源代码都放在出版社的网站上(http://press.bjtu.edu.cn),读者可以免费下载。

在这本书中发现任何问题,皆望能与我联系,以使本书臻于完善。我的E-mail:yutianen@163.com。

衷心感谢在我的成长过程中,得到过许多人的关心和鼓舞,他们启迪了我的思维,拓宽了我的视野,如果人生是在沙漠中旅行,他们就是眼前的足印和身上的水。

在本书的写作过程中,得到了许多人的支持和鼓励,他们是:哈尔滨工业大学语音处理研究室的李海峰老师,校部机关的蔡德彰、李新美、曲洪勤、黄峰、冯健、孔祥钰等老师,热能动力工程研究所的周逊老师,传统工业基地转型研究所的陈晓东老师,软件学院的田英鑫老师,网络与信息中心的杨庆海、何慧、李亚平、王宇航等老师,研究生院的彭远奎、朱群益、张思琦、王晓磊、雷稚蔷等老师,计时器研究所的王晓溪老师、图书馆的耿小兵老师,外国语学院的王桂芝、常巍(Sabrina)等老师,机器人研究所的蔡鹤皋院士,控制理论与制导技术研究中心的段广仁、尹航、周彬老师、科学园的宋斌、刘弋滢等老师,计算机学院的刘开昌老师,等等。

他们都是我的良师益友,是我心中的动力,每当想到他们,我总觉得自己应该放弃休息,去做更多有益的事,将真诚与善良传递下去。

在这里,对他们表示衷心的感谢!

同时,对哈工大天萌联合的一切成员表示感谢!那些曾跟我在一起的朋友,我会记得你们为我泡的每一杯咖啡和茶。那些始终保持独立的朋友,我也祝愿你们会有更加辉煌的未来。

天萌联合永远是哈工大最强、最自由的社团,你们这些天萌的元老的名字,将永远铭刻在哈工大的历史上,铭刻在我的心里。

另外,需要特别感谢:

石志国博士,他的《ASP精解案例教程》一书是我学习编程的开端。他是个高尚的人。这本书定名为“精解案例教程”就是表达对他的敬意。

顾倩萌。让我又怜又爱,时刻挂心。她的爱是股特殊的强大力量,让我找回记忆、重新开始唱歌、安静、宁神。她是我最爱的小月,是我唯一的轻松和仅存的快乐。没有小月,生命不该开始。没有小月,一切都没有意义。

于天恩

2007年7月

哈工大

天人居

同类推荐
  • 新课标英语学习资源库-奥林匹斯山众神

    新课标英语学习资源库-奥林匹斯山众神

    课标是常新的,经典却是永恒的,走进经典的选择,学习兴趣的提高你只有一步之遥。奥林匹斯山众神有普罗米修斯,波塞冬,厄洛斯,阿波罗,海尔墨斯,阿尔特弥斯等。
  • 盛开·90后新概念·塔罗·规则

    盛开·90后新概念·塔罗·规则

    作为盛开的最新特色塔罗系列,本系列2014年共计12本,本书是该系列第2本。本系列作品均来自90后获奖者的最新作品,主要收录历届全国新概念作文获奖大赛、萌芽、最小说获奖者的精华作品,有小说、散文等。这些作品空灵隽秀、质朴绵长,勾勒出了最独特的青春风貌和青春生活,表现了他们卓越的思维、丰富细腻的情感和超强的文字驾驭能力。对于青少年读者,是可读性非常强的作文学习辅导和课外阅读书籍。
  • 语文教学的趣味古文设计

    语文教学的趣味古文设计

    语文教学正从应试教育向素质教育转化,在此情况下,怎样从语文教学自身特点中寻找突破点,激发学生的学习兴趣,创新教学,提高教学质量,已成为语文教师探索的问题。根据广大青年学生好奇、求知欲强、思维活跃、学习从兴趣出发的特点,充分利用语文本身独具的内容丰富、趣味性强等特点,努力挖掘各种趣味因素,创设情境,以各种教学形式诱发、激励学生的学习兴趣与求知欲望,使他们由被动的“要我学”转变为主动的“我要学”,从而搞活教学,并取得良好的教学效果。
  • 大学生性与生殖健康教育教程

    大学生性与生殖健康教育教程

    徐明等编著的《大学生性与生殖健康教育教程》就是以社会主义性伦理道德为主线,根据民族地区中小学健康教育的情况,有针对性地对大学生进行性生理、性发育、性卫生保健、人类性心理发展以及有关性文化、性道德、性法制等方面知识的系统教育,旨在指导大学生的生活行为,最终达到促进大学生身心健康的目的。另外,通过本门课程的学习帮助大学生(尤其是师范、新闻类专业的大学生)认识性与生殖健康教育的重要意义,树立正确的性观念,掌握性科学知识宣传教育的基本原则,使之将来能自觉地、有效地担负起向青少年进行性教育的重任。本教材也可作为性与生殖健康教育师资培训、教师继续教育及家长培训的教材。
  • 智慧教育活动用书-影视千秋

    智慧教育活动用书-影视千秋

    “智慧教育活动用书”丛书公共30册,是一套汉语与英语的双语丛书。丛书内容包括星宇迷尘、科普长廊、网络生活、网络前沿、电脑学堂、心灵密码、健康饮食、生命律动、体坛经纬、影视千秋等30个方面。智慧教育即教育信息化,本套丛书把比较前沿的信息教育化,在学习科技知识的同时也加强了英语的阅读能力。
热门推荐
  • 花落枫林晚

    花落枫林晚

    白炽集团出了间谍?是偶然还是一场蓄谋已久的暗杀。枫树林里的故事,牵扯到5年前的薇安血案。。。恋上不该爱的人,衍生出不该有的感情,做出不该做的选择。江玫羽,商业女王,杀手之王,黑帮老大,会怎样面对“不属于她”的恋爱呢?本文虐男主哦,要虐女主,总裁文的,请自动屏蔽~作者花之时,QQ和微信都是这个名字哦~
  • 茅山捉鬼师

    茅山捉鬼师

    茅山弟子秦重道法初成,下山历练,从此踏入都市,遭遇各种妖魔鬼怪,奇诡异事。厉鬼冤魂,野仙邪神,道法密术,传说精怪,一一出世。养小鬼的御姐老师,身负诅咒的美女校花,仙家附体的小萝莉,双重人格的小师妹,纷纷而来。苗疆蛊术,南洋降头,东瀛式神,妖邪巫术……群魔乱舞。名震天下的茅山道术,能否再一展全长?
  • 孟婆平安

    孟婆平安

    人离世后,都要喝一碗孟婆汤,散去前世的记忆,洗去一身的沧桑,干干净净的投入下一场故事。熬汤的是孟婆,喝汤的是离人,每个人都有一段故事,包括孟婆。孟婆神是平安,阿奶给她取这个名字,原意是不涉红尘,平平安安的修行,或许有朝一日,九天之上,还会有平安的位置。可是阎摩,幽冥之主,你还会再放开平安的手吗?
  • 彼岸清水

    彼岸清水

    负剑之人算不算剑客啊?我时常会深思至深夜,想着剑客潇洒地舞剑。直到有一天,春风来了,杏花开了,淡金色的阳光笼罩着凉爽的清晨,薄雾化作了露水打湿了芬芳的花瓣。有脚步近了,问我吃草的马就必须叫草马吗?我顿悟…
  • 禁术之主

    禁术之主

    这是一个术的世界。姜阳被关入镇魂塔千年之久,受尽生离之痛。破塔而出之日,却只见到妹妹的孤坟在镇魂塔前静静守候千年……生离死别,姜阳一一尝尽。在复仇最后时刻,因为禁术异动,姜阳重生回到了十五岁那年。重生一世,姜阳发誓绝对不会再让前世的悲剧发生,决不再让父亲受冤屈死,决不再让妹妹卖做人奴。对那些谤我、欺我、辱我、笑我、轻我、贱我、恶我、骗我的贱人,唯有一句:“杀无赦!”……“魂力是一门深奥的科学,只有学习它,熟悉它,才能掌控它。”刀妹如是说道。
  • 天地玄志

    天地玄志

    我们每一个人都是芸芸众生中的一份子,也是芸芸众生中的一粒子,故事从一系列谜案开始从古墓开启,神奇的秦岭大墓里发生了什么?又会怎样?让我们跟随主人公的足迹踏上一次奇妙玄幻之旅
  • 宠妻大佬:宝贝儿,别闹

    宠妻大佬:宝贝儿,别闹

    女主陌兮在阴差阳错中,进入了贵族学校,她的妈妈,知道16年前的真相,她进入了贵族学校,危险在靠近……
  • 超现实武斗学园

    超现实武斗学园

    毁灭的战争,却不知暗流早己注定会再次降临。古文明的消逝,却只不过是一个开始…………
  • 灵魂爱情公寓

    灵魂爱情公寓

    孤儿楚然,因两件法宝争夺,而陷入险地,两件法宝却被人道力量牵制,无奈选择与楚然融合,后被天道发现,为避免被抹去的命运,两件法宝不得不带着楚然破开空间而去,因破空时再次受到人道攻击,加之在进入第一个位面被发现,法宝为保命耗尽大半力量,再到达另一个位面时耗尽所有力量后选择了沉睡,楚然将如何才能唤醒它,又将在这个位面掀起什么样的波澜?
  • 浴火重生邪妃祸天下

    浴火重生邪妃祸天下

    当现代异能特工,重生到月府庶出三小姐,如何一路逆天。降神兽,收美男。我第一次写,写的不好,各位看官表见意。