如何构建云原生的开源大数据平台 | 微淼基于阿里云大数据生态的应用实践

简介: 随着开源技术与云原生的高度融合,阿里云开源大数据平台在功能性、易用性、安全性上积累了丰富的实践经验,已成功服务数千家企业,助力其聚焦自身核心业务优势,缩短开发周期、简化运维难度,拓展更多业务创新。10月29日,阿里云发布“如何构建云原生的开源大数据平台”解决方案,邀请到了来自阿里云、微淼、Inmobi的技术专家为大家现身说法,呈现上云实践。


随着开源技术与云原生的高度融合,阿里云开源大数据平台在功能性、易用性、安全性上积累了丰富的实践经验,已成功服务数千家企业,助力其聚焦自身核心业务优势,缩短开发周期、简化运维难度,拓展更多业务创新。10月29日,阿里云发布“如何构建云原生的开源大数据平台”解决方案,邀请到了来自阿里云、微淼、Inmobi的技术专家为大家现身说法,呈现上云实践。

288103CD-01F9-43de-842D-B960F73F7FE1.png

本文主要分享微淼基于阿里云大数据生态的应用实践,以及实时计算 Flink 版全托管在微淼的实践总结。


分享嘉宾: 乔丹,微淼大数据高级大数据开发工程师

视频地址:https://yqh.aliyun.com/live/bigdataop


一、公司简介

微淼 是一家专门从事理财、创业技能培训的公司。微淼不售卖、不代理理财及保险产品,始终致力于帮助用户树立正确的金钱观、理财观、创业观,帮助用户掌握正确的理财方法和创业技能,全面提升国民的财经素养和创业水平。目前已拥有超过800万付费用户及1500万自媒体矩阵粉丝。


二、大数据平台建设历程

微淼初期大数据平台架构

为了助力企业做出更好的业务决策,为用户提供更优质的服务,微淼在20年成立了大数据部门,同年8月开始搭建集群。

  • 背景

大数据部门成立初期,实时数据需求较少,多以离线分析为主

  • EMR 的优势
  • 创建集群方便快捷
  • 集成大量开源组件及框架
  • 运维成本低
  • 扩容方便
  • 稳定性高

EMR 创建集群很方便,在选定集群模板之后,可以一键自动化创建集群,极大的降低集群的搭建难度,有效避免搭建集群过程中的各种踩坑问题。其次,EMR 集成了大量的社区开源组件并进行了适配,避免了开源组件之间版本不兼容的问题,阿里云 EMR 团队还对大部分开源组件进行了优化,极大的提高了组件的性能。此外,EMR 还集成了 Flink 实时计算引擎。阿里云24小时在线的企业级服务,助力企业解决各种集群问题,同时提供集群调优建议,降低运维成本。EMR 扩容也很方便,申请扩容之后几分钟之内就能自动完成,无需手动部署和启动服务。阿里云对象存储 OSS 替代 HDFS 提供文件存储服务,保证安全和性能的同时,可以显著降低存储成本,无需参与维护还有无限的扩展能力。


基于大数据部门成立初期的背景及业务需求,结合阿里云 EMR 的优势,微淼搭建了基于 EMR 的大数据平台,这套架构在平台建设初期提供了很多便利。Flink 组件完成实时分析任务,Hive 组件完成离线数仓分层建模,契合大数据平台搭建的初衷,比较好的支撑了我们的业务。

image.png

面临挑战

随着微淼业务的高速增长,多个业务线齐头并进,大数据平台瓶颈突显:

  • 业务高速增长,导致数据量、任务需求量爆发式增长
  • 日增数据量同比上半年增长超过10倍
  • 调度任务数同比增长超过8倍
  • T+1离线数据分析已经不能满足业务诉求
  • 实时及准实时的分析任务急剧增加
  • 现有的实时计算架构不能满足业务的快速需求
  • 数据指标越来越多,“烟囱式”的开发导致代码耦合问题严重
  • 需求越来越多,有的需要明细数据,有的需要 OLAP 分析。单一的 Flink 开发模式难以对付多种需求
  • 每个需求都需要申请资源,导致资源成本急速膨胀,EMR 集群资源吃紧,出现实时任务和离线任务抢占资源的情况
  • 核心组件 Flink 升级困难,大版本升级相当于重新创建集群,人力成本较高


阿里云开源大数据平台解决方案架构

基于上述业务增长带来的问题,微淼大数据研发团队开始构建2.0版本的实时计算架构。一方面引入了一批新的组件,丰富了整个平台的架构;另一方面,对实时计算架构进行了优化和升级,引入了实时数仓的概念模型。


针对数据量激增:

  • 广泛使用对象存储 OSS,减小存储压力,降低存储成本
  • 对集群资源进行隔离和优化  

广泛使用阿里云对象存储 OSS 替代 HDFS 作为离线数仓的存储服务,大大减小了的存储压力,降低了存储成本。计算和存储分离的架构使集群的计算资源得到了更充分的利用,计算资源和存储资源相匹配,使得整个集群资源利用率超过了50%。同时对集群进行资源隔离优化,很大程度上节省了成本。


