[发明专利]基于HBase的海量用户数据去重存储的方法及装置有效
申请号: | 202110988471.8 | 申请日: | 2021-08-26 |
公开(公告)号: | CN113609123B | 公开(公告)日: | 2023-06-02 |
发明(设计)人: | 张佳强;谢文 | 申请(专利权)人: | 四川效率源信息安全技术股份有限公司 |
主分类号: | G06F16/215 | 分类号: | G06F16/215;G06F16/21;G06F16/245;G06F16/27 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 641000 四*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 hbase 海量 用户 数据 存储 方法 装置 | ||
1.一种基于HBase的海量用户数据去重存储的方法,其特征在于包括以下步骤:
S100:抽取数据:抽取各个来源的用户数据,并按类别发送至kafka的各个主题,所述类别包括基本信息类、联系类、交易类、浏览类、地理信息类;
S200:接收数据:通过sparkstreaming分布式计算引擎,接收kafka各个主题的用户数据;
S300:清洗数据:按照约定的用户数据标准及规范,清洗各个来源、各个批次的用户数据,用以转换不兼容的数据;
S400:生成行键:对每条用户数据生成唯一行键,其中,行键字节长度为64位,包括32位用户证件号码及32位数据摘要,步骤S400包括以下步骤:
S401:获取当前用户数据所对应的用户证件号码作为用户数据的行键前缀,不足32位时,末尾补0;
S402:获取当前用户数据类别的去重依据的字段集合;
S403:根据所述的去重依据的字段集合,获取当前用户数据所包含各个字段各自对应的数值,将数值顺序拼接为可变长度的字符串;
S404:采用MD5摘要算法,将所述可变长度的字符串转化为32位的定长字符串;
S405:将32位的行键前缀与所述定长字符串拼接,获得64位的行键;
S500:入库数据:在spark中获取HBase数据库的连接,通过upsert语句将用户数据入库;
S600:异常数据预警:当检测到新增用户数据时,查询/筛选用户的全量数据,对具有多个版本的重复的用户数据进行逐一字段的判断,并对预警范围内的异常数据进行预警。
2.根据权利要求1所述的一种基于HBase的海量用户数据去重存储的方法,其特征在于,清洗规则包括:用户数据类型的判断、用户数据长度的判断、用户数据取值范围的判断、非空数据的判断、各个来源用户数据的字典转换。
3.根据权利要求1所述的一种基于HBase的海量用户数据去重存储的方法,其特征在于,查询用户的全量数据包括以下步骤:
S6001:根据用户证件号码生成32位的行键前缀,不足32位时,末尾补0;
S6002:将行键前缀与数字00000000000000000000000000000000拼接,创建行键取值范围的最小值;
S6003:将行键前缀与数字ffffffffffffffffffffffffffffffff拼接,创建行键取值范围的最大值;
S6004:查询行键取值范围:查询行键取值范围的最小值与行键取值范围的最大值之间的用户数据作为用户的全量数据。
4.根据权利要求1所述的一种基于HBase的海量用户数据去重存储的方法,其特征在于,所述预警范围预先由人工配置。
5.一种基于HBase的海量用户数据去重存储的装置,其特征在于,包括:用户数据抽取模块、用户数据接收模块、用户数据清洗模块、行键生成模块、用户数据入库模块及异常数据预警模块,其中,
用户数据抽取模块,用以抽取各个来源的用户数据,按类别发送到kafka的各个主题;
用户数据接收模块,通过sparkstreaming分布式计算引擎,接收kafka各主题的用户数据;
用户数据清洗模块,按照约定的用户数据标准及规范,清洗各个来源、各个批次的用户数据,用以转换不兼容的用户数据;
行键生成模块,用以对每条用户数据生成唯一行键;采用权利要求1所述步骤S400的方法生成唯一行键,其中,行键字节长度为64位,包括32位用户证件号码及32位数据摘要,包括以下步骤:
S401:获取当前用户数据所对应的用户证件号码作为用户数据的行键前缀,不足32位时,末尾补0;
S402:获取当前用户数据类别的去重依据的字段集合;
S403:根据所述的去重依据的字段集合,获取当前用户数据所包含各个字段各自对应的数值,将数值顺序拼接为可变长度的字符串;
S404:采用MD5摘要算法,将所述可变长度的字符串转化为32位的定长字符串;
S405:将32位的行键前缀与所述定长字符串拼接,获得64位的行键;
用户数据入库模块,用以在spark中获取HBase数据库的连接,并通过upsert语句将用户数据入库;
异常数据预警模块,当检测到新增用户数据时,查询/筛选用户的全量数据,对具有多个版本的重复的用户数据进行逐一字段的判断,并对预警范围内的异常数据进行预警。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川效率源信息安全技术股份有限公司,未经四川效率源信息安全技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110988471.8/1.html,转载请声明来源钻瓜专利网。