`
tovegar
  • 浏览: 31349 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

使用solr的困惑!

阅读更多
使用solr不长时间,环境是linux as4,到现在solr的文件大小正常大约11G了。
solr放在一台服务器上,利用另一台服务器通过URL进行调用,
但是有一个问题,重建几十万索引好几次都这样,利用solr的接口优化,但是每次索引文件比较大的时候
例如现在11G,他的优化就报错:

com.xx.cms.solr.client.SolrServerException: Server returned non-zero status: 
Caused by:
Server side exception, status = 1: java.lang.NullPointerException
	at org.apache.lucene.index.FieldsReader.addField(FieldsReader.java:174)
	at org.apache.lucene.index.FieldsReader.doc(FieldsReader.java:90)
	at org.apache.lucene.index.SegmentReader.document(SegmentReader.java:284)
	at org.apache.lucene.index.IndexReader.document(IndexReader.java:357)
	at org.apache.lucene.index.SegmentMerger.mergeFields(SegmentMerger.java:186)
	at org.apache.lucene.index.SegmentMerger.merge(SegmentMerger.java:88)
	at org.apache.lucene.index.IndexWriter.mergeSegments(IndexWriter.java:709)
	at org.apache.lucene.index.IndexWriter.mergeSegments(IndexWriter.java:686)
	at org.apache.lucene.index.IndexWriter.optimize(IndexWriter.java:543)
	at org.apache.solr.update.DirectUpdateHandler2.commit(DirectUpdateHandler2.java:459)
	at org.apache.solr.core.SolrCore.update(SolrCore.java:754)
	at org.apache.solr.servlet.SolrUpdateServlet.doPost(SolrUpdateServlet.java:52)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:75)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
	at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
	at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
	at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
	at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
	at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
	at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
	at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:793)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:702)
	at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:571)
	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:644)
	at java.lang.Thread.run(Thread.java:595)

	at com.xx.cms.solr.client.AbstractDocumentManagerClient.serverCall(AbstractDocumentManagerClient.java:149)
	at com.xx.cms.solr.client.DocumentManagerClient.optimize(DocumentManagerClient.java:205)
	[color=red]at com.xx.cms.system.IndexCommit.optimize(IndexCommit.java:45)[/color]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:585)
	at org.springframework.util.MethodInvoker.invoke(MethodInvoker.java:270)
	at org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean$MethodInvokingJob.executeInternal(MethodInvokingJobDetailFactoryBean.java:199)
	at org.springframework.scheduling.quartz.QuartzJobBean.execute(QuartzJobBean.java:90)
	at org.quartz.core.JobRunShell.run(JobRunShell.java:203)
	at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:520)

而在solr的服务器上报的就是IO读写错误。
每天都执行操作每天都报这个错误。
solr应该跟lucence一样,优化的时候先把文件都复制一遍,然后在删除合并。
我一直怀疑是不是文件11G太大了,在复制的过程中报错。
大家有没有遇到过这样情况
分享到:
评论
1 楼 redhacker 2008-09-12  
没有遇到,不过我的索引没你那么大,我有7g左右。

相关推荐

    基于Solr的多表join查询加速方法

    - **硬件和架构优化**:例如,增加Solr服务器的内存,使用SSD硬盘提升I/O速度,或者采用更高效的网络架构,如InfiniBand,都可以提高join查询的性能。 以上是针对基于Solr的多表join查询加速的一些常见策略和可能...

    solr-dataimport-scheduler.jar 可使用于solr7.x版本

    要使用solr-dataimport-scheduler.jar,首先需要将该jar包部署到Solr服务器的lib目录下,这样Solr启动时会自动加载这个组件。然后,在Solr的配置文件(如solrconfig.xml)中,你需要定义一个DIH的配置,包括数据源...

    Solr(Cloudera)使用手册

    ### Solr(Cloudera)使用手册 #### 一、创建Collection与管理实例 在使用Solr(Cloudera)时,创建Collection是基本的操作之一。Collection是Solr中的数据存储单元,相当于关系数据库中的表。 ##### 创建路径与实例 ...

    solr在java中使用总结

    ### Solr在Java中的使用总结 #### 一、Solr简介 Solr是一个高性能的全文搜索引擎,基于Apache Lucene开发,使用Java 5编写。它不仅继承了Lucene的强大功能,还提供了更丰富的查询语言以及更好的性能优化。Solr具备...

    solr5.5.4部署及使用

    在本文档中,我们将详细介绍如何部署和使用 Solr 5.5.4 版本,包括两种常见的部署方式:Jetty 和 Tomcat,并涉及到中文分词器IKAnalyzer的集成以及对Word文档的支持。 首先,我们需要准备合适的环境,这里要求的是...

    solr的安装与使用

    Solr安装与使用 Solr是一款功能强大的搜索引擎,能够帮助我们快速搭建企业搜索平台。在本文中,我们将详细介绍Solr的安装和使用过程。 一、安装Solr 首先,我们需要下载Solr的安装包。这里我们使用的是Solr 1.3...

    CDH使用Solr实现HBase二级索引.docx

    CDH 使用 Solr 实现 HBase 二级索引 在大数据处理中,HBase 是一种流行的 NoSQL 数据库,用于存储大量的数据。然而,在查询和检索数据时,HBase 的性能可能不太理想。这是因为 HBase 是基于 Key-Value 的存储方式,...

    Apache Solr(solr-8.11.1.tgz)

    在部署和使用Solr时,了解Solr的生命周期管理、集群配置、备份与恢复策略,以及如何监控和调整性能都是至关重要的。熟悉这些知识点,可以帮助你更好地利用Apache Solr构建高性能的企业级搜索解决方案。

    solr的安装使用步骤

    ### Solr的安装使用步骤详解 #### Solr概述与特性 **Solr** 是 Apache 下的一个顶级开源项目,它基于 **Lucene** 进行构建,提供了强大的全文搜索能力。相较于 Lucene,Solr 提供了更为丰富的查询语言支持,并且...

    solr(solr-9.0.0.tgz)

    4. **docs** 文件夹:包含了Solr的用户文档,可以帮助开发者和管理员了解Solr的使用方法和API。 5. **example** 文件夹:提供了一个简单的Solr实例,包括了如何设置和运行的基本示例,对于初学者来说非常有用。 6....

    使用docker 部署solr

    centos7 环境 安装docker 并在docker 中部署solr 并使用

    linux环境下 使用的solr

    Linux环境下使用的Solr是一款强大的全文搜索引擎,主要设计用于处理大量数据的快速检索。Solr是Apache Lucene项目的一部分,提供了一个高效、可扩展的搜索和分析平台。在Linux环境中部署和使用Solr,可以充分利用其...

    easynet.solr开发与使用

    《easynet.solr开发与使用》 在现代信息技术领域,搜索引擎已经成为不可或缺的一部分,而Apache Solr作为一款强大的开源搜索引擎,被广泛应用于各种数据检索场景。为了方便开发者更高效地集成和操作Solr,Easynet...

    最新版linux solr-8.8.2.tgz

    为了方便使用 Solr 的命令行工具,可以将 Solr 的 bin 目录添加到系统的 PATH 环境变量中。例如,在 `.bashrc` 或 `.bash_profile` 文件中添加: ``` export SOLR_HOME=/path/to/solr-8.8.2 export PATH=$PATH:$...

    solr 的使用及安装

    本文将深入讲解 Solr 的使用及安装过程。 一、Solr 简介 Solr 基于 Lucene 库,提供了一个高度可配置和可扩展的平台,用于处理和索引大量数据,支持多种数据源,如文件、数据库等。其主要特性包括: 1. **全文搜索...

    Linux上Solr的启动方式

    使用Solr内置的Jetty服务器启动Solr (1)借助X Shell上传solr的安装包到/usr/local/目录下,使用 tar -zxvf命令进行解压.  (2)使用内置的Jetty来启动Solr服务器只需要在example目录下,执行start.jar程序即可,...

    solr6.5使用的IK分词

    "solr6.5使用的IK分词"就是一个针对Solr 6.5版本的中文分词解决方案。 **IK分词器** IK分词器(Intelligent Chinese Analyzer)是由Lucene社区开发的一款高性能的中文分词工具,适用于Java环境。它的主要目标是为...

    Apache Solr(solr-8.11.1.zip)

    8. **搜索性能优化**:Solr提供了多种优化手段,包括使用倒排索引、缓存策略、查询优化器等,以提高查询速度和整体性能。 9. **安全与认证**:Solr 8.x引入了内置的安全性框架,包括Zookeeper的ACL和Solr的Role-...

Global site tag (gtag.js) - Google Analytics