简介:主要讲述阿里云数据湖分析DLA 2020年的进展~

一、概述

2020年黑天鹅事件不断出现,疫情给人们的生活也带来了改变。在后疫情时代,伴随着云原生技术的发展,企业寻求更加敏捷、更加灵活的数据分析方案,数据湖刚好满足这核心诉求。有不少同学问笔者,Hadoop与数据湖有啥区别?笔者认为,其一:数据湖分析支持的数据格式包括非结构化与半结构化。虽然HDFS可以存图片,但是一般还是有视频&图片的专门的服务器的,原因存储计算不分离情况下,大数据硬件存图片不经济; 其二:数据湖往往跟云结合更加紧密,因为存储计算分离以后,存储与计算可以单独发展。计算可以跟业务系统错峰调度,再结合不同公司计算任务的差异,可以增强弹性能力。其三:数据湖的技术与数据仓库进一步融合,如Hudi支持数据实时写入、事务与更新。

阿里云云原生数据湖分析DLA,在这样的背景下诞生,历经两年的发展,充分结合 云、Presto、Spark、Hudi等优势,构建出了新一代的大数据方案。目前DLA已经服务了数千客户,不少公司的核心数仓也是基于DLA;DLA也集成在友盟、CDN、DBS(数据库备份)、IOT、QuickBI等产品中,间接服务了数万客户;

我们也重视开源与商业合作,目前,DLA是Apache PrestoDB基金会的代表;与Alluxio达成战略合作,共同构建缓存系统;团队有数位Apache的Committer,一起参与贡献开源社区。

本文主要概述讲述下 阿里云云原生数据湖分析(简称DLA)为了应变分析之大变局,在2020年主要实现的一些事情。数据湖分析DLA官网链接:https://www.aliyun.com/product/datalakeanalytics

云原生数据湖分析的基本架构如下:

DLA分为DLA Meta、DLA Lakehouse、DLA Presto、DLA Spark 四大模块。在20年我们重写了元数据模块,增加了元数据与数据源之间的同步模块,针对OSS可以发现元数据,简化用户的配置管理;在数据管理Lakehouse方向上支持了RDS MySQL实时同步到Hudi,目前正在产品化中;新增了DLA Serverless Spark模块,支持按照Job计费,重写了接入层,实现了多租户的UI,并且针对OSS做Rename等内核性能优化;DLA Presto改进了扫描版的稳定性,增强内核性能,实现了CU版本的产品形态,并且保持扫描量版本与CU版本统一架构。接下来分模块讲述:

二、DLA Meta

对比开源的Hive元数据,DLA Meta是兼容Hive meta的,支持云上15+种数据数据源(OSS、HDFS、DB、DW)的统一视图,引入多租户、元数据发现等能力。DLA Meta追求边际成本为0,免费提供使用的。

  • 企业级权限管理:支持多账号的权限与隔离,可以简单的GRANT&REVOKE对子账号赋予权限,Meta会托管OSS与DB赋予的权限,DLA Presto与DLA Spark通过内部的API拿到相应的权限,访问OSS与DB数据库;
  • 开放访问:通过OpenAPI可以直接拿到Meta的信息,客户自建的Spark集群也可以使用DLA Meta;
  • 扩展性强:MetaServer是无状态的服务,可以扩展多个集群;在元数据存储采取的是多库存储,可以无限扩展;
  • 元数据发现:支持OSS 数仓模式发现,SLS投递到OSS数据发现,OTS元数据自动同步。支持客户一键发现元数据,这些元数据也会自动维护。 典型的场景是:用户的APP可以不断往OSS写新的Partition,元数据发现服务会自动同步Partition。

三、DLA Lakehouse

数据湖有着巨大的低成本、扩展性的优势。但是在数据组织与维护方面,天然比数仓有着不足。不少客户通过代码维护一套数仓体系:基本流程为准备数据,再通过Spark&Hive清洗,构建离线的数据仓库。 DLA目前在基于Apache Hudi实现DLA Lakehouse,主要目标是提供高效的湖仓,基本的架构图如下图所示:

