摘要:华为云安全网关产品总监郭冕在“华为云TechWave云原生2.0专题日”上发表《华为云FusionInsight MRS,一个架构实现三种数据湖》的主题演讲,分享了智能数据时代的数据湖发展趋势、MRS云原生数据湖技术创新实现一个架构构建离线、实时、逻辑三种数据湖,以及业务实践中的成功案例等。

本文分享自华为云社区《华为云FusionInsight MRS云原生数据湖,一架构三湖,解密华为云FusionInsight MRS组件新特性》,原文作者: IT老磨。

5月20日,华为云安全网关产品总监郭冕在“华为云TechWave云原生2.0专题日”上发表《华为云FusionInsight MRS,一个架构实现三种数据湖》的主题演讲,分享了智能数据时代的数据湖发展趋势、MRS云原生数据湖技术创新实现一个架构构建离线、实时、逻辑三种数据湖,以及业务实践中的成功案例等。

进入智能数据时代,业界建设数据湖的十大共识

经过数十年的快速发展,大数据处理技术已日渐成熟,围绕数据仓库、数据湖衍生技术多如繁星,业界在多年的探索之中,也对未来数据湖形态有了十个重要共识,湖仓一体成为智能数据湖的首选架构。为应对智能数据时代对大数据技术提出的新挑战,华为云FusionInsight MRS云原生数据湖进行全面升级,引入了Hudi、ClickHouse热门组件,加强了自研的HetuEngine虚拟化引擎,同时新增IoTDB时序处理的能力,拓展数据使能应用的边界。

华为云FusionInsight MRS云原生数据湖

华为云FusionInsight MRS云原生数据湖为政企客户提供湖仓一体、云原生的数据湖解决方案,构建一个架构可持续演进的离线、实时、逻辑三种数据湖,支撑政企客户全量数据的实时分析、离线分析、交互查询、实时检索、多模分析、数据仓库、数据接入和治理等大数据应用场景,使政企客户高效用数、简化用数,助力政企客户实现一企一湖、一城一湖,业务洞见更准,价值兑现更快。

  • 离线数据湖:提供交互式、BI、AI等多个计算引擎,采用OBS实现存算分离,使得云原生数据湖的架构更灵活。支持单集群2万+节点的超大规模,通过集群联邦,可支持10万+规模。支持滚动升级,保障关键业务升级不中断。
  • 实时数据湖:通过Hudi支持ACID数据实时增量入湖、ClickHouse毫秒级OLAP分析等构建实时更新处理能力,使得供数时效从T+1到T+0。
  • 逻辑数据湖:HetuEngine提供跨湖、跨仓、跨云的协同分析,实现湖仓一体,减少80%数据搬迁,协同分析提效50倍。

一架构三湖新特性,覆盖数据分析全流程

  • Hudi:增量实时入湖,实现数据入湖时效快、开发易、性能高、资源利用率更高

传统数据湖不支持数据更新,导致数据采用T+1离线处理模式,完全无法满足灵活多变的业务诉求,针对数据时效性问题,华为云FusionInsight MRS云原生数据湖引入Hudi。

Hudi可以支持数据更新、数据删除,还有ACID保证,保证数据实时入湖更新操作。它提供多种视图,包括读优化视图、增量视图、实时视图,可以对不同的分析应用提供不同的视图,基于这些技术可轻松实现增量表、拉链表,镜像表这些数据存储模型。引入Hudi后,带来四大显著效果:

  1. 数据时效更快:在业务系统,通过CDC的系统实现分钟级数据入湖,数据时效性从T+1到T+0。
  2. 处理性能更高:面对数据有删除、更新的场景下,传统采用Hive更新方式,仅处理一行数据也可能需要对整个表,至少要对整个分区进行处理,引入Hudi后处理效率提升10倍+。
  3. 开发更简单:对于开发人员来说,传统数据入湖不支持更新或者删除,开发人员需新建临时表,将数据处理后再进行覆盖,对同一个任务可能需要写很多代码去完成,有了Hudi的加持之后,做一个数据更新的操作就跟使用数据库一样简单,单条语句即可完成。
  4. 资源利用率更高:传统T+1的模式并不是24小时跑任务,而是在晚上进行批量加工,早上出报表,整个处理过程中,计算高峰期仅晚上跑批的时间,而资源却是按照高峰期的计算需求来配比,导致白天的资源利用不足,引入Hudi后,数据实时采集入湖,把入湖处理的工作分散到全天的过程,实际上把整个资源消耗的高峰和低峰抹平掉。

某金融客户基于Hudi构建数据湖,数据入湖时延降至分钟级,且白天资源利用率提升2倍+,数据处理效率提升50%,开发人员通过单条语句即可完成开发,简化开发难度。

  • ClickHouse:实时OLAP引擎,实现报表全自助高性价比的实时分析

