CN103399913A - 一种搜索引擎索引的加密压缩方法及信息检索方法 - Google Patents
一种搜索引擎索引的加密压缩方法及信息检索方法 Download PDFInfo
- Publication number
- CN103399913A CN103399913A CN2013103288463A CN201310328846A CN103399913A CN 103399913 A CN103399913 A CN 103399913A CN 2013103288463 A CN2013103288463 A CN 2013103288463A CN 201310328846 A CN201310328846 A CN 201310328846A CN 103399913 A CN103399913 A CN 103399913A
- Authority
- CN
- China
- Prior art keywords
- index
- encryption
- compression
- adopt
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种搜索引擎索引的加密压缩方法,以及应用该方法进行信息检索的方法。首先采用倒排文档方法对信息资源建立数字索引;然后采用变长压缩方法对所述数字索引进行压缩处理;再采用Base64加密算法对压缩处理后的索引进行加密处理,将加密处理后的密钥做为最终索引。将待查询的关键词用Base64加密算法进行加密处理,然后根据所述最终索引进行信息检索。本发明以现有成熟的压缩技术为基础,结合成熟的加密算法组合成一套行之有效的压缩方法,可以实现对信息的快速、准确查找,有效节省服务器资源。
Description
技术领域
本发明涉及一种加密压缩方法,涉及搜索引擎索引位加密压缩方法,以及应用该方法进行信息检索的方法,属于信息技术处理领域。
背景技术
随着互联网的蓬勃发展,人们对信息量的需求随之剧增,人们获取信息的途径也越来越多。
搜索引擎做为网络信息搜索的核心功能,在人们的日常生活中发挥巨大的作用。目前国内有好多搜索产品,国内的互联网规模之大,信息量之大也给搜索技术带来了不小的挑战,如何做到更快速、更准、更省资源也就成为了搜索引擎商家需要解决的问题。
建立索引是搜索引擎核心技术之一,建立索引的目的是能够快速的响应用户的查询。搜索引擎最常用的索引数据结构是倒排文档,倒排文档的原理其实相当简单,为了方便处理,往往会把单词和文档编号转换为数字形式。
对索引进行压缩有很多好处:比如可以减少索引占用的磁盘空间和内存,可以减少I/O读写量,可以使查询响应速度加快等。为了能够增加压缩效果,一般在进行压缩前先改写索引内容,首先把倒排索引的数值按照大小排序,然后用差值而非实际值表示(d-gap);这个是每个压缩算法开展前要做的工作。
目前的压缩方法可以分为固定长度的和变长压缩。
1.固定长度的压缩方法
一个典型的方法是比特对齐压缩,这个方法以Byte为编码单元,不像变长压缩编码一般都以bit为编码单元。对于要压缩的数字,一般用头两个bits代表长度,其它bit用二进制编码代表数值本身,如下面所示:
数值范围头两个bit压缩大小
包括定长的和变长的索引压缩都有一个基本假设,就是:要压缩的大多数数值都比较小,所以压缩后占用空间不会多。这种方法的压缩率为原始未压缩索引的10-20%。
2.变长的压缩方法
a.Unary压缩方法
对于要压缩的数值N来说,用N+1个bits来表示,其中前N位是1,最后一位是0作为结束标记。比如:
5:111110
10:11111111110
b.Elias压缩方法(gamma&delta)
对于一个要压缩的数值X,用log2(x)分解为两个数值,一个是N=log2(X),用N个1表示这个部分,另外一个是剩余部分k=X-2powor((log2(X))),这部分数值k用二进制编码表示(长度等于N),中间用0隔开;
比如对于数值2,其压缩编码为100,因为log2(2)=1,剩余为0;中间***一个分割0;
比如对于数值10,N=log2(10)=3,所以第一个部分是:111;10-2(3)=2,所以第二个部分是:010;中间用0分割,所以是:1110010。
c.Golomb压缩方法
对于一个要压缩的数值X,用公式分解:X=q*b+r+1;(0=<r<b)
其中,b叫做bucket size,可以根据情况来具体设置。假设b=3,那么对于要压缩的数值10来说:10=3*3+0+1;(q=3,b=3,r=0)。
第一部分是对分解因子q进行编码,其编码方法类似于unary编码;比如对于10=3*3+0+1中,q=1110;
第二部分是对于剩余因子r进行编码;仍然采用二进制编码,编码长度为log2(b)取上整数或者log2(b)上整数-1;对于上面r=0,其编码为0。
Golomb相对于Elias方法的好处就在于那个bucket size,这个值是可以设定的,可以根据索引里面要压缩的数值的分布来调整bucket size来获得更好的压缩效果。
d.混合使用
一般对于不同的索引域,其数值的分布是不同的,各有其特点,经过分析数值分布属性,可以采取混合压缩策略。比如D-gap使用Golomb压缩,tf使用Gamma压缩。
采用索引压缩能够带来很多好处,所以实用的搜索引擎都会采用索引压缩技术,但是对索引进行压缩也会带来问题,那就是比不压缩需要更多的计算量。
发明内容
在现有技术的基础之上,本发明的目的在于提供一种更高效的索引压缩方法,以及应用该方法进行信息检索的方法,以实现对信息的快速、准确查找,有效节省服务器资源。
本发明采用的技术方案为:
一种搜索引擎索引的加密压缩方法,其步骤包括:
1)采用倒排文档方法对信息资源建立数字索引;
2)采用变长压缩方法对所述数字索引进行压缩处理;
3)采用Base64加密算法对压缩处理后的索引进行加密处理,将加密处理后的密钥做为最终索引。
进一步地,所述倒排文档方法包括分词处理和过滤高频词处理。
进一步地,所述变长压缩方法为下列中的一种:Unary方法、Elias方法、Golomb方法。
一种信息检索方法,其步骤包括:
1)采用倒排文档方法对信息资源建立数字索引;
2)采用变长压缩方法对所述数字索引进行压缩处理;
3)采用Base64加密算法对压缩处理后的索引进行加密处理,将加密处理后的密钥做为最终索引;
4)将待查询的关键词用Base64加密算法进行加密处理,然后根据所述最终索引进行信息检索。
进一步地,所述倒排文档方法包括分词处理和过滤高频词处理。
进一步地,所述变长压缩方法为下列中的一种:Unary方法、Elias方法、Golomb方法。
本发明的以现有成熟的压缩技术为基础,结合成熟的加密算法组合成一套行之有效的压缩方法,通过测试压缩率最高可达50%(根据索引信息长度的不同压缩率有所不同)。应用该方法可以实现对信息的快速、准确查找,有效节省服务器资源。
附图说明
图1是本发明实施例的搜索引擎索引的加密压缩方法的步骤流程图。
图2是本发明实施例的信息查询方法的步骤流程图。
具体实施方式
下面通过具体实施例对本发明做进一步描述。
图1是本发明实施例的搜索引擎索引的加密压缩方法的步骤流程图,具体说明如下:
1.索引建立操作方法:
用倒排文档原理,将信息内容进行分词处理和过滤高频词处理,将单词和文档编号转换为数字形式,形成数字索引。
例如,信息内容为:
D1:“中国驻美大使馆院子门柱上现“拆”字”
D2:“成龙、李连杰先生代表了中国武术文化的前进方向”
D3:“中国***代表了中国先进生产力的发展要求”
经过分词处理和过滤高频词处理后,可以构建如下的倒排索引文档:
中国->D1,1;D2,1;D3,2;
成龙->D2,1;
代表->D2,1;D3,1;
2.索引压缩方法
将通过倒排文档建立的数字索引采用变长压缩方法进行压缩,可以采用变长压缩中Unary、Elias、Golomb中任意一种方法压缩,变长压缩的原理如背景技术中所述。
3.位加密方法
将用变长压缩方法进行压缩的索引,采用Base64算法对其中的关键词进行加密处理,将加密处理后的密钥做为最终索引。
Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一,是一种双向加密方式。Base64编码可用于在HTTP环境下传递较长的标识信息。例如,在Java Persistence***Hibernate中,就采用了Base64来将一个较长的唯一标识符(一般为128-bit的UUID)编码为一个字符串,用作HTTP表单和HTTP GET URL中的参数。在其他应用程序中,也常常需要把二进制数据编码为适合放在URL(包括隐藏表单域)中的形式。此时,采用Base64编码不仅比较简短,同时也具有不可读性,即所编码的数据不会被人用肉眼所直接看到。加密的算法有很多,有单向的、双向的、对称和非对称算法,单向被认为是一种不安全的。Base64相对更适于网络传输,并且具有安全的特性,可以将文档、图片等信息以编码的形式存放在容器中,有助于节省空间。
例如:索引内容为:
中国->D1,1;D2,1;D3,2;
成龙->D2,1;
代表->D2,1;D3,1;
经过base64编码后为:
5Lit5Zu9->D1,1;D2,1;D3,2;
5oiQ6b6Z->D2,1;
5Luj6KGo->D2,1;D3,1;
索引文件中会有大量的关键词,经过Base64编码后整个文档的大小要比未编码的文件大很多。查询时,将查询关键字同样用Base64编码,然后进行检索或查询,如图2所示。
以上就是采用位加密算法将通过倒排文档原理、变长压缩技术产生的索引进一步压缩的方法,即位加密算法+倒排文档原理+变长压缩技术组合的位加密压缩方法。通常对索引的压缩一般只是采用倒排文档原理分词索引,再用变长压缩。本发明是为解决索引文件过大,查询响应速度慢而提供的一个解决方案,该方案能够进一步节省服务器磁盘和内存的占用空间,加快响应速度。将经过上述处理后的索引与原始进行对比,在保持原有索引运算效率不变的情况下,索引的压缩率能够明显提高,通过试验最高可达50%,并且索引内容越多越长,压缩效果越显著。
以上实施例仅用以说明本发明的技术方案而非对其进行限制,本领域的普通技术人员可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明的精神和范围,本发明的保护范围应以权利要求所述为准。
Claims (6)
1.一种搜索引擎索引的加密压缩方法,其步骤包括:
1)采用倒排文档方法对信息资源建立数字索引;
2)采用变长压缩方法对所述数字索引进行压缩处理;
3)采用Base64加密算法对压缩处理后的索引进行加密处理,将加密处理后的密钥做为最终索引。
2.如权利要求1所述的方法,其特征在于:所述倒排文档方法包括分词处理和过滤高频词处理。
3.如权利要求1所述的方法,其特征在于:所述变长压缩方法为下列中的一种:Unary方法、Elias方法、Golomb方法。
4.一种信息检索方法,其步骤包括:
1)采用倒排文档方法对信息资源建立数字索引;
2)采用变长压缩方法对所述数字索引进行压缩处理;
3)采用Base64加密算法对压缩处理后的索引进行加密处理,将加密处理后的密钥做为最终索引;
4)将待查询的关键词用Base64加密算法进行加密处理,然后根据所述最终索引进行信息检索。
5.如权利要求4所述的方法,其特征在于:所述倒排文档方法包括分词处理和过滤高频词处理。
6.如权利要求4所述的方法,其特征在于:所述变长压缩方法为下列中的一种:Unary方法、Elias方法、Golomb方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013103288463A CN103399913A (zh) | 2013-07-31 | 2013-07-31 | 一种搜索引擎索引的加密压缩方法及信息检索方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013103288463A CN103399913A (zh) | 2013-07-31 | 2013-07-31 | 一种搜索引擎索引的加密压缩方法及信息检索方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103399913A true CN103399913A (zh) | 2013-11-20 |
Family
ID=49563541
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2013103288463A Pending CN103399913A (zh) | 2013-07-31 | 2013-07-31 | 一种搜索引擎索引的加密压缩方法及信息检索方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103399913A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110908998A (zh) * | 2019-11-13 | 2020-03-24 | 广联达科技股份有限公司 | 数据存储和搜索方法、***和计算机可读存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7007015B1 (en) * | 2002-05-01 | 2006-02-28 | Microsoft Corporation | Prioritized merging for full-text index on relational store |
CN101520800A (zh) * | 2009-03-27 | 2009-09-02 | 华中科技大学 | 一种基于密文的安全全文索引和检索*** |
-
2013
- 2013-07-31 CN CN2013103288463A patent/CN103399913A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7007015B1 (en) * | 2002-05-01 | 2006-02-28 | Microsoft Corporation | Prioritized merging for full-text index on relational store |
CN101520800A (zh) * | 2009-03-27 | 2009-09-02 | 华中科技大学 | 一种基于密文的安全全文索引和检索*** |
Non-Patent Citations (2)
Title |
---|
席齐: "基于Lucene的网页抓取与检索***", 《中国优秀硕士学位论文全文数据库 信息科技辑》, 15 March 2012 (2012-03-15) * |
苏潭英: "面向中文的数据库全文检索及其相关安全技术研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》, 15 June 2008 (2008-06-15) * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110908998A (zh) * | 2019-11-13 | 2020-03-24 | 广联达科技股份有限公司 | 数据存储和搜索方法、***和计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104408177B (zh) | 基于云文档***的密文检索方法 | |
CN105426709A (zh) | 基于jpeg图像信息隐藏的私密信息通信方法与*** | |
CN104657362A (zh) | 数据存储、查询方法和装置 | |
EP2056462A2 (en) | Data processing system and method | |
CN104753540A (zh) | 数据压缩方法、数据解压方法和装置 | |
CN101183374A (zh) | 移动终端设备电子文件存储结构和管理方法 | |
CN103873860A (zh) | 文件传输方法及装置 | |
CN104408100B (zh) | 结构化网站日志的压缩方法 | |
CN102804800B (zh) | 带有加密段的段去除重复*** | |
CN113111090B (zh) | 基于保序加密的多维数据查询方法 | |
CN103731154B (zh) | 一种基于语义分析的数据压缩算法 | |
CN108737353B (zh) | 一种基于数据分析***的数据加密方法及装置 | |
CN104410424A (zh) | 嵌入式设备内存数据的快速无损压缩方法 | |
CN101477539B (zh) | 一种信息采集方法及装置 | |
CN103399913A (zh) | 一种搜索引擎索引的加密压缩方法及信息检索方法 | |
CN104767710B (zh) | 基于dfa的http分块传输编码的传输载荷提取方法 | |
CN109923549B (zh) | 处理倒排索引的可搜索对称加密***和方法 | |
CN106789938B (zh) | 一种实时监控手机端浏览器搜索痕迹的方法 | |
CN111414341B (zh) | 一种物联网环境下的数据归一化描述方法 | |
CN114461768A (zh) | 一种基于同态加密的多关键词文件加密检索方法及*** | |
CN112417843B (zh) | 一种IDcode标识解析***及其实现方法 | |
CN102799649B (zh) | 输入智能提示装置和输入智能提示方法 | |
CN102801430B (zh) | Url中文参数压缩算法 | |
KR101315683B1 (ko) | 데이터 사이즈 및 형태 변경이 없는 암호화 인코딩 및 복호화 인코딩 방법 | |
US20070280474A1 (en) | Encryption Method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20131120 |
|
RJ01 | Rejection of invention patent application after publication |