此模块已经有不少客户使用,目前还缺乏产品化,是以方案提供。在接入层已经支持RDS MySQL通过DTS实时写数据到Lakehouse中,接入层全量&增量模块均是直接调用DLA Serverless Spark服务。

  • 实时写入:支持 MySQL数据延期10分钟直接写入到OSS的,写入后,可以支持DLA Serverless Presto与DLA Serverless Spark访问。
  • 自动合并小文件:支持小文件的自动合并,接入层对接的是DLA Serverless Spark服务,目前也正在研发弹性的Compaction机制。
  • 支持多库多表:相对于社区支持单库单表,我们可以一次性把RDS MySQL实例内所有的库与表实时同步到OSS上,并一条链路支持超过5000+张表的同步;

目前Lakehouse发展比较快,内核模块Hudi我们也在跟社区保持紧密的合作,DLA也在加紧产品化中,提供在产品界面点按钮就可以使用的体验,并且不断优化数据源到链路到格式的性能;

四、DLA Serverless Presto

DLA Serverless Presto是基于Apache PrestoDB的研发的,主要是做联邦交互式查询与轻量级ETL,2020年改造后架构如下:

  • 提供独享集群:在扫描量情况下,客户不好评估成本,需要财务固定成本;一些如Cache、访问Hive、UDF等在扫描量无法实现;DLA推出了Presto独享集群版本。独享版本的资源是独享的,财务成本基本固定的(独享集群也可以按时弹性),比较适合大客户使用。扫描量版本比较实现查询频率比较低的客户使用。在独享集群版本中,我们核心提供了 如下能力:

    • DataCache:与Alluxio合作共同推出了DLA Presto的DataCache,具体机制参考:https://developer.aliyun.com/article/781291,在IO密集类型中,查询性能可最高提升10倍;
    • 分时弹性:扫描量是按照Query计费的,在独享集群下,也是可以弹性的。分时弹性就是用户可以设置时间段来付费;
    • 特有的数据源:如支持Hive等数据源等、Cassandra等数据源;
    • 更快的性能提升:目前也在实现如Query Result Cache、Fragment Result cache、针对性算子下沉;
  • 支持更多的连接器:过去一年我们新增支持了Hive、HDFS、KUDU、OTS ParallelScan、Cassandra、ElasticSearch、ADB PG、Oracle、Druid等;
  • 稳定性改进:接入层打通底层ACK弹性调度、DLA网络管控、SLB管控等链路,实现被动宕机时从之前3分钟到3秒内快速恢复,主动业务发布时只中断1次连接、并在1s左右迅速实现连接切换等能力; Multi-Master实现Coordinator和Worker的优雅关闭,关闭时会等待所有SQL执行完,同时又不接受新SQL,使得我们在升级的时候从之前的用户SQL全挂,到现在用户的SQL可以不被影响,做到客户无感升级;算力租户隔离可以实时控制每个用户的算力,算力过度使用时会实时惩罚的机制,解决了大SQL会导致整个集群过载的问题;
  • 易用性SQL诊断界面,我们也在不断改进,也是接下来的重点改进方向。

未来,我们将充分与社区结合互补,不断提升性能,支持更多的功能,提供更加方便的诊断工具,做到云上的第一的联邦交互式查询引擎;

五、DLA Serverless Spark

Spark是最流行的大数据计算引擎,DLA支持Spark主要是为在湖上做大规模的ETL,并支持流计算、机器学习;比传统自建Spark有着300%的性价比提升,从ECS自建Spark或者Hive批处理迁移到DLA Spark可以节约50%的成本;DLA Spark架构如下图所示:

  • 完全支持开源的Spark语法,独享的运行环境:DLA Serverless Spark完全兼容开源的Spark语法,支持Python专享的运行环境,支持开源的算法框架;
  • 弹性,每Job每计费:传统的Spark都需要用户事先购买好集群,DLA支持无需购买任何的计算资源即可开箱使用Spark,兼容开源Spark所有的语法;
  • 重写Serverless Spark接入层,保障Job的稳定性:对比Livy接入层,Livy存在较多的稳定性问题,比如:不能互相扩展,有单点问题,无法在DLA多租户环境应用;为此,DLA Spark组完全重写了Spark的接入层,力求保障长job的稳定性,深度结合云原生的环境。
  • 实现多租户的UI服务:DLA Serverless Spark运行完成后,其UI数据会存放在用户OSS空间,DLA提供多租户SparkUI服务,开源查询正在运行中及运行完成的Spark信息,此服务完全免费
  • 多数据源,针对OSS数据源优化: 目前DLA Serverless Spark支持对接Kafka、LogHub等数据源,直接对接HDFS、HBase、OTS、PolarDB、ADB等几乎所有的数据源的分析与回写。并针对OSS数据源支持MetaCache与Rename等优化,在小文件较多的情况,比开源版本提升50%的性能。

