solr6的学习与使用(四):数据导入功能
2017-04-07 23:05
267 查看
solr应用之数据导入:
solr的数据导入大体提供了两个方式,full-import 和 delta-import ,当然还能通过请求逐条增加。这里主要说说full-import,之后再补充关于逐条增加数据等操作。对于delta方式,由于暂时无这方面需求,就不讨论了,网上资料很多,可以自己看看。
我用的导入方式是通过jdbc从MySQL中full-import导入数据,这种方式简单粗暴,适合快速搭建一个可用的搜索业务使用。实测50万数据5分钟导完,需要强调的是,如果需要一次导入大量的数据,solr默认的512M的内存是不够的,调大内存请往前面文章看吧。
1. 拷贝jar包到server目录下(先下载mysql-connector-java-5.1.10-bin.jar,链接:http://pan.baidu.com/s/1kV9kv1H 密码:a869):
cp [path to solr install]/solr/dist/* [path to solr install]/solr/server/solr-webapp/webapp/WEB-INF/lib/
cp mysql-connector-java-5.1.10-bin.jar [path to solr install]/solr/server/solr-webapp/webapp/WEB-INF/lib/
2. 在solrHome中相关Core的conf配置文件中,配置solrconfig.xml配置文件,新增如下组件:
3.从上述配置可以看到,数据导出的配置文件为solr-data-config.xml,这个文件是用来配置需要导入的数据的来源(MySQL的某个表)和字段的(solr的manage-schema字段对应的MySQL字段),当然你可以自己定义这个配置文件的名称:
4.数据导入,我这里是从页面导入的:
这里,entity是你从solr-data-config.xml配置好的,执行后,它会从MySQL中把数据灌到solr中,并建立索引。如此当灌完数据后,就可以进行搜索了。
solr的数据导入大体提供了两个方式,full-import 和 delta-import ,当然还能通过请求逐条增加。这里主要说说full-import,之后再补充关于逐条增加数据等操作。对于delta方式,由于暂时无这方面需求,就不讨论了,网上资料很多,可以自己看看。
我用的导入方式是通过jdbc从MySQL中full-import导入数据,这种方式简单粗暴,适合快速搭建一个可用的搜索业务使用。实测50万数据5分钟导完,需要强调的是,如果需要一次导入大量的数据,solr默认的512M的内存是不够的,调大内存请往前面文章看吧。
1. 拷贝jar包到server目录下(先下载mysql-connector-java-5.1.10-bin.jar,链接:http://pan.baidu.com/s/1kV9kv1H 密码:a869):
cp [path to solr install]/solr/dist/* [path to solr install]/solr/server/solr-webapp/webapp/WEB-INF/lib/
cp mysql-connector-java-5.1.10-bin.jar [path to solr install]/solr/server/solr-webapp/webapp/WEB-INF/lib/
2. 在solrHome中相关Core的conf配置文件中,配置solrconfig.xml配置文件,新增如下组件:
<requestHandler name="/dataimport" class="solr.DataImportHandler"> <lst name="defaults"> <str name="config">solr-data-config.xml</str> </lst> </requestHandler>
3.从上述配置可以看到,数据导出的配置文件为solr-data-config.xml,这个文件是用来配置需要导入的数据的来源(MySQL的某个表)和字段的(solr的manage-schema字段对应的MySQL字段),当然你可以自己定义这个配置文件的名称:
<dataConfig> <dataSource type="JdbcDataSource" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://127.0.0.1:3306/testDb" user="root" password="root"/> <document> <entity name="content" query="select id, title, content, bookname, firstlevel, secondlevel from content"> <field column="id" name="id"/> <field column="title" name="tittle"/> <field column="content" name="content"/> <field column="bookname" name="bookname"/> <field column="firstlevel" name="firstlevel"/> <field column="secondlevel" name="secondlevel"/> </entity> </document> </dataConfig>如上配置好,重启solr即可。
4.数据导入,我这里是从页面导入的:
这里,entity是你从solr-data-config.xml配置好的,执行后,它会从MySQL中把数据灌到solr中,并建立索引。如此当灌完数据后,就可以进行搜索了。
相关文章推荐
- cassandra学习笔记5--使用Binary Memtable将大量数据导入Cassandra
- EXTJS学习系列提高篇:第二篇(转载)作者殷良胜,结合EXT2.2+C#.net实现将数据导入Excel的功能
- [Step By Step]在SAP Business Objects Data Services中使用Validation Transform数据验证功能区分数据并分别导入到SAP HANA中(ValidationTransform)
- 学习Solr 5.3之 DIH导入数据快速入门
- Solr-----7、Solr使用DataImportHandler导入数据库数据
- solr6使用solrJ做XML数据导入
- Swift学习笔记(十七)——导入Foundation使用更多字符串功能
- Solr的学习使用之(十)数据库(Oracle、SqlServer)原有的全文索引功能和Solr对比?
- .NET项目笔记——使用NPOI读取Excel导入数据和导出Excel的功能
- Solr学习(四)DIH全量导入并索引数据
- Solr 数据导入 <一>DIH简单使用
- 2014-1-3_solr学习之(十一)solr3.5的DIH的增量索引和数据的条件导入
- Solr学习 DIH增量、定时导入并检索数据
- [Step By Step]在SAP Business Objects Data Services中使用Case Transform数据分离功能区分数据并分别导入到SAP HANA中(Case Transform)
- Solr学习笔记之3、Solr dataimport - 从SQLServer导入数据建立索引
- Solr 学习笔记(三) 数据导入
- Solr学习 DIH增量、定时导入并检索数据
- solr学习笔记-导入mysql数据
- [Step By Step]在SAP Business Objects Data Services中使用Match Transform数据匹配分析功能并导入到SAP HANA中(Match Transform)