传统的OLAP引擎因其处理能力有限,数据一般按照专题或者主题进行组织后再与BI工具对接,导致BI用户和提供数据的数据工程师脱节。比如BI用户有一个新的需求,所需的数据没有在专题集市中,需要将需求给到数据工程师,以便开发相应的ETL任务,这个过程往往需要部门间协调,时间周期长,协作效益低。

现在,华为云FusionInsight MRS云原生数据湖可以将所有明细数据以大宽表的形式加载ClickHouse,BI用户可以基于ClickHouse大宽表进行自助分析,对数据工程师供数要求少,甚至在面对大部分新需求时,无需重新供数,开发效率和BI报表上线率都会得到极大提升。同时,ClickHouse在一张表里的数据分析可达毫秒级。

基于ClickHouse实现自助BI在华为内部实践也获得了很好的效果。华为集团HIS数据湖原来基于传统OLAP引擎建模,受限于开发效率,几年才上线了几十个报表。在引入Clickhouse后,三个月时间开发上线了400+报表,业务上线效率提升50倍。目前,华为内部ClickHouse的整体使用规模已经达到2000+节点,数据量规模达10+PB,日增数据量100TB。

  • HetuEngine:数据虚拟化引擎,突破地理限制,打破数据“墙”

伴随企业发展与数字化转型的需求,企业业务越来越复杂,创新需求越来越高。单系**立工作难以满足业务的变化需求,企业内可能同时存在多个湖、多个仓、多个系统,但传统方案烟囱式建设,湖仓之间、多引擎之间无直接的互联互通能力,需要通过ETL数据来回搬迁,造成数据流转链路长,数据多份冗余,产生数据孤岛。系统多份数据冗余也难以保证数据的一致性和可靠性。

为了让数据使用更简单,跨湖协同更容易,解决湖仓数据割裂的问题,华为推出了数据虚拟化引擎HetuEngine,实现跨湖、跨仓和云上、云下、多云协同分析的能力,突破地理限制,打破数据“墙”,跨湖协同分析效率提升50倍,跨仓协同分析减少80%的系统间数据搬迁同步,分析性能从分钟级提升至秒级。

金融某行通过引入HetuEngine数据虚拟化引擎,在数据湖查询分析方面该行提升了并发能力,仅1/5的资源即可支持45并发,峰值并发最大达200QPS,平均时延优化到8秒;在湖仓协同分析方面,通过HetuEngine打通数据湖与数仓间的数据壁垒,湖仓协同分析性能从分钟级提升至秒级,同时减少80%的系统间数据搬迁同步,大大提升数据治理效率。

  • IoTDB:时序数据库,云边端协同轻松构建时序数据集市

时序数据具备两大特点:在端、边、云都有处理,时序数据采集后不需要更新。传统时序处理方案中,在端、边、云采用不同的技术栈,异构的技术栈必将带来数据处理的复杂性。清华大学开发的时序数据库IoTDB(又称时序引擎),通过统一的时序数据文件格式TsFile,实现一份数据兼容全场景,一套引擎打通云边端、一套框架集成云边端。华为跟清华大学保持紧密的合作,最新发布的IoTDB集群版本,就是华为与清华主导开发的一个版本。

在上海、成都、重庆等城市均已采用IoTDB管理地铁监控数据,原本144辆列车需要9台服务器,现在仅需一个IoTDB实例即可满足要求,测点的采样时延也从原来的500ms降至200ms,日增4140亿数据点管理,大大提升资源利用率。

结语

目前,华为云FusionInsight MRS云原生数据湖携手800+生态伙伴,已服务于3000+政企客户,广泛应用于公用事业、金融、运营商、能源、医疗、制造、交通等行业。

点击关注,第一时间了解华为云新鲜技术~

