使用solrj进行DIH操作】的更多相关文章

背景说明:在一个项目中需要将Mongodb中的数据导入到solr中完成搜索.在solr中Mysql数据库有对应的DIH包,可以通过配置sql语句完成数据的导入.Mongodb下也有开源的工具用来实现数据的导入.看了下文档,感觉这个工具对数据的定制性不高,并且是python的,不是很满足项目需求.最后决定使用solrj来完成数据的导入. 一. 遇到的问题 1. 全量数据很大,在全量或者增量时无法一次性将数据全部获取: 对数据进行分页获取.(关于两种分页获取数据的性能问题,后面会单独介绍) 2. 全…
导入相关的jar包 <dependency> <groupId>org.apache.solr</groupId> <artifactId>solr-solrj</artifactId> <version>4.10.2</version> </dependency> <!--日志的包, solrj执行需要一个日志包--> <dependency> <groupId>commo…
话题:solr安装 一.下载solr 本例采用4.10.3版本. Solr所有版本下载地址:http://archive.apache.org/dist/lucene/solr/ 下载完成后,解压的目录如下: bin:solr的运行脚本 contrib:solr的一些扩展jar包,用于增强solr的功能. dist:该目录包含build过程中产生的war和jar文件,以及相关的依赖文件. docs:solr的API文档 example:solr工程的例子目录:   example/solr: 该…
DIH主要用于从数据库抓取数据并创建索引.另外还能够从HTTP(RSS.ATOM)拉数据. 相关概念: Datasource:数据源,包含获取数据必需的信息:数据位置(url).数据库driver.登录账号和password Entity:相当于数据库的一个视图,能够从一个表或联表查询获得 Processor:数据处理器,负责从数据源中获取数据.处理.然后增加到索引中 Transformer:数据转换器,可选,负责改动数据.创建新的field.或依据须要把一条记录变成多条记录 首先.链接数据库须…
测试软件环境: 1.16G windows7 x64  32core cpu . 2.jdk 1.7  tomcat 6.x  solr 4.8 数据库软件环境: 1.16G windows7 x64  32core cpu . 2.Oracle 11g 一.Solr默认索引工具DIH. 使用Solr DIH索引数据,一千九百万数据,耗时45分钟左右,每秒钟6500条/s,合计39w条每分钟. 相关jvm最大堆内存为4G,solr index config使用默认参数. Solr DIH 导入截…
(solrj)初次使用solr的开发人员总是很郁闷,不知道如何去操作solr索引库,以为只能用<五分钟solr4.5教程(搭建.运行)>中讲到的用xml文件的形式提交数据到索引库,其实没有那么麻烦,solr配套有好多的客户端用于操作索引库,下面我们来讲如何用solrj去操作solr索引库. 一.认识solrj solrj是solr的java客户端,用于访问solr索引库.它提供了添加.删除.查询.优化等功能. 二.下载 百度.google以下solrj下载,你会发现根本就没有,那么我们该到哪儿…
客户端开发 Solrj 客户端开发 Solrj Solr是搭建好的lucene服务器 当然不可能完全满足一般的业务需求 可能 要针对各种的架构和业务调整 这里就需要用到Solrj了 Solrj是Solr提供的api库 可以进行Solr 的二次开发. 主要实现原理 服务端利用httpClient发送Solr格式的HTTP请求 到Solr服务器  然后服务器根据请求去找索引( 当然你要先针对数据源创建索引)最后返回SolrDocument. 然后你再进一步处理 高亮 排序 等功能.  1. 创建连接…
使用SolrJ操作Solr会比利用httpClient来操作Solr要简单.SolrJ是封装了httpClient方法,来操作solr的API的.SolrJ底层还是通过使用httpClient中的方法来完成Solr的操作. 1. 首先,你需要添加如下jar包 其中apache-solr-solrj-3.4.0.jar.slf4j-api-1.6.1.jar可以在下载的apache-solr-3.4.0的压缩包中的dist中能找到. 2. 其次,建立一个简单的测试类,完成Server对象的相关方法…
目录 1 pom.xml文件的配置 2 SolrJ操作SolrCloud 1 pom.xml文件的配置 项目的pom.xml依赖信息请参照: Solr 09 - SolrJ操作Solr单机服务 (Solr的Java API) 2 SolrJ操作SolrCloud public class SolrCloudTest { // ZooKeeper地址 private static String zkHostString = "10.0.20.50:2181, 10.0.20.51:2181, 10…
目录 1 SolrJ是什么 2 SolrJ对索引的CRUD操作 2.1 创建Maven工程(打包方式选择为jar) 2.2 配置pom.xml文件, 加入SolrJ的依赖 2.3 添加和修改索引 2.4 删除索引 2.5 查询索引 3 SolrJ的查询方案 3.1 实现步骤 3.2 示例代码 3.3 代码搜索结果 3.4 查看分片统计数据 3.5 分片统计数据结果 1 SolrJ是什么 说明: SolrJ是访问Solr服务的Java客户端程序, 提供了索引和搜索的请求方法. SolrJ通常嵌入在…