Dataphin的代码自动化能力如何助力商业决策
前言
随着大数据趋势的迅速增长,数据的重要性与日俱增,企业内看数据、用数据的诉求越来越强烈,其中最常见的就是各种经营报表数据:
老板每日早晨9点准时需要看到企业核心的经营数据,以便进行企业战略及方向决策
业务负责人不定期进行个性化的项目筹划,需要多维、及时的效果数据以优化项目安排
小二精准营销活动开展,需要和高层一致但粒度不同的经营分析数据,并进行活动策略调整
……
举个经营报表的例子如下:
这个例子并不复杂,但是对于分析师或者业务开发者,实际执行的复杂度和工作量并不小,而且类似的工作每日都在重复……业务发展越快,带来的问题就越来越多:
- 加工时间长、人工成本高,招再多的分析师也难以满足需求;
- 代码可读性差,数据可维护性差,类似需求需要反复、重复开发;
- 代码开发不规范,加工过程中难以避免的计算存储浪费;
- 得到的数据指标,复用性差导致重复建设,数据越来越不标准规范;
- 这种情况下对业务的直接影响就是:决策周期长(数据需求满足慢),决策易出错(数据指标口径不一致)
Dataphin:让“指标计算器”代替“代码编辑器”
既要保证数据生产时效性——及时产出数据并满足需求,又要支持数据多样性——企业自下而上不同业务分析场景,最后还要保证数据准确性——任何时间、不同岗位的人都能用同样的数据解读经营情况,怎么才能做到呢?
企业的发展加速,离不开20世纪的文档管理转到21世纪的信息管理。同样的,如果繁复的指标代码编写工作,也可以如计算器一般,界面可视化点选,复杂的代码研发过程由计算器自行处理完成,就好了。
而Dataphin基于One Data - One Model能力,就可以充分实现这个能力!
Step 1 选择组合条件
如下图,确定需要统计计算的值,Dataphin里称为“原子指标”——最小的数据值统计单元,比如用户数这样的统计值等,然后组合如下内容:
A. 统计计算值需要应用的分析对象,Dataphin里称为“统计粒度”——维度或维度的组合,比如用户星级、用户状态等;
B. 数据统计计算的时间周期,Dataphin里称为“统计周期”——统计数据需要跨越的时间长度,比如最近1天、最近30天、自然周、自然月的等;
C. 数据统计的其他个性化限定条件,Dataphin里称为“业务限定”——数据记录的筛选过滤条件,比如生鲜业务类型、PC端、女性等。
Step 2 预览指标
选择完毕组合条件后,可以预览组合出来的派生指标:
1)组合的指标,默认名取“原子指标+时间周期+业务限定”组合名,保证命名标准规范。
2)历史已生成的组合,不再生成,保证指标建设统一,无重复
Step 3 一键自动化生成!
确认需要提交的指标后,一键【提交】,分钟级指标生成:
1)自动汇聚至以“统计粒度为主题”的汇总逻辑表表下,保证管理标准规范;
2)代码和调度依赖关系,系统自动生成;
3)派生指标基于汇总逻辑表,可快速雪花模型查询使用指标、分析对象的属性信息。
①派生指标自动汇聚至汇总逻辑表
②派生指标所在汇总表节点,代码及调度关系自动生成
③汇总表及派生指标可查询消费
Step 4 复杂需求实现
上面主要是基于简单统计指标实现,实际上,报表需求还有类似 比率型、乘积型等复合统计方式,比如“客单价=销售额/客户数”,这类也可以通过Dataphin的衍生原子指标实现:
1)衍生原子指标是基于原子指标的再组合;
2)基于衍生原子指标新建派生指标时,需要保证拆解到最细粒度的原子指标,有相同的分析维度、时间周期,允许维度的计算路径不同、设置的业务限定不同。
①新建衍生原子指标
②基于衍生原子指标新建派生指标
Dataphin:“指标计算器”背后的故事
上面步骤可以看到,派生指标的计算生成,离不开原子指标、业务限定、统计粒度的协助,这其中有什么奥秘呢?
其实很简单,用Dataphin高效创建派生指标,掌握这1张图就够了:
1)原子指标为核心,原子指标的来源表为中心
2)统计粒度取自来源表的关联维度,以及关联维度上的关联维度
3)业务限定基于来源表为中心的雪花模型做定义
4)统计周期可任意搭配使用
总结:One Model,One Dream
Dataphin作为阿里巴巴数据中台原创产品,从设计之初就决心为业务价值而生!
其中的智能研发版以One Data - One Model的方法论为指导,致力于统一的数据构建与管理:
指标【标准化】,保证数据研发的【一致性与效率】
【拖拽式】数据模型设计+【自动化代码】开发=高效的【数据研发生产力】
从而帮助企业充分发挥数据价值、实现业务价值:
100%消除二义性:根据【选择条件】组合,【批量生成】统计指标
分钟级自动化代码生成:【可视化设计】编辑逻辑表星型模型/雪花模型,【设计提交】自动化生成代码(设计即开发)
希望不远的未来,每个企业都可以基于Dataphin做出最高效、最全面、最正确的决定!
结语
阿里巴巴数据中台团队,致力于输出阿里云数据智能的最佳实践,助力每个企业建设自己的数据中台,进而共同实现新时代下的智能商业!
阿里巴巴数据中台解决方案,核心产品:
Dataphin,以阿里巴巴大数据核心方法论OneData为内核驱动,提供一站式数据构建与管理能力;
Quick BI,集阿里巴巴数据分析经验沉淀,提供一站式数据分析与展现能力;
Quick Audience,集阿里巴巴消费者洞察及营销经验,提供一站式人群圈选、洞察及营销投放能力,连接阿里巴巴商业,实现用户增长。
欢迎志同道合者一起成长!
本文作者:张骞
本文为云栖社区原创内容,未经允许不得转载。
Dataphin的代码自动化能力如何助力商业决策的更多相关文章
- 阿里大数据产品Dataphin上线公共云,将助力更多企业构建数据中台
日前,由阿里数据打造的智能数据构建与管理Dataphin,重磅上线阿里云-公共云,开启智能研发版本的公共云公测!在此之前,Dataphin以独立部署方式输出并服务线下客户,已助力多家大型客户高效自动化 ...
- 通过shell脚本实现代码自动化部署
通过shell脚本实现代码自动化部署 一.传统部署方式及优缺点 1.传统部署方式 (1)纯手工scp (2)纯手工登录git pull.svn update (3)纯手工xftp往上拉 (4)开发给打 ...
- 持续集成之⑤:jenkins结合脚本实现代码自动化部署及一键回滚至上一版本
持续集成之⑤:jenkins结合脚本实现代码自动化部署及一键回滚至上一版本 一:本文通过jenkins调用shell脚本的的方式完成从Git服务器获取代码.打包.部署到web服务器.将web服务器从负 ...
- AWS DevOps – 配合Jenkins和CodeDeploy实现代码自动化部署
AWS DevOps – 配合Jenkins和CodeDeploy实现代码自动化部署 Amazon ElastiCache 连接至 Redis 节点 通过 AWS Command Line Inter ...
- jenkins结合脚本实现代码自动化部署及一键回滚至上一版本
持续集成之⑤:jenkins结合脚本实现代码自动化部署及一键回滚至上一版本 一:本文通过jenkins调用shell脚本的的方式完成从Git服务器获取代码.打包.部署到web服务器.将web服务器从负 ...
- HMS Core在MWC2022展示最新开放能力,助力开发者构建精品应用
[2022年2月28日,巴塞罗那]世界移动通信大会MWC2022在巴塞罗那开幕.HMS Core设立了3个展台(Fira Gran Via,Hall 1),向全球开发者展示HMS Core 6的全新开 ...
- 转:完善eclipse+pdt作php开发中的代码提示能力
在eclipse开发中 ,可能由于各种原因导致项目文件(eclipse内置)丢失或错乱, 因而, 失去一些能力.. 以下是经过被痛苦折磨后查阅总结的一点东西 设置完下面内容, 支持以下特性 PHP: ...
- 【Unity】工具类系列教程—— 代码自动化生成!
转载自:https://zhuanlan.zhihu.com/p/30716595?utm_medium=social&utm_source=qq [为什么要做自动化工具] 工具类的创建是为了 ...
- Docker搭建Jenkins+Gogs+Maven/Gradle——代码自动化运维部署平台(三)
一.简介 1.CI/CD CI/CD 是一种通过在应用开发阶段引入自动化来频繁向客户交付应用的方法.CI/CD 的核心概念是持续集成.持续交付和持续部署.作为一个面向开发和运营团队的解决方案,CI/C ...
随机推荐
- SQLiteDatabase 数据库使用
0 SQLiteDatabases数据库特点 一种切入式关系型数据库,支持事务,可使用SQL语言,独立,无需服务.程序内通过类名可访问数据库,程序外不可以访问. SQLiteDatabases数据库使 ...
- Python3.5自带venv创建虚拟环境
为每个程序单独创建虚拟环境可以保证程序只能访问虚拟环境中的包,保持全局解释器的干净整洁,使其只作为创建(更多)虚拟环境的源. windows下创建虚拟环境 Python3.5自带venv,只需执行py ...
- 【FICO系列】SAP 创建会计凭证(FB01)的BAPI
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[FICO系列]SAP 创建会计凭证(FB01) ...
- opencv部署服务器报错
报错内容: ImportError: libSM.so.6: cannot open shared object file: No such file or directory 解决办法: sudo ...
- 微信小程序列表时间戳转换
第一步先写js 随便命名为times.js function toDate(number){ var n=number * 1000; var date = new Date(n) ...
- java包装类,自动装箱,拆箱,以及基本数据类型与字符串的转换
package cn.learn; import java.util.ArrayList; /* 包装类 java.lang中,基本运算类型效率高 装箱:把基本类型数据包装为包装类 1.构造方法 In ...
- Netty核心组件介绍及手写简易版Tomcat
Netty是什么: 异步事件驱动框架,用于快速开发高i性能服务端和客户端 封装了JDK底层BIO和NIO模型,提供高度可用的API 自带编码解码器解决拆包粘包问题,用户只用关心业务逻辑 精心设计的Re ...
- XML学习——java解析xml文件
递归获取每个标签 package test; import java.io.File; import java.util.List; import org.dom4j.Document; import ...
- webpack的code spliting与chunks
webpack的code spliting与chunks :https://blog.csdn.net/liuqi332922337/article/details/53020992
- 字符串类——KMP算法的应用
1,字符串类中的新功能(本文代码已集成到字符串类——字符串类的创建(上)中,这里讲述函数实现原理): 2,子串查找(KMP 算法直接运用): 1,int indexOf(const char* s) ...