前言
数据可视化建模无论是对于企业的数字化转型,还是对数据资源的价值开发来说,都是至关重要的工具,小兵在前文《数据可视化建模平台介绍》。中有详细介绍过他的能力,包括面向多源异构的企业数据,为企业提供数据集成、数据管理、数据分析和价值挖掘等全面能力。数据建模的优势非常明显,低技术门槛、高业务响应效率、提高数据质量、降低开发成本等,但数据建模却也不是万能的,在很多数据中台项目中小兵发现,在面对一些特别复杂或较为少见的业务需求时,数据建模可能会因为受限于固有的算子而无法设计出满足业务需求的模型。
01 问题分析
看到这里有的朋友一定会质疑,数据建模无法百分百满足业务需求,一定是产品设计出了问题!其实不然,这其实与数据建模产品的定位有关,我们来看一下数据建模的定位:
首先,数据建模产品面向的用户群体是“业务专家”,他们熟悉业务但不懂IT技术,需要一套工具帮助他们将丰富的业务积累转变为“数据财富”。
数据建模产品通过可视化拖拉拽的方式来设计模型(无需写代码),降低了数据建模的技术门槛,使我们的“业务专家”用户也可以完成;通过预置丰富的算子提高建模效率,实现了对业务需求的快速响应。
准确来说,数据建模是由“业务专家”来使用,能够高效完成80%以上业务需求响应的一套产品。如果一定要通过数据建模工具来实现这类复杂或少见的业务需求,需要开发人员根据需求,定制开发新的算子,然后对系统版本升级和重新部署后,才能够上线新的算子来满足业务需求,这无疑与数据建模产品低门槛、高效率的定位和特点相矛盾。
02 解决思路
想要解决这个问题其实不难,数据建模实现了通过业务人员就能在极高的效率下响应业务的数据需求,这在小兵看来已经非常的棒了。我们要做的就是再设计一个产品--数据开发平台,定位为给开发人员使用,通过低代码工具实现算子的定制开发和热部署。这样一来,我们可以通过数据建模产品设计模型来满足绝大部分的业务需求,而数据建模无法满足的少数需求,我们通过数据开发平台来定制开发实现,问题就完美的解决啦。
03 什么是数据开发平台?
3.1 数据开发平台定义
数据开发平台面向企业复杂的数据需求,为开发人员提供低代码且高度灵活的算子定制化开发能力,通过算子开发、步骤管理、任务编排、任务调度等功能,可以满足用户所有复杂的数据需求。通过脚本在线编辑和Jar包上传等方式进行算子开发,无需升级系统和重新部署即可快速响应业务需求。
3.2 功能介绍
功能架构图
-
算子开发中心
主要能力是对算子进行定制化的开发。包括算子的创建、查询、查看、编辑、删除等管理功能。支持SQL脚本、Python脚本、HTTP(API)和上传jar包等方式创建算子,维护算子基础信息后,通过算子设计器进行算子设计。设计过程中支持算子模版和数据源的快捷查看和选取。
-
步骤管理
主要能力是选择开发出来的算子,将其维护成任务中执行的步骤和步骤组。包括步骤的创建、查询、查看、编辑、删除等管理功能。支持选择已有算子进行步骤的创建,维护步骤基础信息,支持对算子配置的参数进行修改。可以选择多个步骤维护成步骤组,步骤组中的所有步骤在任务执行时会同时执行。
-
任务编排中心
主要能力是依据业务需求选择对应的步骤和步骤组进行组合并排序(执行顺序),形成可以满足业务需求的任务。包括任务的创建、查询、查看、编辑、删除、执行等管理功能。支持可视化拖拉拽的方式进行任务设计,可以将维护好的步骤和步骤组拖拽至设计区域,并对步骤和步骤组进行顺序编排。
-
调度中心
主要能力是对任务进行调度和监控。包括调度管理、任务执行、日志管理等功能。
3.3 业务流程图
(1)根据业务需求创建对应的步骤,创建步骤时需选择适合的算子并修改算子的参数。若没有适合的算子,可以先开发出算子后再选择。
(2)将需要同时执行的步骤选出,维护成步骤组。
(3)创建任务,选择任务需要的步骤和步骤组,拖拽至设计区形成步骤节点和步骤组节点。
(4)通过拖拽方式对节点进行排序,完成后任务将按照节点顺序依次执行。
(5)通过调度中心对任务进行执行和监控
3.4 优势亮点
-
低代码:仅需编写简单的脚本,其他数据开发、设计过程均通过可视化方式实现
-
不受限:算子可定制开发,灵活且不受限制,可以满足各种复杂的数据需求
-
高效率:系统提供各类可复用模版和组件,提高数据开发工作效率
-
热部署:通过在线编辑脚本和Jar包上传等方式就可完成数据开发,无需系统升级和重新部署上线,提高需求响应速度
04 总结
无论是数据建模平台产品还是数据开发平台产品,都有着非常清晰的定位和适用的场景:
数据建模面向业务专家,提供全流程可视化的低技术门槛数据建模的能力,可以满足80%以上的数据需求;
数据开发面向开发人员,提供灵活、高效的算子定制化开发能力,可以满足各种复杂的数据需求。
两种产品配合使用,简直天衣无缝,完美解决用户所有的数据需求。