MaxCompute年度发布

本文涉及的产品
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介: 本次分享介绍了阿里云MaxCompute在过去一年中的企业级数仓新功能。MaxCompute自2009年诞生,现已服务阿里巴巴集团、蚂蚁集团及众多第三方客户,日处理千万级任务。新功能包括湖仓一体开放性、Data+AI结合、非结构化数据处理(如Object Table)、实时数据处理(如增量物化视图)、性能优化(如MCU2.0和智能调优)以及企业级安全合规能力(如同城容灾和数据脱敏)。这些改进提升了数据处理的效率、安全性和性价比。

本次分享是关于阿里云MaxCompute的在最近一年围绕企业级数仓的最新的功能发布。 MaxCompute诞生于2009年,是阿里云刚开始的最主要的核心产品之一。在2014年开始商业化面向三方客户提供服务,现在已经是1b级的企业级书商,每天大概是几千万的job,整个MaxCompute的阿里集团、蚂蚁集团,还有三方客户都在用MaxCompute。


现在的整个大数据有新趋势,第一个就是发现整个非结构化数据占所有数据的80%,另外是AI对于非结构化数据的处理提出新挑战。另外就是可能越来越关注安全合规,整个MaxCompute在过去一年围绕着湖仓一体开放性,还有DATA+AI,把数据处理和AI结合在一起。还有对于数据的实时性提出更高的要求,在进实时也做了很多的功能。


在性价比和安全稳定性也有新的功能发布,比如湖商一体开放性方面,第一能够更好的对接不同的数据源并开放数据源,另外是对非结构化数据,能够做到更好的管理,版本管理和数据血缘做更好的管理,整个数仓对于半结构化数据都有很好的经验处理和管理,对于非结构化数据做类似的处理,发布Object Table。根据数据的实时性,做进实时方面的 work,比如Data Table MV,查询加速,另外对于性能性价比,能够用现在的AI的技术能融合数仓,能够更好的提高性能,提高性价比做了一些功能发布,在企业级安全能力,可能是对于数据的合规,对脱敏也做了一些重要的功能发布。


目前的数据源越来越多,很多数据非结构化数据放到数据湖上面,也存在不同的数据库,和其他的一些数据源。比如Hologres和其他的一些不同的数据源,更容易对接数据源,能够用计算引擎做处理。另外整个阿里云计算平台推出open nake的模式,比如把湖上的数据能够用统一的用data dif foundation做管理,根据不同的需要用不同的计算引擎能做处理。


在这种情况下能够更好的对接数据,对接不同的数据源,提出 External Project,这个是非常类似 External Data base比较容易对接开源的三层模型,以前已经有External Schema对接两层模型的数据源,现在提供一个External project,可以mount一些scheme,mount不同的table,可以直接对数据比较方便应用的处理。在对接数据源以后,非结构化数据做管理和处理,用外部的External Table做外部数据源的对应到自己的数据数仓里面,做不同的做数据处理,做结构化的数据处理和和管理。


对于非结构化数据,最近发布一次邀测,Object Table 能够对接非结构化数据,能够类似结构化的数据进行版本管理和数据处理。用数仓的计算引擎能够比较高效的统一的管理结构化和非结构化数据,另外就是所有的数仓查询优化的能力都可以在非结构化数据上做类似的处理,比如过滤条件的档,到去减少数据读取的性能优化,另外消除数据倾斜的能力,都可以用类似的以前的能力能够对非结构化数据做类似的处理。还有用External用Objec Table结合External Project非常容易使用起来。


