DTBoost:全新一代企业级大数据应用模式揭秘

本文涉及的产品
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
简介: DT时代企业不需要按照传统的思路构建数据应用;DTBoost全新一代企业级大数据应用模式,应DT而生,加速企业数据化运营。

新一代企业级大数据应用模式

三个问题

  • 当下是否还需要一个复杂的EDW(企业级数据仓库)?
  • 数据系统的目标用户是谁?
  • 让数据适应计算能力还是计算跟着数据走?

数据仓库这个概念在二十多年前由Bill Inmon提出后,几乎所有的IT厂商都开始介入这个领域,为企业级数据仓库设计非常复杂的体系结构和数据模型,典型的企业级数据应用架构如下:
363368_20151021110239458_1935396228

  • 这个架构,层次结构非常清晰,但是链路非常长,导致数据冗余非常大,同时数据表结构关系复杂,是一个典型的给技术人员使用的模型,业务的同学要使用数据是非常难的,没法理解底层复杂的表结构和表之间复杂的关联关系。这个现状到现在还在持续存在,许多企业投入大量的资源构建企业级数据仓库,目标是提升企业自身数据化运营的能力,其结果大部分都与目标相差很远,更多看到的就是构建了一套报表系统。
  • 同时,随着互联网和移动互联网的兴起,几乎所有的企业都在拥抱互联网,企业里面产生出很多互联网应用,同时也产生了大量的非结构化数据,结果问题来了,发现按照这样的结构设计数据模型,似乎并不能解决企业对非结构化数据的应用能力。同时对于提升数据处理效率也没有带来多大的用处。
  • 业务变化快,这点在新兴互联网公司表现的特别明显,在创新的驱动下,业务变化非常频繁,同时大数据概念的提出,多源数据结合使用将成为主流的数据应用模式,导致数仓工程师很难抽象出一个相对比较稳定的数据仓库模型。
  • 产生大量沉睡数据,很多企业里面,设计了ODS、DW、DM、RT层,产生了大量的数据表和数据任务,结果真正生产上使用的数据不多,导致每天有大量的关联任务在不断的耗用资源。我遇到的一些case,每日从业务库里面抽取的表只有1万多张,但是经过后面的各种加工,整个库里面产生上百万张数据表,技术人员使用起来都非常困难了,找不到数据。

我们回过头来分析一下,为什么会这样,同时也思考一下那三个问题。为什么会按照这个体系来设计:

  • 我认为,出现上述架构的最大的原因是计算能力不够,传统的IT架构用来实现DT架构,计算能力受限,必须通过改变数据的组织形式来适应计算。也就是前面我提到的数据跟着计算走,去积极的适应计算能力。这同时也导致另一个更为严重的问题,二十几年的发展,各个大数据厂商,都把很大精力放在了数据模型的设计和构建上面,忽略了针对上层业务场景化应用的计算模型探索,所以在新的技术体系下,我们需要来重新思考这些问题。
  • 这样的模式下,限制了上层数据应用模式,企业里面业务人员根本不可能去理解一个复杂的IT架构,所有的需求都是由业务人员驱动技术人员来实现。真正对数据有需求的业务人员,理解不了技术的语言,他们理解不了什么是表、什么事字段、什么是主键、什么是外键、表与表之间怎么关联、甚至是SQL怎么写都很难理解。而日常工作中,业务人员更能理解的是什么,他们能理解自己的客户是谁,客户都长什么样子,具备什么样的气质;自己有哪些产品,产品有什么功能,能解决什么问题;自己的客户和产品之间是如何互动,互动的结果是什么。诸如此类的,这是业务人员能力理解的。所以当下要做的就是抽象并提供一套能让业务人员直接可以理解使用的数据模型,而这个模型一定不是传统的数仓模型。
  • 封闭的,不透明的,这也是导致企业内数据膨胀的重要原因,同一个标签,甚至同一张表,在企业数据仓库里面比比皆是,导致大量数据冗余,因为很多技术同学根本不知道库里面有什么,厂商提的元数据管理也是面向技术的一个方案,没有从本质上解决数据的业务视图。所以企业里面需要一种可以协同、共享、共建的全新的数据应用体系,确保有效数据的有效透出。
  • 企业需要数据应用,提升自身数据化运营能力,但是是否需要一个复杂的DW模型,我认为当下不需要了,设计上应该轻数据模型(注意这里是轻数据模型,不是不要),重计算模型。