针对实时分析任务需求量大增

  • 引入 Hudi 及 OLAP 组件
  • 增量更新,提升数据支持响应速度
  • OLAP 组件引入,替代部分实时 OLAP 的工作量,使得开发成本大大降低

针对实时、准实时分析任务需求量大增,引入了 Hudi 数据湖和 OLAP 组件 Doris。Hudi 集成 Presto 和 Spark 引擎后,可以达到近实时的查询和分析,解决了大部分的准实时需求。Doris 是一款对海量数据进行快速分析的MPP架构数据库,在数据分析领域有着简单易用、高性能等特点,支持明细查询、聚合分析、多维分析等,秒级到毫秒级的响应满足了大部分的实时需求。


针对现有的实时计算架构不能满足业务的快速发展

  • 进行实时数仓搭建探索
  • 实时数仓分层,避免“烟囱式”开发
  • 引入 OLAP 分析引擎,灵活的处理多样的分析需求
  • 引入实时计算Flink版,更灵活的版本选择,更彻底的计算资源隔离。

针对 Flink 版本问题,引入了阿里云实时计算 Flink 版全托管,提供灵活的扩缩容,同时有更丰富的版本,可以根据任务需求选择不同的 Flink 版本。阿里云实时计算 Flink 版全托管对版本的支持,紧跟社区,可以实现从1.10~1.13各个版本之间的灵活切换,完美解决了 Flink 升级难题。此外,实时计算 Flink 版全托管和 EMR 资源也是完全隔离的,很好地解决了实时任务和离线任务抢占资源的问题。

image.png

架构升级带来的技术演进

微淼大数据研发团队也对实时计算架构进行了升级,参考离线数仓将实时数仓根据分层设计的思想分为了4层。


实时数仓四层模型:

  • ODS 层:
  • 贴源存储埋点数据各种日志

ODS 层,也就是常说的实时数据接入层。通过数据采集工具把各个业务系统的实时数据采集过来,统一进行结构化处理。这个过程不过滤数据,尽量保证数据的原貌。这层数据的主要来源包含三部分,第一部分是业务方接受的 MQ 消息,第二部分是业务数据库的binlog 日志,第三部分是埋点日志和应用程序日志,这三部分最终统一写入 KafKa 中。


  • DW 明细层:
  • 流数据关联维表统一进行ETL,统一进行去重,过滤,分流等动作,生成公共行为明细表和业务行为明细表
  • 业务明细表关联各自业务维表形成了业务主题明细表
  • 明细表写入 OLAP 引擎,以便进行 OLAP 分析和快速汇总

DW 明细层,也就是明细中间层。这层以业务过程作为建模驱动,基于具体的业务过程事件来构建。比如交易过程有下单事件、支付事件等,基于这些事件进行明细层的构建。在这层,明细数据参考离线数仓的主题域进行划分,也会采用维度建模的方式组织数据,对一些重要的维度字段做适当的冗余。这层的数据来源于 ODS 层,通过 Flink 进行数据清洗,多流关联补全维度,最终也写入 KafKa 中。实时维表层用来存放维度数据,主要用于 DW 层宽化处理时数据补全使用。这层的数据主要存储于 HBase 中。后续还会基于 QPS 和数据量的大小,灵活选择更合适的存储介质,比如 Redis。


  • DWS 汇总层
  • 读取业务主题明细表计算出各业务主题关心的通用维度和指标,并存储到 OLAP引擎中

DWS 层,也就是实时汇总层。这层通过 DW 层的数据进行多维汇总,提供给下游业务方使用。在实际应用过程中,不同业务使用维度汇总的方式可能不同,根据不同的需求可以采用不同的技术方案去实现。第一种方案,采用 Flink 进行实时汇总,然后将结果指标写入 HBase 或 MySQL 等数据库中。这种方式的优点是实现逻辑比较灵活,缺点是聚合力度比较固化,不容易扩展。第二种方式,采用实时 OLAP 工具进行汇总,这种方式的优点是容易扩展,缺点是业务逻辑需要在中间层预处理。


  • ADS 层:
  • 提供 ad-hoc 查询和实时大盘服务

ADS 层,也就是实时应用层。这层数据已经写入应用系统的存储中,比如写入 Doris 作为 BI 看板的实时数据集,或者提供实时 OLAP 服务,写入HBase,MySQL 用于提供统一的数据服务接口。


Flink+OLAP 实时数仓促进业务价值提升

基于新的平台架构和实时数仓架构,微淼快速稳定地支撑了业务的需求。近2个月就对公司业务进行了如下支持:

  • 研发并部署了5个大中型项目
  • 开发并调度20个任务
  • 支持了5个业务系统
  • 支持了7个实时可视化看板


运营方面的提升:

  • “催到课”功能提升到课率10.5%
  •  直播指标实时监控提升续费率1.5%
  •  落地页访问情况实时监控促进产品优化落地页13


实时产出的精准数据,给运营和投放团队争取到了宝贵的决策时间;给老师提供了有力的实时教学数据支持,获得了各个需求方的一致肯定。


三、与阿里云未来的合作规划

