热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Solr索引的修改方式

Solr索引的修改方式:1.使用SolrDataImport的delta_import部分增量导入的功能:Solr通过数据库导入有两种方式,full-import和delta-import,de

Solr索引的修改方式:

1.使用Solr Data Import的 delta_import部分增量导入的功能:

Solr通过数据库导入有两种方式,full-import和delta-import,delta-import增量导入的原理是利用每次我们进行import的时候在solr.home\conf下面生成的dataimport.properties文件

item.last_index_time=2014-01-24 18\:31\:47

last_index_time=2014-01-24 18\:31\:47

其实last_index_time是最近一次索引(full-import或者delta-import)的时间。

通过比较这个时间和我们数据库表中的timestamp列即可得出哪些是之后修改或者添加的

可通过http://:/solr/dataimport查看

修改data-config.xml如下:


    

            

    

其中 query是获取全部数据的SQL,deltaImportQuery是获取增量数据时使用的Sql,deltaQuery是获取pk的SQL,parentDeltaQuery是获取父Entity的pk的SQL

Full Import工作流程,执行EntityQuery获取所有数据,针对每个行数据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

item.last_index_time=2014-01-24 18\:31\:47中的item表示data-config.xml中的document下面的标签,可以有选择的指定一个或多个,使用多个可以使得多个entity同时运行

如果不选择此参数那么所有的都会被运行

clean 表示删除索引,默认为true

commit 表示是否索引完成后提交,默认为true

opimize 对索引进行优化,默认为true,每次操作索引最后执行它,但是如果操作很频繁的话,就需要选择性的执行它

debug 是否以调试模式运行,适用于开发中,注意每次以调试模式运行,那么默认不会自动提交,请加参数commit=true才行

当对索引修改时,可以编写过滤器来HTTP请求调用这个来操作索引,http://192.168.2.123/solr/dataimport?command=delta-import&clean=false&commit=true&optimize=true

由于deltaImport是要比对配置文件和数据库数据的最后修改时间,那么如果想要先物理删除数据库中的某条记录,再去删除索引这就不行了,因为数据库中没有这条数据,无

法和配置文件的最后修改时间进行比对。

2. 利用xml格式进行索引的修改



05991
Walla Walla
Python

Set 表示修改 ,add表示新增

05991
delete的时候必须要有id

可以通过去数据库查找数据后,拼接成XML,通过HTTP请求将数据流提交到Solr服务器。


推荐阅读
  • 部署solr建立nutch索引
    2019独角兽企业重金招聘Python工程师标准接着上篇nutch1.4的部署应用,我们来部署一下solr,solr是对lucene进行了封装的企 ... [详细]
  • 数字图书馆近期展出了一批精选的Linux经典著作,这些书籍虽然部分较为陈旧,但依然具有重要的参考价值。如需转载相关内容,请务必注明来源:小文论坛(http://www.xiaowenbbs.com)。 ... [详细]
  • 一:什么是solrSolr是apache下的一个开源项目,使用Java基于lucene开发的全文搜索服务器;Lucene是一个开放源代 ... [详细]
  • 本文介绍了如何使用Python爬取妙笔阁小说网仙侠系列中所有小说的信息,并将其保存为TXT和CSV格式。主要内容包括如何构造请求头以避免被网站封禁,以及如何利用XPath解析HTML并提取所需信息。 ... [详细]
  • Spring Data JdbcTemplate 入门指南
    本文将介绍如何使用 Spring JdbcTemplate 进行数据库操作,包括查询和插入数据。我们将通过一个学生表的示例来演示具体步骤。 ... [详细]
  • 网站访问全流程解析
    本文详细介绍了从用户在浏览器中输入一个域名(如www.yy.com)到页面完全展示的整个过程,包括DNS解析、TCP连接、请求响应等多个步骤。 ... [详细]
  • 本文介绍如何使用 Python 的 DOM 和 SAX 方法解析 XML 文件,并通过示例展示了如何动态创建数据库表和处理大量数据的实时插入。 ... [详细]
  • 在 Ubuntu 中遇到 Samba 服务器故障时,尝试卸载并重新安装 Samba 发现配置文件未重新生成。本文介绍了解决该问题的方法。 ... [详细]
  • Ansible:自动化运维工具详解
    Ansible 是一款新兴的自动化运维工具,基于 Python 开发,集成了多种运维工具(如 Puppet、CFEngine、Chef、Func 和 Fabric)的优点,实现了批量系统配置、程序部署和命令执行等功能。本文将详细介绍 Ansible 的架构、特性和优势。 ... [详细]
  • 在CentOS 7环境中安装配置Redis及使用Redis Desktop Manager连接时的注意事项与技巧
    在 CentOS 7 环境中安装和配置 Redis 时,需要注意一些关键步骤和最佳实践。本文详细介绍了从安装 Redis 到配置其基本参数的全过程,并提供了使用 Redis Desktop Manager 连接 Redis 服务器的技巧和注意事项。此外,还探讨了如何优化性能和确保数据安全,帮助用户在生产环境中高效地管理和使用 Redis。 ... [详细]
  • MATLAB字典学习工具箱SPAMS:稀疏与字典学习的详细介绍、配置及应用实例
    SPAMS(Sparse Modeling Software)是一个强大的开源优化工具箱,专为解决多种稀疏估计问题而设计。该工具箱基于MATLAB,提供了丰富的算法和函数,适用于字典学习、信号处理和机器学习等领域。本文将详细介绍SPAMS的配置方法、核心功能及其在实际应用中的典型案例,帮助用户更好地理解和使用这一工具箱。 ... [详细]
  • 利用爬虫技术抓取数据,结合Fiddler与Postman在Chrome中的应用优化提交流程
    本文探讨了如何利用爬虫技术抓取目标网站的数据,并结合Fiddler和Postman工具在Chrome浏览器中的应用,优化数据提交流程。通过详细的抓包分析和模拟提交,有效提升了数据抓取的效率和准确性。此外,文章还介绍了如何使用这些工具进行调试和优化,为开发者提供了实用的操作指南。 ... [详细]
  • 探讨 jBPM 数据库表结构设计的精要与实践
    探讨 jBPM 数据库表结构设计的精要与实践 ... [详细]
  • 如何在微信公众平台集成新浪云服务应用摘要:新浪云服务平台SinaAppEngine(简称SAE)自2009年启动内部研发,并于同年对外开放。本文详细介绍了如何利用SAE的强大功能,在微信公众平台上构建高效、稳定的云服务应用程序,涵盖从环境配置到应用部署的全流程,为开发者提供详尽的技术指导与实践案例。 ... [详细]
  • camel_使用Camel在来自不同来源的Solr中索引数据
    camelApacheSolr是建立在Lucene之上的“流行的,快速的开源企业搜索平台”。为了进行搜索(并查找结果),通常需要从不同的源(例如内容管理 ... [详细]
author-avatar
高朗1_114
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有