目前DLA Serverless Spark一直追求更加弹性的服务,跟开源使用体验尽量一致,接入层的服务会更加稳定性,PS:得益于先进的云原生架构,目前UI服务与接入层服务是免费的。用户只需要为实际的资源消耗付费。

六、数据平台的演进

DLA致力于帮助客户构建低成本、简单易用、弹性的数据平台比传统Hadoop至少节约50%的成本。具体到大数据架构,业内大数据架构有Lambda、Kappa等,目前在大公司应用基本是混合体,大数据与业务是比较强相关,随着公司规模大小不一,适用的场景不近相同,且又随着业务的发展需要不同的大数据的架构,目前还不存在包打天下的银弹(不过每个组件都想扩展场景,替换其它组件的地盘),如果规模不小的公司只有一个肯定会有损耗或者不是最佳的方案架构。一般随着公司规模发展,有如下趋势(此图挑选业内比较流行的组件):

方案四,摊开细节一点如下,在结合阿里云OLAP团队的组件:

上图中分为七块,也是目前业内主流的数据处理模式:

  • 数据源:一般是数据产生的系统,比如事务性的数据会直接存入MySQL,物联网一般直接写入到HBase/Lindorm系统之中;
  • 实时数据处理:可以直接对接数据源,如DB CDC或者Kafka,经过流ETL后,写入到数据仓库或者数据湖之中;
  • 离线数据湖:存离线的数据,比如CSV\JSON上传的数据,或者离线数仓的数据;
  • 专题数据仓库:针对高并发的场景加速,一般为业务团队直接持有;
  • 联邦交互式分析:可以跨数据源查询,包括数据仓库、数据湖、数据库的数据;
  • 数据应用:是数据的应用,如BI、营销系统等。
  • 数据开发平台:如计算引擎的调度,数据血缘等;

特别注明的是,Lakehouse(Hudi)会把实时数据与离线数据湖结合起来,并且会融合部分数据仓库的能力。在实际的实践中,Lakehouse也是作为数据湖的一部分,解决数据高效入湖,且支持高效分析。

七、鸣谢与展望2021年

DLA感谢广大客户的信任,目前已经服务数千客户。在2021年,DLA会聚焦在数据湖场景下,从DLA Meta、DLA Lakehouse、DLA Serverless Spark、DLA Serverless Presto方向发力,提供更加实惠,稳定性,弹性,高性能的数据湖服务。DLA Lakehouse会不断优化支持Kafka、Loghub、DB CDC的实时入湖;DLA Presto主打通用格式的交互式查询,会在多数据源算子下沉,Cache等方向发力;DLA Spark会完全兼容开源Spark的语法与体验,并且在弹性层面不断突破。

原文链接:https://developer.aliyun.com/article/782655?

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