从实时计算到实时数仓,不管是数据架构还是技术方案,微淼在深度和广度上都有了更多的积累。


随着公司业务的快速发展以及新技术的不断推出,实时数仓也会不断的迭代优化。比如 OLAP 引擎目前使用的是 Apache Doris,后期会在这个领域和阿里云有更深入的交流。此外,还会从以下方面进一步提升实时数仓的服务能力,这些也是微淼大数据将来和阿里云一起深入讨论的方向:

  • 持续跟进实时计算 Flink 版的使用体验
  • 完善实时数仓血缘关系,提升任务和表的质量监控
  • 完善元数据管理体系
  • 完善 Flink 作业的监控,建立实时数仓价值评估体系,量化投入和产出
  • 进一步强化实时任务的鲁棒性


以上就是微淼基于阿里云大数据生态的应用实践,以及实时计算 Flink 版全托管在微淼的实践总结的全部内容。





相关信息


点击链接观看直播回放,超多活动信息等你来

https://yqh.aliyun.com/live/bigdataop

⭐更多EMR相关信息,欢迎前往EMR产品详情页:    https://www.aliyun.com/product/emapreduce


欢迎钉钉扫码加入EMR相关产品交流群,为您提供最新的产品直播、产品活动及技术支持!

image.psd (9).png

相关实践学习
简单用户画像分析
本场景主要介绍基于海量日志数据进行简单用户画像分析为背景,如何通过使用DataWorks完成数据采集 、加工数据、配置数据质量监控和数据可视化展现等任务。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
5天前
|
弹性计算 人工智能 安全
带你读《从基础到应用云上安全航行指南》——阿里云产品专家教你如何全方位构建ECS安全体系(3)
带你读《从基础到应用云上安全航行指南》——阿里云产品专家教你如何全方位构建ECS安全体系(3)
190 0
|
18天前
|
监控 机器人 数据处理
5 天学会阿里云 RPA:教育行业应用
在数字化时代,教育行业也在迅速发展和创新。为了提高教育管理效率、优化教学过程和提升学生体验,越来越多的教育机构开始采用智能自动化技术。阿里云 RPA(机器人流程自动化)作为一种先进的技术手段,正逐渐在教育行业中得到广泛应用。
|
18天前
|
安全 机器人 数据安全/隐私保护
5 天学会阿里云 RPA:医疗保健行业应用
医疗保健行业一直在寻求创新的方法来提高效率、减少错误并提供更好的患者护理。阿里云 RPA(机器人流程自动化)的出现为医疗保健行业带来了新的机遇,使其能够实现工作流程的自动化,提升服务质量。
|
5天前
|
弹性计算 安全 网络安全
带你读《从基础到应用云上安全航行指南》——阿里云产品专家教你如何全方位构建ECS安全体系(2)
带你读《从基础到应用云上安全航行指南》——阿里云产品专家教你如何全方位构建ECS安全体系(2)
181 0
|
5天前
|
弹性计算 安全 网络安全
带你读《从基础到应用云上安全航行指南》——阿里云产品专家教你如何全方位构建ECS安全体系(1)
带你读《从基础到应用云上安全航行指南》——阿里云产品专家教你如何全方位构建ECS安全体系(1)
150 0
|
5天前
|
弹性计算 安全 API
带你读《从基础到应用云上安全航行指南》——干货长文快收藏!阿里云专家教你如何安全访问和管理ECS资源(1)
带你读《从基础到应用云上安全航行指南》——干货长文快收藏!阿里云专家教你如何安全访问和管理ECS资源(1)
183 2
|
5天前
|
弹性计算 运维 监控
带你读《从基础到应用云上安全航行指南》——干货长文快收藏!阿里云专家教你如何安全访问和管理ECS资源(2)
带你读《从基础到应用云上安全航行指南》——干货长文快收藏!阿里云专家教你如何安全访问和管理ECS资源(2)
170 0
|
5天前
|
弹性计算 安全 开发工具
带你读《从基础到应用云上安全航行指南》——干货长文快收藏!阿里云专家教你如何安全访问和管理ECS资源(3)
带你读《从基础到应用云上安全航行指南》——干货长文快收藏!阿里云专家教你如何安全访问和管理ECS资源(3)
164 2
|
18天前
|
数据采集 监控 安全
5 天学会阿里云 RPA:政府部门应用
在数字化时代,政府部门面临着提高工作效率、优化服务质量和降低运营成本的挑战。为了应对这些挑战,越来越多的政府机构开始寻求智能自动化技术的应用。阿里云 RPA(机器人流程自动化)作为一种先进的技术手段,正逐渐在政府部门中得到广泛应用。
|
18天前
|
数据采集 供应链 监控
5 天学会阿里云 RPA:电商行业应用
在当今数字化的商业环境中,电商行业迅速发展。为了在激烈的市场竞争中脱颖而出,电商企业不断寻求提高运营效率和提供优质客户体验的方法。阿里云 RPA(机器人流程自动化)的出现为电商行业带来了全新的解决方案。

相关产品

  • 开源大数据平台 E-MapReduce