论文部分内容阅读
进入21世纪,面向服务架构(SOA)被视作是企业应用开发中的重要架构而得到长足的发展。起初,SOA仅仅是作为企业内部应用的架构模式,各应用通过服务的提供与消费来降低耦合。随着互联网的高速发展,有相当多的社区和公共组织将其业务以服务的形式发布到互联网上。这类互联网公共服务并不像Web Service规范下有着严格的描述规则,而是由服务提供者自行编写一篇HTML文档进行描述。为了能够有效发现并检索这些服务,本文对面向互联网公共服务的搜索引擎技术进行了深入的研究。针对互联网公共服务的发现、索引、检索三大问题,本文主要研究工作及关键技术包括:(1)互联网公共服务发现爬虫的研究。互联网公共服务发现爬虫解决了互联网公共服务的发现问题,它通过互联网公共服务描述文档来发现服务。针对互联网公共服务描述文档多由网页脚本生成的特点,本文基于浏览器内核改进了简单网络爬虫并提出了服务参数返回值示例过滤方法,解决了文档内容获取不准确的问题。为了使网络爬虫能识别互联网公共服务描述文档,考察了多种分类算法,测定了最合适的算法及参数。(2)互联网公共服务索引技术的研究。互联网公共服务索引技术解决了互联网公共服务的索引问题,同时给互联网公共服务的检索问题提供支撑。本文采用的是词-文档矩阵作为互联网公共服务的索引机制。针对搜索引擎环境下词-文档矩阵为一个稀疏矩阵的问题,本文改进了词-文档矩阵,设计了一种压缩存储的数据结构,减少了存储空间消耗。同时,本文针对该压缩存储的数据结构设计了压缩词-文档矩阵的转置算法,仍然能够保证搜索时的性能。(3)用户搜索请求处理与执行的研究。用户搜索请求处理与执行解决了互联网公共服务的搜索问题。本文通过分词、匹配、结果合并排序三个步骤处理用户以自然语言提出的搜索请求。其中在结果合并排序阶段,本文改进了基于TF-IDF值和值的方法,设计了基于TF-IDF值均值以及标准差的排序方法,与普通搜索引擎的结果排序方法相比,能够更加准确地返回户需要的互联网公共服务。(4)在上述研究成果的基础上,本文设计并实现了一个面向互联网公共服务的搜索引擎原型系统APISE,并利用APISE从互联网抓取的实验数据,对本文关键技术及解决方案进行了实验验证,验证了本文成果能够帮助用户方便、快捷、准确地找到所需的互联网公共服务API。