在 Apache Solr 中建立索引17 Mar 2025 | 6 分钟阅读 索引是对文档或其他实体进行系统化管理的过程。 为了在文档中定位信息,我们使用索引。
Solr 索引过程概述 Apache Solr 中的索引过程分为三个基本任务
下图提供了在 Solr 中索引文档的三个必要步骤的高级概述。 ![]() Solr 支持我们文档的不同索引格式,包括 JSON、XML 和 CSV。 在上图中,我们选择了 XML,因为 XML 的自描述格式使其易于适应和理解。 下面是一个示例,说明了我们的推文在使用 Solr XML 格式时的外观。 如您所见,XML 格式中显示的每个字段和语法都非常简单; 我们仅定义了所有字段的字段名称和值。 我们没有注意到的是文本分析或文件类型。 这是因为我们在上图中显示的 schema.xml 文档中定义了如何分析字段。 众所周知,Solr 为其所有核心服务提供了一个基本的 HTTP 接口,包括一个用于添加和更新文档的文档更新服务。 在图的左上方,我们描述了使用 HTTP POST 将我们的推文示例的 XML 发送到 Solr 中文档的更新服务。 此外,我们将在本教程的后面部分了解如何添加特定的文档类型,例如 JSON、CSV 和 XML。 现在我们将了解文档更新服务,该服务可用于验证文档中所有字段的内容,然后调用文本分析过程。 分析完所有字段后,生成的文本将添加到索引中,从而使文档可用于搜索。 schema.xml 文件定义了任何文档的字段和字段类型。 对于任何简单的应用程序,可能需要搜索的字段及其类型。 虽然,它可用于对您的架构进行一些预先规划。 设计您的架构通过我们的示例,搜索的微博应用程序将直接深入其中并定义我们要索引的文档。 实际上,对于实际应用程序而言,此过程并非总是显而易见的,因此进行一些预先设计和计划工作会有所帮助。 现在,我们将学习搜索应用程序的基本设计注意事项。 具体来说,我们将学习回答有关我们搜索软件的以下关键问题
让我们确定搜索应用程序中文档的适当粒度,这将影响您如何回答其他问题。 使用 Post 命令添加文档在 Solr 的 bin 目录中,有一个 post 命令。 我们可以索引 Solr 中各种格式的文件,例如 CSV、JSON 和 XML。 我们可以浏览 Solr 的 bin 目录并运行 post 命令的 -h 选项,如下面的代码块所示。 当我们执行上述命令时,我们将获得 post 命令的选项列表,如下所示。 示例 让我们使用一个名为 sample.csv 的文件,其中包含给定的内容(在 bin 目录中)。
上面的数据表包含个人详细信息,例如学生 ID、名字、电话和城市名称。 下面给出了 data-files 的 CSV 文件。 在这里,我们必须注意,您需要提及架构,记录其第一行。
您可以使用下面给出的 post 命令在名为 "sample_Solr" 的核心中索引这些数据 当我们执行上述命令时,给定的文档将在指定的核心下索引,并生成给定的输出。 使用给定的 URL 转到 Solr Web 用户界面的主页 https://:8983/ 在主页上选择核心 Solr_sample。 不做任何修改,单击页面底部的 ExecuteQuery 按钮。 ![]() 当我们执行查询时,我们可以观察到索引 CSV 文档的数据以默认格式 (JSON) 显示,如以下屏幕截图所示。 ![]() 注意 - 同样,我们可以索引不同的文件格式,例如 XML、CSV、JSON 等。使用 Solr Web 界面添加文档您还可以使用 Solr 提供的 Web 界面来索引文档。 让我们看看如何索引以下 JSON 文档。 步骤 1: 使用给定的 URL 转到 Solr Web 界面 - https://:8983/ ![]() 步骤 2: 选择核心 "Solr_sample"。 字段 Request Handler、Common Within、Overwrite 和 Boost 的值分别默认为/update、1000、true 和 1.0,如下图所示。 步骤 3: 最后,从 CSV、XML、JSON 等中选择所需的文档格式。在文本区域下输入要索引的文档,然后单击 Submit Document 按钮,如以下屏幕截图所示。 ![]() 使用 Java Client API 添加文档如您所见,下面是将文档添加到 Solr 索引的 Java 源代码。 使用名称 AddDocument.java 保存此程序。 可以通过在终端上执行以下命令来编译上述代码 - 当我们运行上述命令时,我们将在显示器上收到以下输出。 输出 文档已添加。 下一个主题Apache Solr 文本分析 |
我们请求您订阅我们的新闻通讯以获取最新更新。