solr对word文件索引支持给word做索引吗

trackbacks-0
修改D:\program\tomcat6\solrapp\solr\collection1\conf下solrconfig.xml文件,加入
&!-- #####################从数据库建立索引
start################################ --&
&requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler"&
&lst name="defaults"&
&str name="config"&qiye-data-config.xml&/str&
&/requestHandler&
&!-- #####################从数据库建立索引
end################################ --&
D:\program\tomcat6\solrapp\solr\collection1\conf新建qiye-data-config.xml
&dataConfig&
&dataSource type="JdbcDataSource"
driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/qiye"
user="root"
password="root"/&
&document&
&entity name="id"
query="select id,shopdesc from testshop"&
&/document&
&/dataConfig&
修改schema.xml
&!-- ########数据库索引############ --&
&field name="shopdesc"
type="string" indexed="true" stored="true"/&
&!-- ########数据库索引############ --&
&copyField source="shopdesc" dest="text"/&
记得加入mysql的jar包到D:\program\tomcat6\webapps\solr\WEB-INF\lib下
阅读(...) 评论()现在的位置:
solr从pdf、office文档中建立索引
使用solr从pdf、office文档中建立索引和从数据库中建立相似,只不过这里需要tika来解析这些文档。8.1 配置一个handler
这个handler首先要在solrConfig.xml中配置,如下所示:
&requestHandler name="/dataimport"
class="org.apache.solr.handler.dataimport.DataImportHandler"&
name="defaults"&
name="config"&tika-data-config.xml&/str&
&/requestHandler&
这里和7.1几乎一样,只不过修改了配置文件名(当然也可以不修改)。
8.2 文档配置tika-data-config.xml
&dataConfig&
&dataSource type="BinFileDataSource" /&
&document&
name="files" dataSource="binary"
rootEntity="false"
processor="FileListEntityProcessor"
baseDir="D:/temp"
fileName=".*.(doc)|(pdf)|(xls)|(ppt)|(docx)"
recursive="true"&
column="fileAbsolutePath" name="id" /&
column="fileSize" name="size" /&
column="fileLastModified" name="lastModified" /&
name="documentImport"
processor="TikaEntityProcessor"
url="${files.fileAbsolutePath}"
format="text"&
column="file" name="fileName"/&
column="Author" name="author" meta="true"/&
column="title" name="title" meta="true"/&
column="text" name="text"/&
&/document&
&/dataConfig&
这里只说上面(7.2)没有说过的属性。
fileName :(必选)使用正则表达式匹配文件
baseDir : (必选) 文件目录
recursive : 是否递归的获取文件,默认false
rootEntity :在这里必须是false(除非你只想索引文件名)。在默认情况下,document元素下就是根实体了,如果没有根实体的话,直接在实体下面的实体将会被看做跟实体。对于根实体对应的数据库中返回的数据的每一行,solr都将生成一个document
dataSource :如果你是用solr1.3,那就必须设为"null",因为它没使用任何dataSourde。不需要在solr1.4中指定它,它只是意味着我们不创建一个dataSource实例。在大多数情况下,只有一个DataSource(JdbcDataSource),当使用FileListEntityProcessor 的时候DataSource不是必须的
processor:只有当datasource不是RDBMS时才是必须的
onError :默认是"abort","skip"表示跳过当前文档,"continue"表示对错误视而不见
更多精彩内容请关注:
关注超人学院java免费学习交流群:
EasyQuery的目标是不需要写一行java代码就可以实现非常非常复杂的查询,省时省力,提高效率。
【上篇】【下篇】
您可能还会对这些文章感兴趣!
籍贯山东,落户北京,IT行业。
工作经历:
2014年至今&,自主创业
,传智播客
,超人学院
,亚信科技
教育经历:
,中科院研究生院
,河北大学<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
您的访问请求被拒绝 403 Forbidden - ITeye技术社区
您的访问请求被拒绝
亲爱的会员,您的IP地址所在网段被ITeye拒绝服务,这可能是以下两种情况导致:
一、您所在的网段内有网络爬虫大量抓取ITeye网页,为保证其他人流畅的访问ITeye,该网段被ITeye拒绝
二、您通过某个代理服务器访问ITeye网站,该代理服务器被网络爬虫利用,大量抓取ITeye网页
请您点击按钮解除封锁&Solr4.5 支持多大的数据索引 - 开源中国社区
当前访客身份:游客 [
当前位置:
& & & 这两天开始接触solr4.5, 配置完成后发现在做100w数据索引的时候直接挂了
找资料实在是找不到了,请教各位,谢谢了。。。。
共有8个答案
<span class="a_vote_num" id="a_vote_num_
有教程没有发给我一份共同研究?
<span class="a_vote_num" id="a_vote_num_
引用来自“寻梦2012”的答案有教程没有发给我一份共同研究? 这个是部署的教程&
这个是联合mysql的教程&
<span class="a_vote_num" id="a_vote_num_
我做过100W数据索引,大概1小时就建好了,应该不是solr问题吧
<span class="a_vote_num" id="a_vote_num_
引用来自“roywang”的答案我做过100W数据索引,大概1小时就建好了,应该不是solr问题吧那请问,如果这个表数据更新的比较频繁如何保证solr的索引是最新的呢
--- 共有 1 条评论 ---
这个还是设置定时任务定时刷新吧,用SQL增量建索引
(3年前)&nbsp&
<span class="a_vote_num" id="a_vote_num_
引用来自“菠菜土豆”的答案引用来自“roywang”的答案我做过100W数据索引,大概1小时就建好了,应该不是solr问题吧那请问,如果这个表数据更新的比较频繁如何保证solr的索引是最新的呢刚刚仔细确认过了,发现内存撑到了2.5G左右,然后内存溢出了....这个....
<span class="a_vote_num" id="a_vote_num_
你设定一下增量和全量建索引的数据量大小,应该是bitchsize=20000
<span class="a_vote_num" id="a_vote_num_
mysql的话,设置为负值
<span class="a_vote_num" id="a_vote_num_
<span style="font-size:13..2 下20亿的数据量 目前solr出现问题蛮多的,接下来打算换es
更多开发者职位上
有什么技术问题吗?
easymbo...的其它问题yanchao520mmmm 的BLOG
用户名:yanchao520mmmm
文章数:89
访问量:105553
注册日期:
阅读量:5863
阅读量:12276
阅读量:332188
阅读量:1038285
51CTO推荐博文
&&&&前面几篇关于solr的文章在导入数据进行分词、索引,都是通过导入本地的XML或者直接在页面上填写XML。但是现实中,很多情况下数据源是来自于数据库的。所以,本文就以mysql为例进行一个较详细的介绍。其使用到的是“dataimport”。&&&&1、在conf\solrconfig.xml中添加,增加导入数据功能&&requestHandler&name="/dataimport"&class="org.apache.solr.handler.dataimport.DataImportHandler"&&&&
&&&lst&name="defaults"&&&&
&&&&str&name="config"&data-config.xml&/str&&&&
&&&/lst&&&&
&&&/requestHandler&&&&&&2、在conf\目录下添加一个数据源data-config.xml,代码如下:&dataConfig&
&&&&&dataSource&type="JdbcDataSource"
&&&driver="com.mysql.jdbc.Driver"
&&&url="jdbc:mysql://172.0.0.1:3306/cmntadmin"
&&&user="root"
&&&password=""/&
&&&&&document&name="content"&
&&&&&&&&&entity&name="node"&query="select&id,username,creator&from&forbiduser"&
&&&&&&&&&&&&&field&column="id"&name="id"&/&
&&&&&&&&&&&&&field&column="username"&name="name"&/&
&&&&&&&&&&&&&field&column="creator"&name="contents"&/&
&&&&&&&&&/entity&
&&&&&/document&
&/dataConfig&&&&&&这里配置了数据源的信息。entity的内容来自于“query”查询得到的结果。field对应查询出的字段信息:“column”对应数据库字段名、“name”必须对应“schema.xml”中配置的field值。&&&&3、创建schema.xml语法&?xml&version="1.0"&encoding="UTF-8"&?&
&schema&name="example"&version="1.5"&
&&&&&!--&If&you&remove&this&field,&you&must&_also_&disable&the&update&log&in&solrconfig.xml
&&&&&&or&Solr&won't&start.&_version_&and&update&log&are&required&for&SolrCloud
&&&&field&name="_version_"&type="long"&indexed="true"&stored="true"/&
&&&&!--&points&to&the&root&document&of&a&block&of&nested&documents.&Required&for&nested
&&&&&&document&support,&may&be&removed&otherwise
&&&&field&name="_root_"&type="string"&indexed="true"&stored="false"/&
&&&&field&name="id"&type="string"&indexed="true"&stored="true"&required="true"&multiValued="false"&/&&
&&&&&field&name="name"&type="text_general"&indexed="true"&stored="true"/&
&&&&&field&name="contents"&type="text_ik"&indexed="true"&stored="true"/&
&&/fields&
&&!--&Field&to&use&to&determine&and&enforce&document&uniqueness.&
&&&&&&Unless&this&field&is&marked&with&required="false",&it&will&be&a&required&field
&&uniqueKey&id&/uniqueKey&
&&!--&DEPRECATED:&The&defaultSearchField&is&consulted&by&various&query&parsers&when
&&parsing&a&query&string&that&isn't&explicit&about&the&field.&&Machine&(non-user)
&&generated&queries&are&best&made&explicit,&or&they&can&use&the&"df"&request&parameter
&&which&takes&precedence&over&this.
&&Note:&Un-commenting&defaultSearchField&will&be&insufficient&if&your&request&handler
&&in&solrconfig.xml&defines&"df",&which&takes&precedence.&That&would&need&to&be&removed.--&
&&defaultSearchField&contents&/defaultSearchField&
&copyField&source="name"&dest="contents"/&
&solrQueryParser&defaultOperator="OR"/&
&&fieldType&name="string"&class="solr.StrField"&sortMissingLast="true"&/&
&fieldType&name="long"&class="solr.TrieLongField"&precisionStep="0"&positionIncrementGap="0"/&
&fieldType&name="text_general"&class="solr.TextField"&positionIncrementGap="100"&
&&&&&&&analyzer&type="index"&
&&&&&&&&&tokenizer&class="solr.StandardTokenizerFactory"/&
&&&&&&&&&filter&class="solr.StopFilterFactory"&ignoreCase="true"&words="stopwords.txt"&/&
&&&&&&&&&!--&in&this&example,&we&will&only&use&synonyms&at&query&time
&&&&&&&&&filter&class="solr.SynonymFilterFactory"&synonyms="index_synonyms.txt"&ignoreCase="true"&expand="false"/&
&&&&&&&&--&
&&&&&&&&&filter&class="solr.LowerCaseFilterFactory"/&
&&&&&&&/analyzer&
&&&&&&&analyzer&type="query"&
&&&&&&&&&tokenizer&class="solr.StandardTokenizerFactory"/&
&&&&&&&&&filter&class="solr.StopFilterFactory"&ignoreCase="true"&words="stopwords.txt"&/&
&&&&&&&&&filter&class="solr.SynonymFilterFactory"&synonyms="synonyms.txt"&ignoreCase="true"&expand="true"/&
&&&&&&&&&filter&class="solr.LowerCaseFilterFactory"/&
&&&&&&&/analyzer&
&&&&&/fieldType&
&fieldType&name="text_ik"&class="solr.TextField"&&
&&&&&&&&&&analyzer&class="org.wltea.analyzer.lucene.IKAnalyzer"/&&
&&/fieldType&
&/schema&&&&&schema.xml 里重要的字段:&&&&要有这个copyField字段SOLR才能检索多个字段的值(以下设置将同时搜索 id,name,contents中的值)&defaultSearchField&contents&/defaultSearchField&&&&&copyField是用来复制你一个栏位里的值到另一栏位用. 如你可以将name里的东西copy到default里, 这样solr做检索时也会检索到name里的|西.&copyField source="name" dest="contents"/&&&&&4、导入相关jar包&&&&因为本文使用mysql作为数据源,所以需要驱动包(mysql-connector.jar);另外,使用dataimport功能还需要solr-dataimporthandler-4.7.2.jar和solr-dataimporthandler-extras-4.7.2.jar,这两个jar包不需要下载,在\dist目录下就有。&&&&copy这三个jar包到tomcat下的solr工程下的lib目录下(webapps\solr\WEB-INF\lib)。&&&&5、创建索引&&&&重启tomcat。&&&&A)、可以通过url的方式触发创建全量索引:&&&&B)、通过admin页面上的“dataimport”模块进行操作:本文出自 “” 博客,请务必保留此出处
了这篇文章
类别:┆阅读(0)┆评论(0)

我要回帖

更多关于 solr 索引 的文章

 

随机推荐