如题,使用EmbeddedSolrServer提交的数据,在solr server查询不出来,只有重启solr server之后才能查询到。查询互联网无果之后,我忽然想到使用CommonsHttpSolrServer来commit()一下,结果大快人心,问题解决。
为什么要使用EmbeddedSolrServer呢?据某些资料介绍,如果solr server和client在同一台机器上,使用EmbeddedSolrServer(直接通过lucene写磁盘)比使用CommonsHttpSolrServer(http访问)要快50%。
下面以简单的代码说明这个问题。
首先是EmbeddedSolrServer的初始化,和wiki的一样,很简单:
System.setProperty("solr.solr.home", "");
CoreContainer.Initializer initializer = new CoreContainer.Initializer();
CoreContainer coreContainer = initializer.initialize();
EmbeddedSolrServer server = new EmbeddedSolrServer(coreContainer, "");
CommonsHttpSolrServer的初始化也和wiki的一样。
提交代码:
embeddedSolrServer.add(docList);
embeddedSolrServer.commit();
commonsHttpSolrServer.commit();// 如果没有http的commit,solr server不会查询到刚才提交的数据
分享到:
相关推荐
而定时更新功能是Solr的一个重要特性,它允许用户定期地、自动地从数据源导入新数据或者更新已有数据,以保持索引与实际数据的一致性。 在Solr中,定时更新主要通过DataImportHandler(DIH)实现,这是一个用于将...
利用python的pycurl对Solr进行原子更新操作
增量导入更新索引包是Solr中的一项重要功能,它允许系统仅处理自上次完整索引以来发生改变的数据,从而大大提升了效率并降低了资源消耗。下面将详细阐述Solr增量更新的相关知识点。 1. **Solr的索引机制** Solr...
"solr定时增量更新jar包1.4"是专门为Solr设计的一个组件,它允许用户设置定时任务来自动检测和导入新的或者修改过的数据,从而保持索引与数据库或其他数据源的一致性。 这个组件主要依赖于`apache-solr-...
使用多线程方式 通过solrj 接口向solr新增索引信息
增量更新是Solr的一个关键特性,它允许系统仅处理自上次完整索引以来发生更改的数据,从而提高了性能并降低了资源消耗。"apache-solr-dataimportscheduler.jar" 是一个专门为Solr设计的扩展包,用于实现自动化的数据...
Delta-importer 是 Solr 中的一个工具,用于将新添加或更新的数据从外部数据源导入 Solr 索引库中。使用 Delta-importer,我们可以将新添加或更新的数据从 Oracle 数据库中提取出来,然后将其插入 Solr 索引库中。 ...
solr6定时增量更新jar包
solr测试数据,数据文件
Solr 数据导入调度器(solr-dataimport-scheduler.jar)是一个专门为Apache Solr 7.x版本设计的组件,用于实现数据的定期索引更新。在理解这个知识点之前,我们需要先了解Solr的基本概念以及数据导入处理...
HBase 和 Solr 都是大数据处理中的关键组件。HBase 是一个分布式的、面向列的NoSQL数据库,适合存储大规模结构化数据。而Solr 是一个流行的全文搜索引擎,提供高效的全文检索、命中高亮、拼写检查等特性。将HBase的...
3. **改(Update)**:更新文档通常涉及先删除再添加的过程,因为SOLR不直接支持部分字段更新。但可以通过设置`update.chain`参数使用Update Request Processor实现特定场景的更新。 4. **查(Query)**:SOLR提供...
使用Solr的更新API,可以向索引添加、删除或更新文档。批量导入功能(如DataImportHandler)允许高效地处理大量数据。索引优化和重建也是索引生命周期中的重要环节,它们可以提高搜索性能和确保数据一致性。 4. **...
在Apache Atlas 2.1.0版本中,服务器组件的压缩包`apache-atlas-2.1.0-server.tar.gz`提供了一个核心的服务框架,用于构建和维护数据治理解决方案,但值得注意的是,这个版本不含HBase和Solr这两个关键组件。...
solr定时增量更新索引所需jar包包括:solr-dataimporthandler-4.0.0.jar、solr-dataimportscheduler.jar(6.x适用)、solr-dataimporthandler-extras-4.0.0.jar。
在企业级应用中,数据的实时性和准确性是至关重要的,因此,Solr提供了数据导入工具(DataImportHandler, DIH)来帮助用户从关系型数据库或其他数据源进行数据导入,并支持增量更新。"solr 定时增量更新jar包"便是为了...
4. 创建核心(Core)以准备处理数据,如 `bin/solr create -c my_core`,这里的 "my_core" 是核心的名称。 二、Solr 查询 1. 简单查询:通过 `http://localhost:8983/solr/my_core/select?q=关键词` 进行搜索,...
3. **Java客户端代码**:可能是Java API的示例,展示了如何与Solr服务器进行交互,如添加、更新和删除文档,执行查询,或者处理结果。 4. **脚本**:可能包括用于自动化任务的shell脚本或Python脚本,如批量导入...
在本篇Solr学习笔记中,我们将探讨Solr的分布式索引功能,这对于处理大量数据和实现高可用性至关重要。Solr的分布式索引能力允许我们跨越多个节点分布和处理索引过程,从而提高索引速度和查询性能。在实际应用中,这...
5. **更新配置**:如果源和目标Solr实例的配置有差异,需要确保目标实例的配置与源实例一致,以避免搜索结果不准确或无法正常运行。 6. **重启目标Solr服务**:最后,重启目标Solr服务以应用新的数据和配置。 注意...