关于最佳实践:MaxCompute-物化视图智能推荐最佳实践

5次阅读

共计 2524 个字符,预计需要花费 7 分钟才能阅读完成。

什么是物化视图

MaxCompute 物化视图是一种事后计算和存储后果数据的数据对象,也能够称之为“实体化视图”。物化视图能够作为一张虚构表存在于 MaxCompute 我的项目中,它的内容是一个或多个表的聚合,过滤以及 Join 组合计算结果。物化视图能够大幅度缩小查询处理工夫以及节俭作业计算资源,基于 MaxCompute 优化器弱小的主动查问改写能力,当作业能够复用物化视图后果时,优化器主动把一些简单的操作替换成读取物化视图操作,从而晋升作业执行速度、节俭作业计算资源。

什么是物化视图智能举荐

物化视图的应用,岂但须要对物化视图的工作原理比拟理解,同时须要理解业务数据行为与业务数据的应用场景,给普通用户应用物化视图带来肯定艰难。

MaxCompute 物化视图智能举荐实现了用户无感知的流程化应用物化视图能力。用户开启物化视图智能举荐后,MaxCompute 能够为用户主动剖析业务数据应用场景,主动举荐物化视图,并且能够可视化展示物化视图的应用成果。为物化视图应用大大降低了门槛,同时也带来更多的物化视图应用场景。

物化视图智能举荐的特点

  • 简略易用,用户不须要理解物化视图各个底层工作细节,只需抉择本人的 Project 开启主动智能剖析。
  • 智能,MaxCompute 主动对用户历史作业进行剖析,自动识别周期性作业,并智能提取作业汇合中的公共计算逻辑作为物化视图计算逻辑,并最终转换成用户敌对的 SQL 文本模式,依照举荐水平排序展现给用户。
  • 便于管理,MaxCompute 控制台提供一站式的性能开明、物化视图治理以及物化视图应用成果展现。

物化视图智能举荐的应用场景

数据治理

随着企业业务倒退,公司的业务数据会越来越多,各部门对数据都存在各种数据分析需要,在日常应用过程中,各个部门对数据的应用会存在肯定的穿插应用,难免会有大量的雷同逻辑的反复计算。

日常用户或者大数据平台管理人员很难发现反复计算,因为反复计算局部可能只是整个计算逻辑中一部分。在发现有反复计算时想批改也比拟艰难,如果从新形象一个反复计算的表,上游的依赖作业都须要更改,而后测试上线。会带来额定的工作量,从而导致数据治理很难推动。

应用物化视图智能举荐性能后,MaxCompute 会主动剖析 Project 中存在哪些公共的计算逻辑,并且举荐进去,让用户去创立物化视图,有了物化视图后,通过弱小的优化器改写能力,可能让作业主动利用上物化视图的计算结果,不须要用户批改原来的逻辑。

示例,在没有物化视图,如下图,Tab4 跟 Tab5 的计算中存在棱形跟圆形局部逻辑是反复计算的,在下图中计算了两遍。

创立物化视图 MV1 后,菱形跟圆形局部逻辑只计算了一遍,能够节俭计算资源的同时进步计算速度。

智能数据建模

传统大数据处理,第一步就是既懂技术又懂业务的数据分析专家搭建数据仓库,对数据仓库进行分层,失常模型都分贴源层,明细层,汇总层,应用层等;传统建模形式有以下弊病:

1)模型建的好坏,间接影响到计算的有效性,重大依赖建模的专家;

2)同时随着业务倒退,数据越来越多后,不免有模型建的不是很适合的状况,如果再改模型对整个现有工作都有影响;

3)资源节约,局部模型建好后,然而应用的人很少或者没有应用,导致整个模型白白浪费计算资源和存储资源。

有了物化视图智能举荐后,用户不须要依赖专家来事后建模。能够做到智能的自动化建模。当用户应用数据后,后端主动剖析,剖析出反复计算逻辑,MaxCompute 主动举荐创立物化视图,实现真正的灵便,快捷的自动化建模。让用户不必放心数据存储状况,计算资源应用效率等问题;用户能够把更多精力放在业务倒退上。特地对中小型公司来说,不须要额定要招聘数据建模同学,全副交给 MaxCompute 物化视图智能举荐即可。

数据报表 / 看板

物化视图智能举荐也能够为用户的 BI 智能报表 / 看板提供减速能力。MaxCompute 会为用户主动剖析反复刷新的数据,举荐创立物化视图,有了物化视图后能够事后计算好报表 / 看板须要的数据,在报表 / 看板须要用的时候间接会主动改写路由去查物化视图,能够大大降低报表 / 看板的响应工夫。

如何应用物化视图智能举荐

物化视图智能举荐应用非常简单,只需以下几个步骤:

1. 登录 MaxCompute 控制台,点击右边菜单“物化视图”;

2. 抉择 Tab 页“设置”,开启智能剖析,并且增加须要剖析的项目名称;

3.T+ 1 天后,查看 Tab 页“物化视图举荐”,查看零碎依据用户应用行为,举荐进去的公共子查问;

4. 抉择对应的子查问创立物化视图;

5.T+ 1 天后,查看 Tab 页“物化视图治理”,能够看到目前哪些查问计算调用了该物化视图以及调用物化视图前后成果比照。

物化视图智能举荐示例

阿里团体数据中台团队负责建设整个阿里的数仓“公共层”,试图将反复计算的逻辑进行收敛,让多个上游业务拜访同一个后果表,从而达到节俭计算和存储的目标。随着数据量和业务复杂度的几何增长,传统的“公共层”曾经很难达到本来构想的状态,次要起因有:

  • 找数难
  • 逻辑存在相似性然而后果表不齐全可用
  • 人工发现公共逻辑难度大

MaxCompute 推出的物化视图智能举荐性能,恰好能很好的解决上述问题。数据中台团队通过将 MaxCompute 智能举荐后果转变为物化视图,大大降低了上游作业之间的反复计算,节俭了大量计算资源。

一期物化视图智能举荐性能笼罩了 4 个 BU 共 20 个 project,命中物化视图的作业,其均匀计算资源节俭率为 14%。后续咱们会有更加具体的理论应用案例来开展介绍。

物化视图智能举荐应用阐明

物化视图并不能解决所有问题,在绝大部分状况下,总体上看都是能够为用户带来正向收益,包含能够缩小计算资源,进步计算速度,并升高计算成本。然而针对某个查问计算,在小概率下会给用户带来负收益,用户须要关注以下几点:

1. 公共子查问被物化成物化视图后的数据是否产生数据收缩,如果产生几倍或者更高的收缩时,不倡议应用物化视图。

2. 应用后付费的用户,须要留神目前物化视图节俭的是计算资源和计算复杂度,但并不一定会缩小数据扫描量,因为在数据物化过程中如果产生数据收缩后,可能扫描量会减少。

作者 夏俊伟 阿里云高级产品专家 / 郑君正 阿里云高级技术专家

原文链接

本文为阿里云原创内容,未经容许不得转载。

正文完
 0