DTBoost新一代企业数据应用模式

DTBoost是什么?DTBoost是阿里云结合阿里巴巴自身大数据应用场景,经过多年总结抽象出的企业级大数据应用平台,其目标,是让业务人员可以快速的理解数据,应用数据;轻数据模型设计,重计算模型设计;结构开放,快速支撑数据应用开发;企业内部共建共享,协同开发。

DTBoost对标的产品是什么?

我周边经常有人问我这个问题,我可以直接告大家,DTBoost目前没有对标的产品。在我理解,DTBoost是一种全新的企业级数据应用开发的模式,我们通过DT技术的手段,将这种模式实现成一套公共云计算平台上数据应用的PaaS,同时也可以部署在专有云。通过DTBoost可以帮助企业快速实现数据业务解决方案,同时使得业务人员直接使用数据变成现实。

DTBoost架构

DTBoost核心是三层架构体系:
14706476785789

数据模型

通过前面的分析,DT时代需要一个全新的数据模型,这个也将是整个DTBoost的基础。我们要站在业务的视角来设计。同时要提供一套数据模型的管理系统,来方便模型的设计和构建。为此在数据模型这部分将包含以下几个核心模块。

14727091624639

上图中,最下面三个标签工厂、领域OLT模版、智能OL发现主要是为了加速业务OLT模型构建和标签生产。

  • OLT(Object Link Tag)模型:所谓的实体,例如 消费者、商家、商品等都可以表示成一个实体,这些都是直接业务的同学可以理解的。关系例如 交易、收藏、点击、搜索等行为都是一个关系,由多个实体之间发生的某种行为。同时我们会在实体、关系上打上很多标签,来刻画实体和关系。听下来和OLP模型非常像,不错,在整体模型结构上一致,我们重点在tag(标签)这部分,标签是业务人员最容易理解的一种数据形态,标签可以是实体的某种属性,也可以是通过算法深度加工出来的某个评分,或者多个标签组合的一个计算逻辑。

14706486396111

  • 共建共享:DTBoost可以在标签这个粒度实现权限控制,确保企业内形成共建共享的数据应用模式,标签可以有多个团队开发,可以发布、授权共享给其它部门查看使用。确保业务应用数据层公开透明。
  • 市场机制:在这一层也可以通过市场机制的模式确保数据质量,严格意义上讲是标签数据质量,DTBoost可以通过标签元信息的公开透明,确保业务同学能快速的理解标签业务含义;通过讲标签的数据分布可视化,确保数据产出的稳定性;通过业务线使用标签的情况,来确保标签是否要被淘汰,如果一个标签长时间没人用,系统就可以考虑将其停用下线,释放底层计算资源;再进一步可以通过上层应用的情况,来自动优化物理层数据的组织方式。这里举个例子,如果A、B、C三个标签经常性被业务方组合使用,原先这三个标签在物理层分布在三张表中,那这种情况下,DTBoost会自动检测,自动构建新的底层物理表,将三个标签合并到同一张表中,优化存储的同时,优化了计算。
  • 智能搬迁:这里在标签元信息中,DTBoost会详细记录标签对应物理的存储,当业务方在应用标签时,只用对计算模型进行选择,不用对数据物理存储关心,这个模块会根据计算模型的指令,完成底层物理数据的自动关联和搬迁(这里的搬迁指的是自动的将数据由一个存储搬迁到计算模型需要的存储中),不用数据开发的同学再去做物理数据的关联和数据传输任务的配置。
  • API:下面的所有功能,DTBoost将其封装成标准的API,共合作伙伴或者开发者做二次开发。
  • UI:DTBoost通过一个官方标准的交互界面,将底下的这些功能封装,给用户提供一套统一的操作体验。

