在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
如何解决HBase海量数据高效入仓的问题?数据仓库的数据来源于各方业务系统,高效准确的将业务系统的数据同步到数仓是数仓建设的根本。部分业务数据存储在HBase中,这部分数据体量较大达到数十亿。大数据需要增量同步这部分业务数据到数据仓库中进行离线分析,目前主要的同步方式是通过HBase的hive映射表来实现的。
这种方式目前存在的缺陷:需要对HBase表进行全表扫描对HBase库有一定压力同步数据同步速度慢;业务方对HBase表字段变更之后需要重建hive映射表给权限维护带来一定的困难;业务方对HBase表字段的变更无法得到有效监控无法及时感知字段的新增,对数仓的维护带来一定的困难;业务方更新数据时未更新时间戳导致通过时间戳字段增量抽取时数据缺失;业务方对表字段的更新新增无法及时感知导致字段不全需要回溯数据。
基于以上背景对HBase数据增量同步到数仓的场景给出了通用的解决方案,解决了以上这些痛点。
二、解决HBase海量数据高效入仓的方案简述
1、数据入仓构建流程
2、HBase数据入仓方案实验对比
分别对以上三种实现方案进行合理性分析:
方案一:
使用HBase的hive映射表。
此种方案实现方式简单,但是不符合数仓的实现机制,主要原因有:HBase表虽然是Hadoop生态体系的NoSQL数据库,但是其作为业务方的数据库,直接通过hive映射表读取,就类比于直接读取业务方Mysql中的视图,可能会对业务方数据库造成一定压力,甚至会影响业务的正常运行,违反数仓尽可能低的影响业务运行原则。
通过hive映射表的方式从实现方式上来讲,增加了与业务方的耦合度,违反数仓建设解耦原则。所以此种方案在此实际应用场景中是不应该采取的方案。
方案二:
根据业务表中的时间戳字段,抓取增量数据。
由于HBase是基于rowKey的NoSQL数据库,所以会存在以下几个问题:需要通过Scan全表,然后根据时间戳(updateTime)过滤出当天的增量,当数据量达到千万甚至亿级时,这种执行效率就很低,运行时长很长。由于HBase表更新数据时,不像MySQL一样,能自动更新时间戳,会导致业务方没有及时更新时间戳,那么在增量抽取数据的时候,会造成数据缺失的情况。所以此种方案存在一定的风险。
方案三:
根据HBase的timeRange特性(HBase写入数据的时候会记录时间戳,使用的是服务器时间),首先过滤出增量的rowKey,然后根据这些rowKey去HBase查询对应的数据。这种实现方案同时解决了方案一、方案二的问题。同时,能够有效监控业务方对HBase表字段的新增情况,避免业务方未及时通知而导致的数据缺失问题,能够最大限度的减少数据回溯的频率。
综上采用方案三作为实现HBase海量数据入仓的解决方案。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
做大数据开发累吗?需不需要加班?
做大数据开发累吗?需不需要加班?首先我们来了解大数据的工作内容,用一句话总结就是分析历史、预测未来、优化选择。总体上看来,大数据开发的工作需要按部就班进行,因此一般不需要加班,但是偶尔也会因为额外的需求增加以及对项目进度的把控而需要加班。不过,就与其它的研发技术岗位比较,大数据开发已经算是比较轻松的工作了。
17330
2019-09-16 10:10:54
云计算和人工智能的两大误区是什么
云计算和人工智能的两大误区是什么?云计算和人工智能两大误区:云支出正在使数据中心支出大打折扣;人工智能过度炒作在很大程度上使企业购买者失败。过早采用人工智能可能会很有趣,但同时存在着诸多问题。
4979
2020-02-12 18:17:43
影响大数据与分析的因素有哪些?
数据分析在数据库内进行索引和分析,并且企业拥有确保数据可以移至正确位置的工具。借助现代商业智能技术使答案更接近于业务用户。寻找、清查和综合分布广泛且多样化的数据资产。算法将有助于分析系统对数据进行指纹识别、发现异常和洞察,并提出应与之一起分析的新数据。
8490
2020-02-14 16:32:23
大数据技术是什么专业?前景如何
大数据技术是什么专业?大数据浪潮下,大数据技术是信息领域的革命,更是在全球领域内加速企业创新,社会变革的技术。大数据能给企业创造商业价值。使用大数据技术解决企业难题难题,灵活、快速、高效地响应瞬息万变的市场需求。
8886
2020-07-17 17:10:55
女生学大数据好就业吗?前景如何?
随着人工智能物联网的发展,大数据人才急剧增加,大数据应用广泛未来将覆盖全行业,大数据人才稀缺人才缺口达百万以上,掌握大数据相关的技能就业前景比较广阔。学习大数据的男生确实比女生多,但还是有女生学,每个人的学习能力、思维方式都不同需要根据自身情况而定。
5951
2021-04-20 15:13:14