前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【2020】DBus,一个更能满足企业需求的大数据采集平台「建议收藏」

【2020】DBus,一个更能满足企业需求的大数据采集平台「建议收藏」

作者头像
全栈程序员站长
发布2022-09-01 10:08:18
4200
发布2022-09-01 10:08:18
举报

大家好,又见面了,我是你们的朋友全栈君。

功能远超Sqoop、DataX、Flume、Logatash、Filebeat等采集工具

【2020】DBus,一个更能满足企业需求的大数据采集平台「建议收藏」
【2020】DBus,一个更能满足企业需求的大数据采集平台「建议收藏」
【2020】DBus,一个更能满足企业需求的大数据采集平台「建议收藏」
【2020】DBus,一个更能满足企业需求的大数据采集平台「建议收藏」
【2020】DBus,一个更能满足企业需求的大数据采集平台「建议收藏」
【2020】DBus,一个更能满足企业需求的大数据采集平台「建议收藏」
【2020】DBus,一个更能满足企业需求的大数据采集平台「建议收藏」
【2020】DBus,一个更能满足企业需求的大数据采集平台「建议收藏」
【2020】DBus,一个更能满足企业需求的大数据采集平台「建议收藏」
【2020】DBus,一个更能满足企业需求的大数据采集平台「建议收藏」
【2020】DBus,一个更能满足企业需求的大数据采集平台「建议收藏」
【2020】DBus,一个更能满足企业需求的大数据采集平台「建议收藏」

深知其他组件的局限性,才能彰显DBus的优越感

当前有很多数据采集工具(Sqoop、DataX、Flume、Logatash、Filebeat等),他们或多或少都存在一些局限性。

【2020】DBus,一个更能满足企业需求的大数据采集平台「建议收藏」
【2020】DBus,一个更能满足企业需求的大数据采集平台「建议收藏」

一个共性问题是缺乏统一的数据源端管控,所以也就无法找到统一的数据入口,那后续处理元数据或者血缘分析会异常困难。

除此之外,现有各种数据采集工具的数据同步方法也有一定的局限性。比如:

(1)各个数据使用方在业务低峰期各种抽取所需数据(缺点是存在重复抽取而且数据不一致)

(2)由统一的数仓平台通过sqoop到各个系统中抽取数据(缺点是sqoop抽取方法时效性差,一般都是T+1的时效性)

(3)基于trigger或时间戳的方式获得增量的变更(缺点是对业务方侵入性大,带来性能损失等)

这些方案都不能算完美,要想同时解决数据一致性和实时性,比较合理的方法应该是基于日志的解决方案,同时能够提供消息订阅的方式给下游系统使用。在这个背景下DBus就诞生了。

DBus到底是什么?给我一个完美的解释

DBus(数据总线)项目为了统一数据采集需求而生, 专注于数据的收集及实时数据流计算,通过简单灵活的配置,以无侵入的方式对源端数据进行采集,采用高可用的流式计算框架,对公司各个IT系统在业务流程中产生的数据进行汇聚,经过转换处理后成为统一JSON的数据格式(UMS),提供给不同数据使用方订阅和消费,充当数仓平台、大数据分析平台、实时报表和实时营销等业务的数据源。支持多租户管理,提供租户级资源、数据隔离机制。

看DBus官网,了解更多更新一手资料

https://github.com/BriData/DBus

看DBus架构,聚焦DBus两大核心功能

【2020】DBus,一个更能满足企业需求的大数据采集平台「建议收藏」
【2020】DBus,一个更能满足企业需求的大数据采集平台「建议收藏」

DBUS主要分为两个部分:

(1)贴源数据采集

(2)多租户数据分发

两个部分之间以Kafka为媒介进行衔接。无多租户资源、数据隔离需求的用户,可以直接消费源端数据采集这一级输出到kafka的数据,无需再配置多租户数据分发

继续深入贴源数据采集功能模块

DBUS源端数据采集大体来说分为两部分:

读取RDBMS增量日志的方式来 实时获取增量数据日志,并支持全量拉取;基于logtash,flume,filebeat等抓取工具来实时获得数据,以可视化的方式对数据进行结构化输出;

以下为具体实现原理:

【2020】DBus,一个更能满足企业需求的大数据采集平台「建议收藏」
【2020】DBus,一个更能满足企业需求的大数据采集平台「建议收藏」

主要模块如下:

(1)日志抓取模块:从RDBMS的备库中读取增量日志,并实时同步到kafka中;

(2)增量转换模块:将增量数据实时转换为UMS数据,处理schema变更,脱敏等;

(3)全量抽取程序:将全量数据从RDBMS备库拉取并转换为UMS数据;

(4)日志算子处理模块:将来自不同抓取端的日志数据按照算子规则进行结构化处理;

(5)心跳监控模块:对于RDMS类源,定时向源端发送心跳数据,并在末端进行监控,发送预警通知;对于日志类,直接在末端监控预警。

(6)web管理模块:管理所有相关模块。

继续深入多租户数据分发功能模块

对于不同租户对不同源端数据有不同访问权限、脱敏需求的情形,需要引入Router分发模块,将源端貼源数据,根据配置好的权限、用户有权获取的源端表、不同脱敏规则等,分发到分配给租户的Topic。这一级的引入,在DBUS管理系统中,涉及到用户管理、Sink管理、资源分配、脱敏配置等。不同项目消费分配给他的topic。

【2020】DBus,一个更能满足企业需求的大数据采集平台「建议收藏」
【2020】DBus,一个更能满足企业需求的大数据采集平台「建议收藏」

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/140554.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年5月2,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 功能远超Sqoop、DataX、Flume、Logatash、Filebeat等采集工具
    • 深知其他组件的局限性,才能彰显DBus的优越感
      • DBus到底是什么?给我一个完美的解释
        • 看DBus官网,了解更多更新一手资料
          • 看DBus架构,聚焦DBus两大核心功能
            • 继续深入贴源数据采集功能模块
              • 继续深入多租户数据分发功能模块
              相关产品与服务
              流计算 Oceanus
              流计算 Oceanus 是大数据产品生态体系的实时化分析利器,是基于 Apache Flink 构建的企业级实时大数据分析平台,具备一站开发、无缝连接、亚秒延时、低廉成本、安全稳定等特点。流计算 Oceanus 以实现企业数据价值最大化为目标,加速企业实时化数字化的建设进程。
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档