[发明专利]基于HBase的海量用户数据去重存储的方法及装置有效
申请号: | 202110988471.8 | 申请日: | 2021-08-26 |
公开(公告)号: | CN113609123B | 公开(公告)日: | 2023-06-02 |
发明(设计)人: | 张佳强;谢文 | 申请(专利权)人: | 四川效率源信息安全技术股份有限公司 |
主分类号: | G06F16/215 | 分类号: | G06F16/215;G06F16/21;G06F16/245;G06F16/27 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 641000 四*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 hbase 海量 用户 数据 存储 方法 装置 | ||
本发明公开了一种基于HBase的海量用户数据去重存储的方法及装置,方法包括以下步骤:S100:抽取数据:抽取各个来源的用户数据,并按类别发送至kafka的各个主题;S200:接收数据:通过spark streaming分布式计算引擎,接收kafka各个主题的用户数据;S300:清洗数据:按照约定的用户数据标准及规范,清洗各个来源、各个批次的用户数据,用以转换不兼容的数据;S400:生成行键:对每条用户数据生成唯一行键,其中,行键字节长度为64位,包括32位用户证件号码及32位数据摘要;S500:入库数据:在spark中获取HBase数据库的连接,通过upsert语句将用户数据入库;S600:异常数据预警。
技术领域
本发明属于大数据领域,涉及一种海量用户数据去重存储的方法及装置,尤其涉及一种基于HBase的海量用户数据去重存储的方法及装置。
背景技术
随着信息化和网络化时代的快速发展,用户涉及的电子数据来源广阔,体量庞大。如何对海量的用户数据进行存储的同时、对不同来源、不同批次的用户数据进行去重、且发现重复数据之间的差异,是现今大数据技术突破的方向。例如,对用户的同一条转账记录,存在删除状态不同的情况;同一个通讯录号码,存在备注姓名不同的差异。
目前对海量用户数据的去重存储,主要有以下几种方式:
1.直接将新增用户数据与全量历史用户数据进行比对,过滤掉重复用户数据后再存储;其缺点为:
频繁读取全量用户数据比对,非常消耗系统资源,效率低;
由于每次入库都需要全量用户数据的原因,入库操作只能单线程执行,不能并发入库,也不能保证用户数据的实时性。
2.采用布隆过滤器,对新增用户数据进行过滤后再存储;其缺点为
误判率不确定,随着用户数据量的增加,误判率逐渐增加,遗漏用户数据的风险太高;
需要额外的存储空间,增加了系统成本,也使系统耦合性变高,不利于数据的备份和迁移;
不能发现重复用户数据之间的差异性。
3.利用常规数据库组合唯一键,避免重复数据入库;其缺点为:
不易满足海量用户数据存储的需求;
想要发现重复用户数据之间的差异,必须在入库时,对每条重复用户数据进行单独存储,效率低。
综上所述,研究一种效率高、遗漏数据的风险低、利于维护的海量用户数据的去重存储的方法及装置就迫在眉睫。
发明内容
针对现有技术的不足,本发明提供了一种基于HBase的海量用户数据去重存储的方法:采用HBase数据库存储用户数据,通过独创的规则生成行键以保证用户数据的唯一性,并利用用户数据多版本特性发现差异。
本申请涉及的术语做如下解释:
HBase:HBase是一个分布式的、面向列的开源数据库;
行键(rowkey):Hbase数据库的行键;
Kafka:是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据;
SparkStreaming:是在SparkCoreAPI的基础上,实现的可扩展、高吞吐、可容错的实时数据流处理引擎。
本发明包括以下步骤:
S100:抽取数据:抽取各个来源的用户数据,并按类别发送至kafka的各个主题,所述类别包括基本信息类、联系类、交易类、浏览类、地理信息类;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川效率源信息安全技术股份有限公司,未经四川效率源信息安全技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110988471.8/2.html,转载请声明来源钻瓜专利网。