【技术实现步骤摘要】
一种基于过滤器的文件校验方法、系统、设备和介质
[0001]本申请涉及数据处理领域,尤其涉及一种基于过滤器的文件校验方法、系统、设备和介质。
技术介绍
[0002]在当前大多数涉及文件上传、文件存储的系统中,为优化存储结构、节省存储资源,都会对文件的唯一性进行判断。如果上传的文件已经在系统中存在了,对执行上传操作的用户来说,上传文件成功了,但是对于文件存储系统本身来说则仅仅是进行了功能逻辑级别的处理,该文件不会被真正的上传,以此避免文件的重复上传。在对文件是否重复的判断上,不够严谨的系统会通过文件名称结合文件大小等方式对文件的重复性进行判断,严谨一些的系统会对文件进行hash运算,通过文件的hash值是否相同来判断文件是否重复。
[0003]在专利号CN112905547A中,提供了一种大文件去重的方法,主要还是通过文件类型、文件名称、文件长度、文件md5值等文件关键属性来判断文件的唯一性。在现有判断文件是否重复的技术中,它的整个实现的过程会非常耗时,并且时间也会随着文件的变大而急剧增加,尤其是在并发量大一些的情况下 ...
【技术保护点】
【技术特征摘要】
1.一种基于过滤器的文件校验方法,其特征在于,包括:遍历所有已上传文件,将所述已上传文件通过缓存数据库中预设的过滤器映射为位图;对待上传文件进行分片,得到多个分片数据;将部分分片数据输入所述过滤器,以根据所述位图对所述部分分片数据进行验证,若所述部分分片数据不在所述过滤器中,则上传所述待上传文件。2.根据权利要求1所述的基于过滤器的文件校验方法,其特征在于,将所述已上传文件通过缓存数据库中预设的过滤器映射为位图,包括:初始化所述过滤器的过滤参数,其中,所述过滤参数包括:最大误差率、预估元素数量以及用于管理缓存连接的连接池;根据所述最大误差率和预估元素数量确定所述过滤器生成的哈希函数个数;对所述已上传文件进行分片,得到目标分片,将所述目标分片通过哈希运算映射为数组,其中所述数组长度等于所述哈希函数个数;以对应的已上传文件的关键属性作为键,以所述数组的值作为索引值,生成位图,其中,位图中索引值对应位置的值被置为1。3.根据权利要求2所述的基于过滤器的文件校验方法,其特征在于,根据所述最大误差率和预估元素数量确定所述过滤器生成的哈希函数个数,包括:根据所述最大误差率和预估元素数量确定所述过滤器的长度;根据所述过滤器的长度和所述预估元素数量确定所述哈希函数个数。4.根据权利要求2所述的基于过滤器的文件校验方法,其特征在于,将所述目标分片通过哈希运算映射为数组,包括:对所述目标分片进行预设次数的哈希运算,得到所述数组,其中所述预设次数等于所述哈希哈数个数。5.根据权利要求1所述的基于过滤器的文件校验方法,其特征在于,根据所述位图对...
【专利技术属性】
技术研发人员:张杰,
申请(专利权)人:重庆长安汽车股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。