列举一个例子,可以看到数据可能是在OSS的Objec Table上面,内部类似开始的应该是一些卖特色的信息,能够很容易地利用MaxCompute的强大的UDF,比如可以用native的 code,用Java或者Python code,对非结构化数据进行各种不同的处理,这个例子是用来做PDF的一些 text的特征过滤提取,所以用UDF的模型能够对非结构化数据做比较好的处理。有对非结构化数据的对接能够处理。但是在MaxCompute的平台上能够做更好的 AI的处理,比如AI大数据对数据量是越来越大,能够对非结构化数据处理提供更好的支持。因为Data的一般是对Python接口会更熟悉,左边是用ObjectTable和ExternalProject对接数据源,发布MaxCompute,MaxCompute是分布式的python数据处理框架,内置的很多数据处理的算子,完全兼容不同的算子,所以以前做AI处理和本地处理的Pytho code可以无缝衔接,可以直接跑到MaxCompute,用MaxCompute做数据处理。另外因为做Data的模型和非结构化数据处理的时候,很多时候需要不同的三方包,所以提供自动化的排场包的打包上传的服务,这样就减少数据包的依赖的困难。另外对于比如通易的大模型,也能够提供AI仿品,直接在MaxCompute里面可以直接使用,可以比较方便的直接使用的大模型的能力。


开发是直接拍上的比较类似的 ID,用Python notebook做交互式开发。另外不管是做模型处理,还是做其他的非结构化数据处理的,很多时候需要有自己的依赖包,这样也提供自定义镜像的能力,把自定义的依赖镜像自动的直接跑到MaxCompute的 Python里面做 UDF的数据处理。所以把这些全部串起来,就可以看到能够做用macks function tablel构建Data+AI的一体化的pipeline,左边可以根据数据源,有结构化的MaxCompute的内部的内置的存储,有OSS上的非结构化数据,还有其他的在湖上的结构化数据和非半结构化数据,全部可以用 External Project对接数据源,用Object Table的推过去,把结构化、半结构化非结构化数据统一的对应到 MaxCompute里面,用类似于内置表的方式进行处理。


对于AI的数据处理,可以用Max room做分布式的Python的处理框架。内置里面有AIFuntion,比如通过Escobar或者直接用统一的 API的functio,可以直接内置AI Function做数据处理,开发是用notebook进行开发,底下有内置的镜像做疏通,镜像做数据处理,根据自己的选择自定义镜像,整个可以做Data+AI pipeline。在实际中有一个例子,比如现在数据是存在OSS上面,需要通过千万的 VR plus的模型进行图声纹的处理。可以看到左边是第一步是创建Object Table,指定OSS的location,比如每分钟预算其他有新增的数据的时候,自动的把 index能够自动的复印的Object Table里面,下面根据 Object Table可以直接读取数据,Data隐藏链实际上就是OSS上的非结构化弱数据。


第三包在下面如果需要数据的打包服务,比如依赖数据Python包,可以自动的通过引用式的方法自动打包上传,直接通过分布式的 Data Frame做Python的AI Function到所有的数据上面,下面就可以定义模型,这个模型是用来真正的做数据处理的,通过 AI Function的调用就可以对所有的OSS location上面的图片数据转成提取文本信息,比如识别汽车的信息。刚介绍整个Data+AI的 pipeline,另外的方面就是AI数据和推荐对于筛选的实时性需要很高。比如推荐模型,在同一个筛选里面的信息,下一个能够产生很多有用的信息做推荐。


所以在数据的实时性,MaxCompute也做很大的架构改进,整个进实时可能是依赖于Data Table,就是以去年发布ACE2.0的Table的形态,是可以做数据的ACE能够做upset进实时数据导入。在过去的一年做很多数据集成方面,比如把不同的数据源通过FlinkCDC、Flink和Data works数据集成的服务能够导入到MaxCompute里面,通过流式的或者基本实施方面的导入,数据导入后能够更快更有效的计算,最近发布正在进行的是增量MV能够做增量计算,根据最近导入的一批数据能够快速的计算到下一个Table里面。所以在数据分层的时候,比如从ODS DWD和DWS的数据分成,能够很快的用增量计算,快速的在分钟级能够把数据计算到最终的 summary数据上面去。除了数据的时效性方面,在产品加速方面发布MCU2.0,这样能够提供强隔离的环境,能够做更好的性能加速全链路的 KH,内存水方面的性能加速。