云原生数据湖分析DLA 2020年年度总结相关推荐

  1. 如何用好云原生数据湖?

    简介:数据湖可以很好地帮助企业应对当前数据场景越来越多.数据结构越来越复杂.数据处理需求越来越多样化的问题.阿里云从2018年起就开始布局数据湖,推出了云原生数据湖分析Data Lake Analyt ...

  2. 极客星球 | 阿里:云原生数据湖构建与分析实践

    编者按:6月24日[Coder Park]第一季架构篇之大数据平台架构分享线上直播活动圆满结束.本期特邀MobTech袤博科技合伙人.首席数据官杨冠军担当出品人,阿里巴巴计算平台事业部大数据平台技术专 ...

  3. 云原生数据湖为什么要选择腾讯云大数据DLC,一份性能分析报告告诉你!

    摘要 日前,腾讯云大数据数据湖计算 DLC 与国内两家知名云厂商的数据湖产品进行了性能对比,其中腾讯云 DLC 在三款产品中SQL平均执行查询时间短,性能表现优.腾讯云大数据 DLC 在存算分离和大数 ...

  4. 的数据湖_一文读懂云原生数据湖体系

    导读:如何基于阿里云 OSS .JindoFS 和数据湖构建(Data Lake Formation,DLF)等基础服务,同时结合阿里云上丰富的计算引擎,打造一个全新云原生数据湖体系? 作者 | 吴威 ...

  5. 深度 | 面向云原生数据湖的元数据管理技术解析

    简介: 作者:沐远.明惠 背景 数据湖当前在国内外是比较热的方案,MarketsandMarkets市场调研显示预计数据湖市场规模在2024年会从2019年的79亿美金增长到201亿美金.一些企业已经 ...

  6. 一文读懂云原生数据湖体系

    凌云时刻 · 极鲜速递 导读:如何基于阿里云 OSS .JindoFS 和数据湖构建(Data Lake Formation,DLF)等基础服务,同时结合阿里云上丰富的计算引擎,打造一个全新云原生数据 ...

  7. 架构师必备:云原生数据湖体系

    背景 " 数据湖 "正在被越来越多人提起,尽管定义并不统一,但企业们都已纷纷下水实践,无论是AWS还是阿里云.华为.我们认为:数据湖是大数据和AI时代融合存储和计算的全新体系. 为 ...

  8. StarLake:汇量科技云原生数据湖的探索和实践

    简介: 快速了解汇量科技在云原生数据湖领域的探索和实践,详解 StarLake 的架构及业务应用案例. 作者:陈绪(汇量科技资深算法架构师,EnginePlus 2.0 产品负责人) 内容框架: 互联 ...

  9. 云原生数据湖以存储、计算、数据管理等能力通过信通院评测认证

    又一项大能力-云原生数据湖获得信通院认证啦! 近日,中国信息通信研究院 (以下简称"信通院") 正式公布了第十四批"大数据产品能力评测"结果,腾讯云云原生数据湖 ...

最新文章

  1. CYQ.Data 轻量数据层之路 使用篇五曲 MProc 存储过程与SQL(十六)
  2. OpenCV图像仿射变换
  3. SQL Server数据库锁的类型、用法及注意事项详解
  4. LeetCode 783二叉搜索树节点最小距离-简单
  5. 日常问题——Mac下新建目录报Read-only file system
  6. php mui.picker,www MUI框架里边有很多例子教你如何使用 开发手机界面 WEB(ASP,PHP,...) 251万源代码下载- www.pudn.com...
  7. MySQL5.7默认打开ONLY_FULL_GROUP_BY模式问题与解决方案
  8. 我想自学C++,可以吗?需要注意些什么呢?
  9. MUI框架开发HTML5手机APP(一)--搭建第一个手机APP(转)
  10. mysql对应systables_mysql5.7中的sys表详解(转)
  11. qtreewidgetitem 选中背景颜色_列表式报表阶梯背景色效果
  12. rust腐蚀机场蓝卡_rust怎么弄蓝卡和红卡
  13. java restsharp_RestSharp 一个.NET(C#)的HTTP辅助类组件
  14. 手机不能上网原因分析及检测手段
  15. 一位阿里P9的年薪和家庭资产
  16. 第20节 核心交换机配置热备份详解及实验演示—基于Cisco Packet Tracer
  17. 2018美团点评校招-K的倍数
  18. 一周一个小朋友系列——YOLOV1 paper Analysis
  19. Google提出的以用户为中心的度量体系“HEART框架
  20. AQ规则学习算法原理和Java实现

热门文章

  1. 清华本硕男,月入5W征婚引群嘲“普通却自信”!本人回应了……
  2. 深度对比Python的3种“字符串格式化”方法,看看你喜欢哪一种?
  3. 美团算法专家:入门机器学习,比你想的要简单
  4. java 8 string_java8、jdk8日期转化成字符串
  5. 电脑打字手指正确姿势_正确的投篮姿势教学,许多人都忽略的细节,学会变投篮神射手...
  6. dell驱动安装工具_技术丨如何快速安装显卡驱动
  7. aspnet还有人用吗_别盲目跟风!理性分析:超火的小香风外套真的适合你吗?
  8. 查看linux机器性能,Unix Linux 查看机器性能
  9. mysql生成uui mybatis_mybatis----基础
  10. SpringCloud-Eureka