solr.home是/home/leroy/solrhome/solr

第一部分是对《db-data-config.xml》

query是获取全部数据的SQL

deltaImportQuery是获取增量数据时使用的SQL

deltaQuery是获取pk的SQL

parentDeltaQuery是获取父Entity的pk的SQL

Full Import工作原理:

执行本Entity的Query,获取所有数据;

针对每个行数据Row,获取pk,组装子Entity的Query;

执行子Entity的Query,获取子Entity的数据。

Delta Import工作原理:

查找子Entity,直到没有为止;

执行Entity的deltaQuery,获取变化数据的pk;

合并子Entity parentDeltaQuery得到的pk;

针对每一个pk Row,组装父Entity的parentDeltaQuery;

执行parentDeltaQuery,获取父Entity的pk;

执行deltaImportQuery,获取自身的数据;

如果没有deltaImportQuery,就组装Query

限制:

子Entity的query必须引用父Entity的pk

子Entity的parentDeltaQuery必须引用自己的pk

子Entity的parentDeltaQuery必须返回父Entity的pk

deltaImportQuery引用的必须是自己的pk

第二部分是DataImportHandler

关于DataImportHandler的具体使用方法,详见下文,如果你英文超级好,那看这个链接吧:http://wiki.apache.org/solr/DataImportHandler

大多数的应用程序将数据存储在关系数据库、xml文件中。对这样的数据进行搜索是很常见的应用。所谓的DataImportHandler提供一种可配置的方式向solr导入数据,可以一次全部导入,也可以增量导入。

概览

目标

能够读取关系数据库中的数据。

通过可配置的方式,能够将数据库中多列、多表的数据生成solr文档

能够通过solr文档更新solr

提供 通过配置文件就能够导入所有数据的能力

能够发现并处理 由insert、update带来的变化(我们假定在表中有一个叫做“last-modified的列”)

能够配置 “完全导入”和“增量导入”的时间

让读取xml文件,并建立索引成为可配置。

能够将 其他的数据源(例如:ftp,scp,etc)或者其他格式的文档(Json,csv)以插件的形式集成到项目中。

第三部分:配置过程

1、修改solrconfig.xml

data-config.xml

2、添加data-config.xml 或者复制solr-4.4.0/example/example-DIH/solr/db/conf/db-data-config.xml到solr.home目录下,并修改为data-config.xml

url="jdbc:mysql://localhost:3306/leroy_test"

user="root"

password=""/>

3、复制solr-4.4.0/dist/solr-dataimporthandler-4.4.0.jar和solr-4.4.0/dist/solr-dataimporthandler-extras-4.4.0.jar到tomcat/webapps/solr/WEB-INF/lib下,或者我们在上一篇当中在solrconfig.xml配置了solr.home中的lib,可以直接放到/home/leroy/solrhome/solr/lib当中。

注意:在schema.xml中,添加相应的字段,要注意

id

如果在数据库查询没有id,而在schema.xml中id属性required="true",添加所有将会失败。

具体的demo可以查看solr-4.4.0/example/example-DIH/下的配置文件,通过hsql数据库的例子:

This is a relational model of the same schema that Solr currently ships with. 我们使用这个例子来为我们的DataImportHandler建data-config.xml。 我们已经使用这个结构在HSQLDB上建立了一个数据库. 好,现在开始了, 跟着下面的步骤走:

solr-4.4.0/example/example-DIH/文件包含了一个完整的solrhome(里面的配置文件很齐全了)和一个RSS的例子。它也包含了一个hssqldb数据库的例子.

直接把你的solr.home指向solr-4.4.0/example/example-DIH/solr,等等

使用example-data-config目录下的solr目录作为你solrhome 具体查看

solr-4.4.0/example/

example-DIH/目录下的README.txt

参考资料:

solr4.4 索引mysql数据库数据_solr4.4 索引mysql数据库数据(DataImport DIH QuickStart)相关推荐

  1. mysql 快捷查询数据库各表占用空间,mysql查看索引占用空间,mysql查看数据占用空间

    先贴一张图! 第一步,"很重要" 在mysql中,有一个创建之初自带的库information_schema,这个库中包含着数据库相关信息,查询数据占用空间就是使用该库,所以首先进 ...

  2. 怎么运用索引查处mysql表中的数据_深入理解MySQL数据库索引原理及实现,快速检索数据库 MySQL数据库使用教程...

    免费学习推荐: 一.索引的概念 1.索引是一个排序的列表,在这个列表中存储着索引的值和包含这个值的数据所在行的物理地址 (类似于C语言的链表通过指针指向数据记录的内存地址) . 2.使用索引后可以不用 ...

  3. mysql对yggl数据的建立索引_employees数据库

    alter table Salary add constraint PK_S foreign key(EmployeeID) references Employees(EmployeeID) on d ...

  4. bd2和mysql语法区别,经验:在MySQL数据库中,这4种方式可以避免重复的插入数据!...

    最常见的方式就是为字段设置主键或唯一索引,当插入重复数据时,抛出错误,程序终止,但这会给后续处理带来麻烦,因此需要对插入语句做特殊处理,尽量避开或忽略异常,下面我简单介绍一下,感兴趣的朋友可以尝试一下 ...

  5. solr mysql 分词_solr 7+tomcat 8 + mysql实现solr 7基本使用(安装、集成中文分词器、定时同步数据库数据以及项目集成)...

    基本说明 Solr是一个开源项目,基于Lucene的搜索服务器,一般用于高级的搜索功能: solr还支持各种插件(如中文分词器等),便于做多样化功能的集成: 提供页面操作,查看日志和配置信息,功能全面 ...

  6. mysql 改表面_MySQL_解析MySQL数据库性能优化的六大技巧,数据库表表面上存在索引和防 - phpStudy...

    解析MySQL数据库性能优化的六大技巧 数据库表表面上存在索引和防错机制,然而一个简单的查询就会耗费很长时间.Web应用程序或许在开发环境中运行良好,但在产品环境中表现同样糟糕.如果你是个数据库管理员 ...

  7. mysql生成100000个数据并检验索引的效果

    实验简述 实验目的: 本次实验是为了检验索引的使用效果 实验平台: windows 数据库: mysql 文章目录 实验简述 前提 workbench 提示连接超时 创建100000个数据 设置索引的 ...

  8. tpcc mysql下载_TPCC安装和压测数据库数据表创建生成

    下载TPCC-mysql [root@cnbugs1 ~]# git clone https://github.com/Percona-Lab/tpcc-mysql.git 配置TPCC-mysql ...

  9. 大文本存mysql怎么建索引_如何正确合理的建立MYSQL数据库索引

    # 有这样一个表 P mysql> create table P (id int primary key, name varchar(10) not null, sex varchar(1), ...

最新文章

  1. idea插件Easy Code的使用
  2. 在ubuntu上使用SSH客户端
  3. 智能J IDEA键盘快捷键
  4. 【回文数】算法优化笔记
  5. 反编译工具Reflector下载(集成FileGenerator和FileDisassembler)
  6. C# 设置Word文档中图片的大小
  7. JFreeChart(二)之饼图
  8. IJCAI 2018:中科院计算所:增强对话生成一致性的序列到序列模型
  9. SLF4J:Failed to load class org.slf4j.impl.StaticLoggerBinder
  10. 32位dll转64位工具_如何在64位系统中运行32位或16位程序
  11. java中properties作用,Java中Properties的使用详解
  12. Python读取 csv文件中文乱码处理
  13. windowsxp系统怎么装iis服务器,XP系统如何安装IIS?IIS安装教程
  14. 生物信息学常用数据库
  15. 2021最后一个月了,你找到带回家的那个她了吗?送你999朵玫瑰。
  16. .NetCore异常:Could not load file or assembly ‘Microsoft.AI.Web‘ or one of its dependencies. The system
  17. 机器学习:self-paced 和 fine-tuning
  18. 3.Linux文件系统
  19. RWEQ模型的土壤风蚀模数估算、其变化归因分析
  20. wireshark抓rtsp rtp rtcp包手把手教你分析包结构 H264 H265

热门文章

  1. 深度学习算法中卷积神经网络的应用
  2. 2020年开春最新面试!今日头条 Android 面试题及答案 (已拿到 offer)
  3. 共轭方式怎么判断_怎么判断共轭效应是吸电子共轭效应还是给电子共轭效应?吸电子基和给电子基是根据什么判断的?...
  4. 搜索框输入内容进行查找匹配
  5. Pytest注册使用自定义mark标签
  6. php7的浮点数,php7.1浮点数运算问题
  7. 彻底修改浏览器ua——通过修改navigator.platform将电脑PC的ua修改为手机ua
  8. poiExcel格式设置,很好用,感谢大佬
  9. 行业深耕、教育赋能,讯众股份BPO 华北区Q4启动大会成功召开
  10. 七巧板复原算法之四——边沿贴合和空腔查找