所以这边是一个增量物化视图,可以看到左边是很容易的用FlinkCDC或者Flink把数据导入到的MaxCompute里面,可以定义两个增量的MV做自动的计算,只需要声明一下,右下角可以看到两个实例,就是定义两个增量物化视图,之后可以定义freshness,比如每隔5分钟或者每隔1分钟refresh增量物物化视图,这样能够做整个Pipeline的自动计算,这样数据自动导入到原始表以后,它会自动的计算到数据应用层,所以能够增加数据的时效性,能够以非选择的处理增量数据,这样能够达到比较好的性价比。


除了数据的时效性以外,也发布产品加速 MaxCompute MCQA2.0,整个链路做不同的优化。第一提供watch one house的资源隔离的方式,能够做到更好的资源隔离保证性能。比如性能方面,不管管控链路的优化,Catch方面的优化,在执行优化方面,根据执行计划的生成上面,面向做不同的执行计划,cost model的改进提高,这样能够把整个的执行计划做得更快。右边是整个的初步的性能测试,对比以前的MaxCompute1.0,大概提高一倍的速度。


前面讲到就是能够更好的服务AI的数据处理,同时可以看到AI能够把数仓做更好的优化。最近一直在做智能数仓的方向性的探讨,主要做Intelligent Tuning,比如根据执行计划 执行结果,中间收集各种不同的统计信息,根据Runtime的统计信息,不管是memory、CPU,还有数据里面信息或者是wrong time的信息,能够通过离线的bug同时real time的Facebook能够把这些信息及时的反馈到优化器里面,根据上一次执行的结果,或者其他执行的数据的统计信息,能够做到更好的优化,能够在执行计划方面做优化,能够在资源申请方面自动的资源分配方面做一些不同的优化,能够提高整个计算的性价比。


在优化方面的,比如经常看到join一般是整个数据处理的最复杂的一步,根据这些统计信息,如果能够做算法的自动选择,比如左边根据这种,如果能够选择用还是join,一般是能够极大的提高数据处理的效能的。另外就是根据两边数据不同,如果有读一些表的时候,已经拿到信息,可以普及到另外一端能够更好的数据。根据历史数据或者说正在处理的不同stage,或者其他stage的信息,都能够做更好的性能优化。在并发度的auto tune里面,根据的实时的收集到的上一个stage,数据的数据量能够做并发度的透明,能够做到更好的资源利用率。另外就是收集到的统计信息,历史数据,能够减通过计算的复用减少资源的使用。


最近发布智能物化视图推荐,做数据处理的时候,可以根据推荐出来的物化视图,可以选择物化视图保存,基本上就是用size到 computer resource。根据整个work load,比如整个project和work space里面所有执行情况做一些分析,看里面所有的job里面有哪些是通用的计算,这些通用的计算是否可以存储起来,这些计算结果可以直接复用在不同的查询上面。比如重复性的,每天可能是处理的是不同的数据分区的数据,有一些中间数据也都能够做缓存和利用,这个是在物化视图和整个阿里集团做出和内部的数据治理拿到的结果,可以每天节省大概是38,000多个扩的计算资源,整体性能提升是有10%,现在整个物化视图的推荐可以在突破上面,可以直接看到对于整个的工作空间里面的物化视图,发现有一些重复的计算,把这些重复计算的物化视能够推荐出来,cost直接显示存储雾化视图大的存储空间,节省计算能够比较直观的做推荐和选择。


聊到非结构化数据在AI非结构化数据的处理,数据的时效性,根据最近的一些数据如何能够尽快的做处理,现在对数据的合规性安全性也要求大家也越来越高,整个MaxCompute的企业级能力一直在被蚂蚁集团使用,所以对企业级的安全容灾能力都有很大的工作,最近发布到公共云上面,对三方客户提供同城容灾,可以在同城不同的ac之间做容灾,可以跨region复制数据做容灾。这样在同城不光只是数据可以做容灾,也可以在计算做容灾,这样能够达到半个小时以内,服务能够保证即使是一个ac全当掉,半个小时也能马上恢复。


