第2章 为数据建立索引与搜索数据
本章涵盖如下内容:
- 使用Apache Lucene为数据建立索引;
- 使用Apache Lucene搜索带索引的数据。
2.1 简介
本章,我们将学习两部分非常重要的内容。第一部分学习如何为数据建立索引,第二部分学习如何搜索带索引的数据,这部分内容与第一部分紧密相连。
在为数据建立索引以及搜索数据的过程中,我们将使用Apache Lucene。它是一个免费、开源的Java软件库,主要用来进行信息检索。Apache Lucene由Apache软件基金会提供支持与发布,遵守Apache软件许可证。
许多现代搜索平台与爬虫工具在后端都使用Apache Lucene为数据建立索引以及对数据进行搜索,比如Apache Solr、ElasticSearch、Apache Nutch。因此,任何想学习这些搜索平台的数据科学家都能从本章的这两部分内容中获益。
2.2 使用Apache Lucene为数据建立索引
本部分,我们将演示如何使用Apache Lucene为大量数据建立索引。若要实现快速搜索数据,第一步就是为这些数据建立索引。实际上,Lucene使用的是倒排全文索引。也就是说,Lucene会考察所有文档,把它们拆分成单词或标记,然后为每一个标记建立索引,这样在搜索某个词语时,它能事先准确地知道要查找哪一个文档。
准备工作
开始之前,先做如下准备。
1.进入Lucene的下载页面,单击Download按钮,下载Apache Lucene。写作本书之时,Lucene最新版本为6.4.1。如图2-1所示,在单击Download按钮之后,你将转到它的镜像网站。
图2-1
2.从中选择一个合适的镜像进行下载。单击镜像网站,你将跳转到发布目录下。如图2-2所示,选择 ...
Get Java数据科学指南 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.