[发明专利]数据匹配方法、装置及计算机设备在审
申请号: | 201810359831.6 | 申请日: | 2018-04-20 |
公开(公告)号: | CN110399530A | 公开(公告)日: | 2019-11-01 |
发明(设计)人: | 江浩;陈天泳 | 申请(专利权)人: | 杭州海康威视数字技术股份有限公司 |
主分类号: | G06F16/901 | 分类号: | G06F16/901 |
代理公司: | 北京柏杉松知识产权代理事务所(普通合伙) 11413 | 代理人: | 马敬;项京 |
地址: | 310051 浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 核心数据 匹配 数据匹配 散列 计算机设备 数据节点 数据链表 数据属性 预设 预设存储位置 避免冲突 快速存取 匹配结果 散列算法 数组链表 算法确定 查找 | ||
1.一种数据匹配方法,其特征在于,所述方法包括:
获取待匹配的核心数据;
利用预设散列算法,计算得到所述待匹配的核心数据的散列值;
利用预设存储位置确定算法,确定在预设散列表中所述散列值对应的位置信息;
根据所述位置信息,查找已建立的数组链表中满足所述位置信息的数据链表,所述数据链表中的数据节点包括核心数据及所述核心数据对应的数据属性;
基于所述待匹配的核心数据,确定所述数据链表中与所述待匹配的核心数据相匹配的数据节点中的数据属性。
2.根据权利要求1所述的方法,其特征在于,在所述获取待匹配的核心数据之前,所述方法还包括:
接收原始数据集合;
对所述原始数据集合中的各数据元素进行解析,得到各数据元素中的核心数据;
利用预设散列算法,计算得到各核心数据的散列值;
利用预设存储位置确定算法,确定在预设散列表中各散列值对应的位置信息;
根据各位置信息,构建数组链表,所述数组链表包括各位置信息对应的数据链表,下挂在各数据链表中的数据节点包括与该数据链表对应的核心数据及该核心数据对应的数据属性。
3.根据权利要求1或2所述的方法,其特征在于,所述预设散列算法包括哈希算法;
所述散列值的计算方式,包括:
将核心数据输入预设哈希函数,得到所述核心数据对应的哈希值;
所述位置信息的确定方式,包括:
使用得到的所述哈希值对预设哈希表长度求余,得到在预设哈希表中所述哈希值对应的存储位置。
4.根据权利要求2所述的方法,其特征在于,所述根据各位置信息,构建数组链表,包括:
分别封装各数据元素,得到与各数据元素对应的数据结构体;
将各数据结构体分别进行封装,得到各数据结构体对应的数据节点;
针对各数据节点,判断已下挂的数据节点中是否存在与该数据节点冗余或者冲突的数据节点;
若不存在,则根据该数据节点中的核心数据,在该核心数据对应的数据链表中下挂该数据节点;
若存在,则丢弃该数据节点;
所述冗余节点为与数据链表中已下挂的数据节点相同的数据节点,所述冲突节点为与数据链表中已下挂的数据节点中的核心数据相同,且数据属性不同的数据节点。
5.根据权利要求4所述的方法,其特征在于,所述原始数据集合中的各数据元素中还包含与核心数据对应的扩展数据,所述扩展数据为用于根据预设组合需求与所述核心数据组合、以得到包含多种数据的原始数据的数据;
所述冲突节点为与数据链表中已下挂的数据节点中的核心数据和扩展数据相同,且数据属性不同的数据节点;
所述获取待匹配的核心数据,包括:
获取待匹配数据,所述待匹配数据中包括待匹配的核心数据及待匹配的扩展数据;
通过对所述待匹配的数据进行解析,确定所述待匹配的数据中待匹配的核心数据;
所述基于所述待匹配的核心数据,确定所述数据链表中与所述待匹配的核心数据相匹配的数据节点中的数据属性,包括:
封装所述待匹配数据,得到对应的待匹配数据结构体;
基于所述待匹配数据结构体包含的待匹配的核心数据及待匹配的扩展数据,确定所述数据链表中与所述待匹配数据结构体相匹配的数据节点中的数据属性。
6.根据权利要求1所述的方法,其特征在于,所述根据所述位置信息,查找已建立的数组链表中满足所述位置信息的数据链表,包括:
将已建立的数组链表中,下挂在所述位置信息下的数据链表,确定为满足所述位置信息的数据链表。
7.根据权利要求1所述的方法,其特征在于,所述基于所述待匹配核心数据,确定所述数据链表中与所述待匹配的核心数据相匹配的数据节点中的数据属性,包括:
从所述数据链表中选取数据节点散列值与所述待匹配的核心数据的散列值相同的数据节点,得到候选数据节点集合,所述数据节点散列值为所述数据节点中的核心数据的散列值;
基于所述待匹配的核心数据,确定所述候选数据节点集合中与所述待匹配的核心数据相匹配的数据节点中的数据属性。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州海康威视数字技术股份有限公司,未经杭州海康威视数字技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810359831.6/1.html,转载请声明来源钻瓜专利网。