Solr 学习笔记(三) 数据导入
2012-08-05 23:40
267 查看
Solr 学习笔记(三) 数据导入
大多数的应用程序将数据存储在关系数据库、xml文件中。对这样的数据进行搜索是很常见的应用。所谓的DataImportHandler提供一种可配置的方式向solr导入数据,可以一次全部导入,也可以增量导入。他可以实现
能够读取关系数据库中的数据。
通过可配置的方式,能够将数据库中多列、多表的数据生成solr文档
能够通过solr文档更新solr
提供通过配置文件就能够导入所有数据的能力
能够发现并处理 由insert、update带来的变化(我们假定在表中有一个叫做“last-modified的列”)
能够配置"完全导入"和"增量导入"的时间
让读取xml文件,并建立索引成为可配置。
能够将 其他的数据源(例如:ftp,scp,etc)或者其他格式的文档(Json,csv)以插件的形式集成到项目中。
这个 Handler首先要在solrconfig.xml文件中配置下,如下所示。
<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler"> <lst name="defaults"> <str name="config">/home/username/data-config.xml</str> </lst> </requestHandler>
从它的名字上,我们或许也可以猜到,
DataImportHandler正是requestHandler的实现。我们一共需要在两个地方配置文件中进行一些配置。
solrconfig.xml 。 data-config.xml必须在这个文件中配置,datasource也可以。不过,一般将datasource放在data- config.xml文件中。
下面几个步骤是必要的.
1.定义一个data-config.xml 文件,并这个它的路径配置到solrconfig.xml中关于DataImportHandler的配置中。给出Connection的信息(假设你选择在solrconfig中配置datasource)
<dataSource type="JdbcDataSource" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost/dbname" user="db_username" password="db_password"/>属性type 指定了实现的类型。它是可选的。默认的实现是JdbcDataSource。
一个配置文件可以配置多个数据源。增加一个dataSource元素就可以增加一个数据源了。name属性可以区分不同的数据源。如果配 置了多于一个的数据源,那么要注意将name配置成唯一的。
例如:
<dataSource type="JdbcDataSource" name="ds-1" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://db1-host/dbname" user="db_username" password="db_password"/> <dataSource type="JdbcDataSource" name="ds-2" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://db2-host/dbname" user="db_username" password="db_password"/>然后这样使用 :
<entity name="one" dataSource="ds-1" ...> .. </entity>
2.打开DataImportHandler页面去验证,是否该配置的都配置好了。http://localhost:8983/solr/dataimport
2.1.使用“完全导入”命令将数据从数据库中导出,并提交给solr建立索引
http://localhost:8983/solr/dataimport?command=full-import
2.2.使用“增量导入”命令对数据库发生的变化的数据导出,并提交给solr建立索引。
http://localhost:8983/solr/dataimport?command=delta-import
参考:
http://cpf1985.iteye.com/blog/1074425
相关文章推荐
- solr学习笔记-导入mysql数据
- solr学习笔记 -- day04 导入数据、自定义类型
- 2.myql数据导入到solr,并建立solr索引(学习笔记)
- Solr6.2.1 学习笔记(二)从数据库导入数据
- Solr学习笔记之3、Solr dataimport - 从SQLServer导入数据建立索引
- 黑马程序员之C#学习笔记:将EXCEL表中的数据导入到后台数据库
- solr 学习之路 如何将数据库中大量的数据导入solr <三>
- Hive学习笔记 4 Hive的数据导入
- MySQL学习笔记十一:数据导入与导出
- solr学习之(五)_solr4.2.0中从数据库中导入数据到索引
- Solr学习(四)DIH全量导入并索引数据
- MongoDB学习笔记2--MongoDB数据库中数据的导入
- Sqoop学习笔记 --- 增量导入数据到HBase
- Kettle学习笔记一 :MySQL到Postgres导入数据且发送日志邮件
- C#开发学习笔记:C#利用代码导入Excel数据
- Solr学习 DIH增量、定时导入并检索数据
- Hbase学习笔记2@数据导入导出
- solr4.5笔记(三)—— solr导入mysql数据
- cassandra学习笔记5--使用Binary Memtable将大量数据导入Cassandra
- solr 4.8+mysql数据库数据导入 + mmseg4j中文全文索引 配置笔记