1. 重复数据删除

  solr通过<Signature>类的类型来支持重复数据删除技术的.一个Signature可以通过以下几种方式实现:

 方法 描述
 MD5Signature  128位hash用于副本探测解析.
 Lookup3Signature  64位hash用于副本探测解析.比MD5更快,索引更小.
 TextProfileSignature  从Nutch中的模糊散列实现的近重复检测.它是可以调节的,对于长文本字段处理具有较好的效果.

  注意:

    添加副本处理将改变allowDups的设置,所以它用于update条目(这里使用signatureField)而不是更新唯一字段的条目.当然signatureField可以是唯一字段.

在一个文档添加时,将自动产生一个信息,使用指定的signatureField连接这个文档.

 1.1 Configuration Options

  SignatureUpdateProcessorFactory在solrconfig.xml中注册,作为UpdateRequestProcessorChain:

  1. <updateRequestProcessorChain name="dedupe">
  2. <processor class="solr.processor.SignatureUpdateProcessorFactory">
  3. <bool name="enabled">true</bool>
  4. <str name="signatureField">id</str>
  5. <bool name="overwriteDupes">false</bool>
  6. <str name="fields">name,features,cat</str>
  7. <str name="signatureClass">solr.processor.Lookup3Signature</str>
  8. </processor>
  9. </updateRequestProcessorChain>
设置 默认 描述
signatureClass org.apache.solr.update.processor.Lookup3Signature 生成一个Signature哈稀散列的Signature实现
fields 所有字段 The fields to use to generate the signature hash in a comma
separated list. By default, all fields on the document will be used.
signatureField signatureField 字段名称,用来保持指纹/签名.确保这个字段在schema.xml中定义.
enabled true enable/disable 副本工厂处理.

1.2 In schema.xml

  如果使用指定的字段存储签名,必须使这个字段索引.

  1. <field name="signature" type="string" stored="true" indexed="true" multiValued="false" />

  确保使用定义的chain更新句柄:

  1. <requestHandler name="/update">
  2. <lst name="defaults">
  3. <str name="update.chain">dedupe</str>
  4. </lst>
  5. </requestHandler>

注意:

  这个更新处理同样也可以通过请求参数中设置update.chain=dedupe.

1.6.6 De-Duplication(重复数据删除)的更多相关文章

  1. 禁用Windows重复数据删除

    重复数据删除,可以减少磁盘占用,但使用不当也有可能增加IO,另外,也为此功能会将硬盘分块,所以当硬盘占用较高时,进行碎片整理也比较困难,所以有时需要禁用掉重复数据删除功能,并解除重复数据的优化,可以通 ...

  2. Windows Server 2012重复数据删除技术体验

    在企业环境中,对磁盘空间的需求是惊人的.数据备份.文件服务器.软件镜像.虚拟磁盘等都需要占据大量的空间.对此,微软在Windows Server 2012中引入了重复数据删除技术.重复数据删除技术通过 ...

  3. 重复数据删除(De-duplication)技术研究(SourceForge上发布dedup util)

    dedup util是一款开源的轻量级文件打包工具,它基于块级的重复数据删除技术,可以有效缩减数据容量,节省用户存储空间.目前已经在Sourceforge上创建项目,并且源码正在不断更新中.该工具生成 ...

  4. 重复数据删除 开源实现 (deduputil) (转)

    [dedup util] dedup util是一款开源的轻量级文件打包工具,它基于块级的重复数据删除技术,可以有效缩减数据容量,节省用户存储空间.目前已经在Sourceforge上创建项目,并且源码 ...

  5. Windows服务器的重复数据删除功能

    自从Windows server 2012开始,微软在系统层面提供了重复数据删除功能.重复数据删除是为了文件服务器.虚拟化服务器等设计的.其实只要是存放的文件有大部分内容是相同的就可以发挥很好的效果. ...

  6. MongoDB实现数组中重复数据删除

    这个功能真的是写死我了,对于MongoDB一点都不熟悉,本来想使用spring与MongoDB的融合mongoDBTemplate,发现压根不是web项目,懒得配置那些配置文件,就使用最原始的数据库操 ...

  7. Mysql如何将一张表重复数据删除

    MySQL无法select 和 delete,update同时进行 只有将group By 出来不重复的数据进行insert到一张和之前同样类型的新表里面 转换思路,解决问题!​​

  8. Sql Server重复数据删除

    --在sql2005下可以 ,sql2000不可以 create  table tb(id int,name varchar(4))insert tb select 1,'aa'union all s ...

  9. Mysql开发技巧之删除重复数据

    Mysql利用联表查询和分组来删除重复数据 //删除表中重复的id,保留最大的id mysql> select * from user; +----+------+ | id | name | ...

随机推荐

  1. IE8-模拟script onerror

    利用VBScript 检测,有副作用,慎用! var loadScript = function () { var DOC = document, HEAD = document.getElement ...

  2. 数据结构(C语言版)---第三章栈和队列 3.4.2 队列的链式表示和实现(循环队列)

    这个是循环队列的实现,至于串及数组这两章,等有空再看,下面将学习树. 源码如下: #include <stdio.h> #include <stdlib.h> #define ...

  3. 第三次作业随笔(new)包含了补作业

    第三次作业的题目:http://www.cnblogs.com/fzuoop/p/5187275.html 第一次看到题目的时候觉得应该是挺简单的,只要把输入的那一串东西挨个判断,用数列的方法,如果碰 ...

  4. joj 2453 candy 网络流建图的题

    Problem D: Candy As a teacher of a kindergarten, you have many things to do during a day, one of whi ...

  5. Codeforces 627 A. XOR Equation (数学)

    题目链接:http://codeforces.com/problemset/problem/627/A 题意: 告诉你s 和 x,a + b = s    a xor b = x   a, b > ...

  6. 【转】删除已经存在的 TFS Workspace

    删除已经存在的 TFS Workspace 分类: TFS2010-03-03 16:59 1239人阅读 评论(2) 收藏 举报 serverpathcommandcachefilegoogle 工 ...

  7. Remove Duplicates from Sorted List @LeetCode

    /** * Remove Duplicates from Sorted List * * Given a sorted linked list, delete all duplicates such ...

  8. C#高性能大容量SOCKET并发(一):IOCP完成端口例子介绍(转)

    原文地址 http://blog.csdn.net/SQLDebug_Fan/article/details/17556353 例子主要包括SocketAsyncEventArgs通讯封装.服务端实现 ...

  9. 使用#pragma阻止一些warnings

    这篇博客的内容都是记的网上的.是流水账.只是记录下来以便日后之有,避免每次重新google. #pragma除了可以用来把不同功能的代码进行分隔组织外还可以用来disable一些warnings.这在 ...

  10. 2014年QS世界大学排名

    新浪教育[微博]讯 近日2014QS世界大学排行榜发布,榜单前十强均为英美名校.其中麻省理工大学以绝对优势位居榜首:英国剑桥大学及帝国理工学院并列排名第二:哈佛大学较去年而言名次略微下降,跌至第四. ...