_1

  • 标签工厂:为什么需要这个模块,DTBoost数据模型里面有非常重要的一块就是标签,但是标签怎么产生,哪些标签是有效的标签,这个就至关重要。而生成标签的方式有多种,可以让数据开发人员,根据业务同学的定义,通过SQL或着MR去一一实现,这个也是不可避免的。但是经过对业务需求的分析,你会发现有一部分计算逻辑是非常通用的,为此DTBoost里面可以为客户提供这部分功能,来解决企业内30-50%的标签加工需求,让业务人员自己就可以实现通用方法的标签加工。同时标签工厂能够对用户屏蔽底层之间的表联接逻辑,用户只需要知道所用的标签含义即可。当在某个时间段内同时有多个标签进行生成、处理、分析的时候,标签工厂可以自动找出这些处理的共同依赖、同一计算等,节省计算资源,避免某些热门物理表被多次全盘扫描。现阶段规划的功能如下:

14727218241604

当前支持的衍生方法:

时间序列上的衍生:

方法名称    方法描述
cnt    变量在一定周期内的发生次数
cntd    变量在一定周期内出现的不同值次数
totv    变量在一定周期内的总和
ttav    变量在一定周期内的均值
hmax    变量在一定周期内的最大值
hmin    变量在一定周期内的最小值
hmedian    变量在一定周期内的中位数
stddev    变量在一定周期内的标准差
variance    变量在一定周期内的方差
days    变量在一定周期内满足条件的天数
ftdays    变量在一定周期内满足条件的首次行为距今时长
ltdays    变量在一定周期内满足条件的末次行为距今时长

组合标签支持的表达式以及函数:

计算运算:+, -, *, /, %
数学函数:abs,acos,asin,atan,ceil,conv,cos,cosh,cot,exp,floor,ln,log,pow,round,sin,
sinh,sqrt,tanh,tanh
  • 智能发现:这个模块的作用就是加速构建OLT模型的过程,如果说 标签工厂是加速T的过程,那么智能发现就是加速OL的过程。如何构建一个有效的OLT模型非常关键,也是这个新一代大数据应用模式里面可能花费时间最长的环节。为此我们通过技术的手段来辅助解决这个问题,实体在物理数据中大部分都是以Key的形式存在,关系一般都是以组合Key的形式存在,我们采用机器学习方式,通过对业务库log的挖掘,自动的发现出可能的实体和关系,并根据关系的强弱切割成不同的子图,来帮助建模师确认、发现关键的业务模型。

_

  • 领域OLT模版:这点非常有意思,也是真正意义上的领域知识,通过DTBoost在不同行业的不断输出,可以总结沉淀出不同领域的实体关系模型,沉淀出不同领域标签模型以及标签分类体系,来形成DTBoost领域知识库。同时它不仅仅是模型层的一个领域模版,他会和上层计算模型联动,形成从模型层到应用层一整套模版。比如金融领域,首先会沉淀出一套金融领域的实体关系标签模型,基于这个之上,可以沉淀出一套多维交叉分析模版、风控预警模版、市场营销模版。在相同领域输出时,可以基于这个领域知识库做快速的客户化改造。

到这里,数据模型部分可以告一个段落,这块是新一代企业大数据应用模式的基础,非常重要,为此DTBoost在这部分花了大量的时间和资源进行设计开发。重要但确实是个基础,他并不能直接解决业务问题,真正作用到业务是基于这套数据模型之上的计算模型。敬请关注下一章节 :DTBoost计算模型之-计算模型。

