The invention relates to an air defense cache method and a system thereof. The air buffer method comprises the following steps: identification of data is divided into a plurality of sections; having a predetermined function of statistics for each interval in the identification of data intensive; according to the intensity of each interval are respectively arranged corresponding to the compression ratio, compression ratio of the number of data corresponding to each interval in a logo. The air defense cache method and system, through the identification of data partition and density of each zone according to the configuration of the corresponding compression ratio, the compression ratio of the number of data corresponds to a storage space, storage space is saved, and the number of data compression ratio for identifying a corresponding storage space, not as each data in the bloom filter identified by random multiple bits of its existence but cannot delete any, the compression ratio of a storage space corresponding to the corresponding operation can be changed.
【技术实现步骤摘要】
本专利技术涉及数据库查询技术,特别是涉及一种防空缓存方法和装置。
技术介绍
数据库中记录有大量数据,为了查询某一条数据在数据库中是否存在,需要进行一次遍历查询,该遍历查询的开销较大,耗费时间较长。若查询的该用户信息不存在,也需进行一次遍历查询,如此会浪费大量的时间以及耗费资源。为此,若在内存中用防空缓存记录每条数据是否存在,只对存在防空缓存中的数据才到数据库中查询,可有效降低空记录查询带来的开销。传统的防空缓存技术一般采用位图或者布隆过滤器对信息构建数据防空缓存,以达到减少大量底层数据库空查询,减少资源消耗的目的。其中,位图是指在连续的存储空间上,每一位有1或0两个值,表示某一目标的两种不同状态,如图1所示,一个号码的状态采用一位存储空间表示。布隆过滤器是一个有m位的位数组,初始全为0,并有k个各自独立的哈希函数,如图2所示,一个号码的状态采用多位存储空间一起表示。然而,采用位图构建防空缓存时,在连续的存储空间中,每一位表示一条数据是否被创建, ...
【技术保护点】
一种防空缓存方法,包括以下步骤:将数据标识划分为多个区间;统计每个区间中具有预定功能的数据标识的密集度;根据所述每个区间的密集度分别配置相应的压缩比,以将每个区间中压缩比数量的数据标识对应一位。
【技术特征摘要】
1.一种防空缓存方法,包括以下步骤:
将数据标识划分为多个区间;
统计每个区间中具有预定功能的数据标识的密集度;
根据所述每个区间的密集度分别配置相应的压缩比,以将每个区间中压缩
比数量的数据标识对应一位。
2.根据权利要求1所述的防空缓存方法,其特征在于,在所述根据所述每
个区间的密集度分别配置相应的压缩比,以将每个区间中压缩比数量的数据标
识对应一位的步骤之后,还包括步骤:
获取对目标数据标识的操作请求;
获取所述操作请求中的目标数据标识所在的区间及所在区间内的相应位
置;
对所述区间内的相应位置执行对应的操作。
3.根据权利要求2所述的防空缓存方法,其特征在于,所述操作请求为读
取操作时,所述方法包括:
获取对目标数据标识的读取操作;
获取所述读取操作中的目标数据标识所在的区间及所在区间内的相应位
置;
读取所述区间内的相应位置上的值。
4.根据权利要求3所述的防空缓存方法,其特征在于,所述获取所述读取
操作中的目标数据标识所在的区间及所在区间内的相应位置的步骤包括:
判断所述读取操作中的目标数据标识所在的区间,并获取所述区间的首位
数据标识及压缩比;
将所述目标数据标识减去所述首位数据标识,再将所述差除以所述压缩比,
得到所述目标数据标识在所述区间内的相应位置。
5.根据权利要求2所述的防空缓存方法,其特征在于,所述操作请求为写
入操作时,所述方法包括:
获取对目标数据标识的写入操作;
获取所述写入操作中的目标数据标识所在的区间及所在区间内的相应位
置;
将所述区间内的相应位置上的值置为第一预设值。
6.根据权利要求5所述的防空缓存方法,其特征在于,所述获取所述写入
操作中的目标数据标识所在的区间及所在区间内的相应位置的步骤包括:
判断所述写入操作中的目标数据标识所在的区间,并获取所述区间的首位
数据标识及压缩比;
将所述目标数据标识减去所述首位数据标识,再将所述差除以所述压缩比,
得到所述目标数据标识在所述区间内的相应位置。
7.根据权利要求2所述的防空缓存方法,其特征在于,所述操作请求为删
除操作时,所述方法包括:
获取对目标数据标识的删除操作;
获取所述删除操作中的目标数据标识所在的区间及所在区间内的相应位
置,并根据所述区间获取查询范围;
判断所述查询范围内的数据标识是否均不存在,若是,则将所述区间内的
相应位置上的值置第二预设值,否则,将所述区间内的位置上的值置为第一预
设值。
8.根据权利要求7所述的防空缓存方法,其特征在于,所述所在区间内的
相应位置为通过所述目标数据标识与所述首位数据标识相减得到差,再将所述
差除以所述压缩比得到的位置;
所述根据所述区间获取查询范围的步骤包括:
获取所述区间的首位数据标识及压缩比;
将所述目标数据标识减去所述首位数据标识,再将所述差除以所述压缩比
的平方,得到查询范围的下限值,再将所述下限值加上压缩比减1得到查询范
围的上限值。
9.一种防空缓存装置,其特征在于,包括:
划分模块,用于将数据标识划分为多个区间;<...
【专利技术属性】
技术研发人员:张丹枫,
申请(专利权)人:深圳市腾讯计算机系统有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。