跨越region是能保持小世界的数据,能够同时同步到其他的region,这样能保证tegion当掉,数据还是可以直接恢复的。另外就是大家对数据的合规性提出很多要求,比如finance的数据可能不希望其他的团队的数据开发人员看到,对于很多数据一些表里面的不同的链,可能要提供不同的脱敏,针对不同的人群提供不同的脱敏的方法,最近发布底层数据脱敏,底层数据脱敏是直接在数据被从存储读出来的时候进行脱敏,在计算的时候,这些数据也已经是脱敏过以后的数据。


另外就是对于不同的人群,不同的脱敏策略,可以非常容易的定义策略,把策略派到不同的用户组上面,这样不同的用户看到的数据是针对不同的链都可以进行不同的脱敏,脱敏的policy有偏移 替换、散列 数据水印不同的脱敏的策略,用户可以根据提供的类似的策略,自己可以做组合定义。整个容灾合规访问控制、认证授权整个的企业级安全能力是能够提供整个金融及行业的要合规要求的。


现在不管是三方有金融客户,内部的蚂蚁集团也都是用的是MaxCompute MCQA2.0做很多的数据处理。底下看到有数据加密 数据脱敏,数据传输的加密,就生命周期管理,整个有数据完整性的校验,能够提供多副本的容灾,备份的一些恢复,也有比较合规的数据共享,从不同的团队能够数据共享到其他团队,也能够从不同的用户之间也能够做比较安全的合规的数据共享。所有的操作都有日志审计,可以提供整个审计信息,对于合规要求的审计要求,也都实时的能够根据SCALL码能够获取信息。过去一年是围绕非结构化数据的处理,帮助AI做数据处理,AI应用到Python里面,根据非结构化数据能够做到更开放,各种不同的数据源能够对接到MaxCompute里面来。另外就是根据数据的时效性和近实时,能够把数据做得更实效的能够导入到数仓里面,能够更以危险的处理。另外对于一些交互式的查询加速,能够做到更好的内存c。另外在整个性价比和数据安全合规持续的加强,能够满足各个不同的安全合规的要求。

相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
7月前
|
机器学习/深度学习 分布式计算 DataWorks
MaxCompute产品使用问题之如何将DataWorks中的Hologres表数据导入到MaxCompute
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
7月前
|
SQL 分布式计算 DataWorks
MaxCompute的项目
MaxCompute的项目
43 1
|
7月前
|
存储 分布式计算 DataWorks
MaxCompute产品使用问题之dataworks仅支持maxcompute上面的数据治理吗
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
7月前
|
分布式计算 大数据 Java
MaxCompute产品使用问题之如何实现每五分钟同步到MaxCompute
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
8月前
|
分布式计算 DataWorks 关系型数据库
DataWorks产品使用合集之在DataWorks中,MaxCompute创建外部表,MaxCompute和DataWorks的数据一直保持一致如何解决
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
68 0
DataWorks产品使用合集之在DataWorks中,MaxCompute创建外部表,MaxCompute和DataWorks的数据一直保持一致如何解决
|
8月前
|
SQL 分布式计算 DataWorks
MaxCompute产品使用合集之该怎么创建MaxCompute的项目
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
8月前
|
分布式计算 DataWorks 关系型数据库
MaxCompute产品使用合集之DataWorks中管理MaxCompute模块的步骤是什么
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
8月前
|
JSON 分布式计算 DataWorks
MaxCompute产品使用合集之 DataWorks 中可以基于 MaxCompute 数据源生成 API吗
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
存储 SQL 分布式计算
阿里云 MaxCompute
阿里云 MaxCompute自制脑图, MaxCompute 是一种全新的大数据计算服务。它能提供快速完全托管的 PB 级仓库解决方案,让你不用花费大量成本建数据中心,就能分析处理高达 PB 级的海量数据。
991 0
阿里云 MaxCompute
|
分布式计算 监控 DataWorks
MaxCompute/DataWorks 数据集成与开发实践
摘要:在2017杭州云栖大会阿里云数加DataWorks专场上,阿里云产品专家代俊峰(花名:普阳)为大家分享了如何借助阿里云数加DataWorks工具进行数据集成和开发,分享了如何借助DataWorks实现从数据处理手工作坊到数据加工工厂的跨越转变。
8472 0