相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
目录
相关文章
|
1月前
|
SQL 存储 分布式计算
ODPS技术架构深度剖析与实战指南——从零开始掌握阿里巴巴大数据处理平台的核心要义与应用技巧
【10月更文挑战第9天】ODPS是阿里巴巴推出的大数据处理平台,支持海量数据的存储与计算,适用于数据仓库、数据挖掘等场景。其核心组件涵盖数据存储、计算引擎、任务调度、资源管理和用户界面,确保数据处理的稳定、安全与高效。通过创建项目、上传数据、编写SQL或MapReduce程序,用户可轻松完成复杂的数据处理任务。示例展示了如何使用ODPS SQL查询每个用户的最早登录时间。
91 1
|
17天前
|
SQL 存储 算法
基于对象 - 事件模式的数据计算问题
基于对象-事件模式的数据计算是商业中最常见的数据分析任务之一。对象如用户、账号、商品等,通过唯一ID记录其相关事件,如操作日志、交易记录等。这种模式下的统计任务包括无序计算(如交易次数、通话时长)和有序计算(如漏斗分析、连续交易检测)。尽管SQL在处理无序计算时表现尚可,但在有序计算中却显得力不从心,主要原因是其对跨行记录运算的支持较弱,且大表JOIN和大结果集GROUP BY的性能较差。相比之下,SPL语言通过强化离散性和有序集合的支持,能够高效地处理这类计算任务,避免了大表JOIN和复杂的GROUP BY操作,从而显著提升了计算效率。
|
1月前
|
存储 分布式计算 druid
大数据-152 Apache Druid 集群模式 配置启动【下篇】 超详细!(一)
大数据-152 Apache Druid 集群模式 配置启动【下篇】 超详细!(一)
39 1
大数据-152 Apache Druid 集群模式 配置启动【下篇】 超详细!(一)
|
1月前
|
存储 分布式计算 druid
大数据-149 Apache Druid 基本介绍 技术特点 应用场景
大数据-149 Apache Druid 基本介绍 技术特点 应用场景
57 1
大数据-149 Apache Druid 基本介绍 技术特点 应用场景
|
25天前
|
SQL 存储 算法
基于对象 - 事件模式的数据计算问题
基于对象-事件模式的数据计算是商业中最常见的数据分析任务之一。这种模式涉及对象(如用户、账户、商品等)及其相关的事件记录,通过这些事件数据可以进行各种统计分析,如漏斗分析、交易次数统计等。然而,SQL 在处理这类任务时表现不佳,特别是在有序计算方面。SPL 作为一种强化离散性和有序集合的语言,能够高效地处理这类计算,避免了大表 JOIN 和大结果集 GROUP BY 的性能瓶颈。通过按 ID 排序和分步计算,SPL 能够显著提高计算效率,并支持实时数据处理。
|
1月前
|
分布式计算 大数据 分布式数据库
大数据-158 Apache Kylin 安装配置详解 集群模式启动(一)
大数据-158 Apache Kylin 安装配置详解 集群模式启动(一)
42 5
ly~
|
1月前
|
供应链 搜索推荐 安全
大数据模型的应用
大数据模型在多个领域均有广泛应用。在金融领域,它可用于风险评估与预测、智能营销及反欺诈检测,助力金融机构做出更加精准的决策;在医疗领域,大数据模型能够协助疾病诊断与预测、优化医疗资源管理和加速药物研发;在交通领域,该技术有助于交通流量预测、智能交通管理和物流管理,从而提升整体交通效率;电商领域则借助大数据模型实现商品推荐、库存管理和价格优化,增强用户体验与企业效益;此外,在能源和制造业中,大数据模型的应用范围涵盖从需求预测到设备故障预测等多个方面,全面推动了行业的智能化转型与升级。
ly~
85 2
|
1月前
|
资源调度 大数据 分布式数据库
大数据-158 Apache Kylin 安装配置详解 集群模式启动(二)
大数据-158 Apache Kylin 安装配置详解 集群模式启动(二)
40 2
|
1月前
|
消息中间件 分布式计算 druid
大数据-152 Apache Druid 集群模式 配置启动【下篇】 超详细!(二)
大数据-152 Apache Druid 集群模式 配置启动【下篇】 超详细!(二)
40 2
|
1月前
|
存储 消息中间件 druid
大数据-151 Apache Druid 集群模式 配置启动【上篇】 超详细!
大数据-151 Apache Druid 集群模式 配置启动【上篇】 超详细!
80 1