解密华为云FusionInsight MRS新特性:一架构三湖的更多相关文章

  1. 华为云FusionInsight MRS:助力企业构建“一企一湖,一城一湖”

    摘要:华为云FusionInsight MRS新一代的数据湖,让大数据越用越快.越用越易.越用越稳.越用越省!让数据价值近在眼前! 10月30日,以"携手共赢·数创未来"为主题的第 ...

  2. 【技术干货】华为云FusionInsight MRS的自研超级调度器Superior Scheduler

    Superior Scheduler是一个专门为Hadoop YARN分布式资源管理系统设计的调度引擎,是针对企业客户融合资源池,多租户的业务诉求而设计的高性能企业级调度器. Superior Sch ...

  3. “3+3”看华为云FusionInsight如何引领“数据新基建”持续发展

    摘要:一个统一的现代化的数据基建需要三类架构来实践三种不同的应用场景. 近期,美国知名科技企业风投机构A16Z总结出一套通用的技术架构服务,分为以下三种场景. 一.数据基建架构全景 数据流向显示,左侧 ...

  4. 华为云FusionInsight湖仓一体解决方案的前世今生

    摘要:华为云发布新一代智能数据湖华为云FusionInsight时再次提到了湖仓一体理念,那我们就来看看湖仓一体的来世今生. 伴随5G.大数据.AI.IoT的飞速发展,数据呈现大规模.多样性的极速增长 ...

  5. SuperEdge 云边隧道新特性:从云端SSH运维边缘节点

    背景 在边缘集群的场景下边缘节点分布在不同的区域,且边缘节点和云端之间是单向网络,边缘节点可以访问云端节点,云端节点无法直接访问边缘节点,给边缘节点的运维带来很大不便,如果可以从云端SSH登录到边缘节 ...

  6. 【华为云】MRS journey node HDFS 不一致

    HDFS JournalNode数据不同步告警 恢复指导 1 停止有问题的 JN 实例 2 清楚无效数据 登录有问题JN的后台,使用omm用户操作以下命令: cd /srv/BigData/journ ...

  7. 华为云 MRS 基于 Apache Hudi 极致查询优化的探索实践

    背景 湖仓一体(LakeHouse)是一种新的开放式架构,它结合了数据湖和数据仓库的最佳元素,是当下大数据领域的重要发展方向. 华为云早在2020年就开始着手相关技术的预研,并落地在华为云 Fusio ...

  8. FusionInsight MRS:你的大数据“管家”

    摘要:4月24日-26日,HDC.Cloud2021在深圳大学城成功举办,华为云FusionInsight MRS云原生数据湖带来最懂行的大数据解决方案,为政企客户提供湖仓一体.云原生的大数据解决方案 ...

  9. HDFS 细粒度锁优化,FusionInsight MRS有妙招

    摘要:华为云FusionInsight MRS通过FGL对HDFS NameNode锁机制进行优化,有效提升了NameNode的读写吞吐量,从而能够支持更多数据,更多业务请求访问,从而更好的支撑政企客 ...

随机推荐

  1. frp实现内网穿透

    frp实现内网穿透 目标 通过外网访问内网设备,本文中实现通过手机的移动流量,可以访问到树莓派设备 设备准备 需要被访问的设备(本文中使用Raspberry Pi`).公网IP设备(本文中使用阿里云 ...

  2. NetCore的缓存使用详例

    关于我 作者博客|文章首发 缓存基础知识 缓存可以减少生成内容所需的工作,从而显著提高应用程序的性能和可伸缩性. 缓存最适用于不经常更改的 数据,生成 成本很高. 通过缓存,可以比从数据源返回的数据的 ...

  3. Android控件 之 TextClock & AnalogClock(模拟时钟)

    TextClock •简介 关于时间的文本显示,Android 提供了 DigitalClock 和 TextClock. DigitalClock是Android第1版本发布,功能很简单,只显示时间 ...

  4. [Fundamental of Power Electronics]-PART I-4.开关实现-0 序

    4 开关实现 在前面的章节中我们已经看到,可以使用晶体管,二极管来作为Buck,Boost和其他一些DC-DC变换器的开关元件.也许有人会想为什么会这样,以及通常如何实现半导体的开关.这些都是值得被提 ...

  5. OO 第一单元

    OO第一单元总结 前言 第一单元 OO 作业的主题是求导,从最简单的幂函数求导,到添加三角函数求导,再到最后添加嵌套规则.(对熬夜有了新体验,OO 作业比较适合晚上写,OO 博客也是一样 doge) ...

  6. Linux 网络工具中的瑞士军刀 - socat & netcat

    独立博客阅读:https://ryan4yin.space/posts/socat-netcat/ 文中的命令均在 macOS Big Sur 和 Opensuse Tumbleweed 上测试通过 ...

  7. C++实现控制台学生学籍管理系统

    操作流程 创建文件 创建管理类 ​ 管理类负责的内容如下: 提供与用户的沟通菜单界面 实现对职工增删改查的操作 数组数据与文件的读写交互 菜单功能实现 在StudentManager.h中定义Show ...

  8. GO-05-数据类型

    基本数据类型: 整型.浮点型 float32 float64.复数型(数学中的复数).布尔型.字符串.字符(byte.rune). 复合数据类型: 数组(array).切片(slice).映射(map ...

  9. TCP:与UDP区别、三次握手、四次挥手、Socket 编程

    1. TCP 基本认识 TCP 头部格式 为什么需要 TCP 协议?TCP 工作在哪一层? 什么是 TCP ? 什么是 TCP 连接? 如何唯一确定一个 TCP 连接呢? 有一个 IP 的服务器监听了 ...

  10. python 迭代器,生成器,表达式

    1.迭代器 (1)什么是迭代器: #迭代器即迭代的工具,那什么是迭代呢?#迭代是一个重复的过程,每次重复即一次迭代,并且每次迭代的结果都是下一次迭代的初始值 while True: #只是单纯地重复, ...