solr8处理关系型数据库blob字段数据的简单实现

本文介绍了如何在Solr 8中处理关系型数据库中的Blob字段,如Oracle或MySQL中的PDF和Word等富文本数据。主要方法包括自定义Transformer转换器和在data-config.xml中使用嵌套entity标签。详细配置涉及data-config.xml、managed-schema.xml的修改,以及必要的jar包添加,如lucene-analyzers-smartcn、solr-dataimporthandler等。参考了多个来源,适合初学者了解和解决类似问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

oracle或者mysql数据库可能会保存pdf,word等富文本数据,solr提供了clob转换器,对于blob大致有两种实现方式:1.可以自定义transformer转换器。2.可以在data-config.xml进行嵌套entity标签的方式实现。

一:数据库结构

表名 :testtesttable
mysql表结构
blob测试的数据可以在solr文件夹下找到

xxx\solr-8.0.0\example\exampledocs

二:solr配置

data-config.xml配置

<?xml version="1.0" encoding="UTF-8" ?>
<dataConfig>
	<dataSource name="f1" type="FieldStreamDataSource"/>
	<dataSource 
		name ="mysql1"
		type="JdbcDataSource"
    	 driver="com.mysql.cj.jdbc.Driver"
    	 url="jdbc:mysql:///test?useUnicode=true&amp;characterEncoding=utf-8&amp;serverTimezone=UTC"
     	user="root"
     	password="root"/>
	<document>
  	<entity   dataSource="mysql1"
   name="testtable" transformer="ClobTransformer" query="SELECT ID,NAME,WENJIAN FROM testtable ">
    	<field column="ID" name="id1"/>
    	<field column="NAME" name="name1"/>
			<entity dataSource="f1" processor="TikaEntityProcessor" url="content" dataField="testtable.WENJIAN" name="testtable">
                       <field column="text" name="wenjian1"/>
                </entity>
  </entity>
</document>
</dataConfig>

managed-schema.xml配置

  <field name="_text_" type="text_general" indexed="true" stored="false" multiValued="true"/>
  <field name="id1" type="string" indexed="true" stored="true" />
  <field name="name1" type="string" indexed="true" stored="true" />
<!-- 此处使用了分词 -->
  <field name="wenjian1" type="text_ik" indexed="true" stored="true" />

jar包配置

lucene-analyzers-smartcn-8.0.0.jar
solr-dataimporthandler-8.0.0.jar
solr-dataimporthandler-extras-8.0.0.jar
mysql-connector-java-8.0.13.jar
solr-8.0.0\contrib\extraction\lib <–solr的文件夹下所有

我也是刚接触solr没多久,正好遇到这个问题,通过不断的查询找到了以上的解决办法。、

参考资料

http://simpleframework.net/news/view?newsId=380d1d1aaec246b9a5acfc7ed5d3afe5
http://bbs.51cto.com/thread-1002849-1.html
https://blog.youkuaiyun.com/iteye_5159/article/details/82515819
https://blog.youkuaiyun.com/wangch_sk/article/details/8907366
书籍《solr权威指南》

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值