赞
踩
第1章. 介绍
历史
Shay Banon (kimchy),Compass的缔造者,决定为他的妻子(刚巧就是一个厨师)写一个简单的基于Java的食谱管理软件。该工具的主要需求是能获取大量丰富的烹饪知识,并快速得到相关的信息。使用Spring框架,Hibernate和其他的工具,使得开发变得快速简单。但是他惊奇地发现,这里面没有类似方便的搜索引擎工具。后来,他不再为此烦恼,因为他找到了Lucene,Lucene是一个了不起的搜索引擎(或IR库)。不过开发者要的是简易工具,而Lucene本身较复杂,因此Shay开始了Compass之旅。
在当前的应用中,搜索成为一个“必有”的需求。人们期望各种应用(包括富客户端,基于Web和服务器端等等)都能提供一个类似于Google那样的搜索功能,具有高命中率的搜索结果。让它成为食谱管理软件,交易应用,或以内容管理驱动的网站都应具有的功能——人们期望能让这种高命中率的搜索方式横跨整个商业应用领域。
另外一方面,Java开发者也需要它。Java开发者习惯于简单的开发模式:用Spring框架、Hibernate和EJB3.0——迄今为止还没有一个简单的Java搜索引擎解决方案。Compass正好弥补这个缺口。
许多应用,刚开始使用搜寻引擎只是为了提供一个虚幻的搜索框,后来发现搜索引擎可以用于许多相关业务数据的提取。一旦搜索引擎拿到应用业务模式的一个合理的表示方法,大部分情况,它只是有意识地执行简单的查询,而不是去执行实际数据的持久化操作(通常是数据库)。两个比较典型的例子:Jira和Confluence,它们在执行生成报表和搜索(自然)业务的大部分操作时使用的是搜索引擎,而不是通常的数据库操作。
(译者注:JIRA 是目前比较流行的基于Java架构的管理系统,JIRA是集项目计划、任务分配、需求管理、错误跟踪于一体的商业软件。Confluence是基于一个企业级的Wiki软件)
------------------------------------------------------------------------------------------------
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。