参考文献地址:http://www.solr.cc/blog/?p=1296
Solr版本:4.7.0
一、依赖的jar
Maven配置
- <dependency>
- <groupId>org.apache.solr</groupId>
- <artifactId>solr-solrj</artifactId>
- <version>4.7.0</version>
- <scope>test</scope>
- </dependency>
二、添加索引
SolrjPopulator.java
- package com.clj.test.solr.solr4;
- import java.io.IOException;
- import org.apache.solr.client.solrj.SolrServerException;
- import org.apache.solr.client.solrj.impl.HttpSolrServer;
- import org.apache.solr.common.SolrInputDocument;
- /**
- * solr 4.X
- * 添加索引
- *
- * @author Administrator
- * @version [版本号, 2014年3月9日]
- * @see [相关类/方法]
- * @since [产品/模块版本]
- */
- public class SolrjPopulator
- {
- public static void main(String[] args) throws IOException, SolrServerException {
- HttpSolrServer server = new HttpSolrServer("http://localhost:8080/solr");
- for (int i = 0; i < 1000; ++i) {
- SolrInputDocument doc = new SolrInputDocument();
- doc.addField("cat", "book");
- doc.addField("id", "book-" + i);
- doc.addField("name", "The Legend of Po part " + i);
- server.add(doc);
- if (i % 100 == 0)
- server.commit(); // periodically flush
- }
- server.commit();
- }
- }
三、搜索
SolrJSearcher.java
- package com.clj.test.solr.solr4;
- import java.net.MalformedURLException;
- import org.apache.solr.client.solrj.SolrServerException;
- import org.apache.solr.client.solrj.impl.HttpSolrServer;
- import org.apache.solr.client.solrj.response.QueryResponse;
- import org.apache.solr.common.SolrDocumentList;
- import org.apache.solr.common.params.ModifiableSolrParams;
- /**
- * solr 4.X
- * 查询数据
- *
- * @author Administrator
- * @version [版本号, 2014年3月9日]
- * @see [相关类/方法]
- * @since [产品/模块版本]
- */
- public class SolrJSearcher
- {
- public static void main(String[] args) throws MalformedURLException, SolrServerException {
- HttpSolrServer solr = new HttpSolrServer("http://localhost:8080/solr");
- ModifiableSolrParams params = new ModifiableSolrParams();
- params.set("q", "cat:book");
- params.set("defType", "edismax");
- params.set("start", "0");
- QueryResponse response = solr.query(params);
- SolrDocumentList results = response.getResults();
- for (int i = 0; i < results.size(); ++i) {
- System.out.println(results.get(i));
- }
- }
- }
搜索结果:
相关推荐
#### 三、Solr索引创建的XML语法示例 ```xml <field name="id">222 ``` 此XML片段展示了如何使用`<add>`标签创建一个包含单个字段的新文档。`boost`属性表示该文档的重要性权重。 #### 四、总结 通过对...
这些文档包含了各种社会热点新闻、控诉信等内容,展示了Solr强大的全文检索能力。 - **查询性能指标**: - `QueryTime`:查询时间,单位毫秒。 - `ElapsedTime`:总的处理时间,单位毫秒。 - **查询结果**: - ...
本文将深入探讨如何使用MySQL作为SOLR的索引源,以提升数据检索的效率和性能。 首先,我们需要了解MySQL作为数据存储的优势,它提供了丰富的SQL查询语言,支持事务处理和ACID(原子性、一致性、隔离性和持久性)...
Solr全文索引是基于Apache Lucene的开源搜索服务器,它提供了一个分布式、可扩展、高性能的全文检索和分析平台。在本项目中,"Weiz.Solr"似乎是一个C#开发的Solr客户端库,用于简化与Solr服务器的交互。下面将详细...
Solr提供了一个名为DataImportHandler (DIH) 的组件,可以与数据库进行交互,读取这些变更并将其转化为Solr索引的更新。 - **Update Handler**:Solr提供了多种Update Handler,例如Direct Update Handler和...
solr在做检索的时候时常需要得知他的性能参数,此处使用8G内存,双核处理器测试的结果
以上就是关于Solr定时索引的详细解释,包括增量索引和完整索引的实现方式,以及在Solr 7.3版本中配置和使用的步骤。理解并熟练掌握这些知识,将有助于你在实际项目中更好地利用Solr进行高效的数据检索。
3. **命令行工具**:如`post.jar`,用于批量导入数据到Solr索引。 4. **API支持**:Solr提供了RESTful API,支持通过HTTP协议进行操作,便于各种编程语言的集成。 四、实践应用 在实际项目中,MySearch可能是一个...
Solr是一个开源、高性能的全文检索服务,它允许开发者为大量数据建立索引,从而实现快速的搜索功能。在"基于solr的网站索引架构(一)"中,我们将主要关注以下几个方面: 1. **Solr简介**: Solr是由Apache Lucene...
Solr能够通过其索引处理模块,在多台计算机节点上并行创建索引,显著提升了索引的构建速度,这对于分布式全文检索系统至关重要。 分布式设计是提高系统检索性能的关键所在。本文提出了使用Zookeeper来管理集群的...
Solr查询索引是Apache Solr的核心功能之一,它是一个基于Lucene的开源搜索服务器,提供了高效的全文检索、文档分类和聚类、拼写检查、高亮显示搜索结果等多种功能。在本文中,我们将深入探讨如何使用Solr进行索引...
Solr用Java语言编写,能够支持分布式搜索和索引,具备高度的灵活性和可扩展性,适用于处理大量结构化和非结构化数据的检索需求。 ### 2. 企业级信息检索的需求分析 企业级信息检索系统旨在解决企业内部海量信息的...
CDH 使用 Solr 实现 HBase 二级索引 在大数据处理中,HBase 是一种流行的 NoSQL 数据库,用于存储大量的数据。然而,在查询和检索数据时,HBase 的性能可能不太理想。这是因为 HBase 是基于 Key-Value 的存储方式,...
6. Solr 的维护方式:Solr 的维护可以通过手动添加或使用 SpringDataSolr 来操作 Solr 索引库,第一次上线的时候可以手动往 Solr 索引库导入一批数据,后期可以自动更新。 7. 全文检索的实现:全文检索是由业务来定...
Solr索引是一个存储和检索信息的高效结构,它允许快速搜索和返回结果。XML数据的使用使得索引管理更加灵活和可控。 首先,我们来看如何使用XML来添加文档。在XML中,`<add>`标签用于表示一组要添加到索引的新文档。...
- 使用`<dataConfig>`标签定义数据导入处理器(DIH,DataImportHandler),它可以读取文件夹内容并将其导入到Solr索引中。 - 创建一个`data-config.xml`文件,在其中定义数据源和查询语句,以遍历文件夹并读取文件...