设为首页收藏本站

LUPA开源社区

 找回密码
 注册
文章 帖子 博客
LUPA开源社区 首页 业界资讯 软件追踪 查看内容

DataSphere Studio发布,一站式数据应用开发管理门户

2019-12-2 20:34| 发布者: joejoe0332| 查看: 435| 评论: 0|原作者: oschina|来自: oschina

摘要: “DataSphere Studio(简称DSS)是微众银行自研的一站式数据应用开发管理门户。基于插拔式的集成框架设计,及计算中间件Linkis,可轻松接入上层各种Web系统,让数据开发变得简洁又易用。” 开源地址(github https:/ ...

 DataSphere Studio(简称DSS)是微众银行自研的一站式数据应用开发管理门户。基于插拔式的集成框架设计,及计算中间件Linkis,可轻松接入上层各种Web系统,让数据开发变得简洁又易用。

开源地址(github https://github.com/WeBankFinTech/DataSphereStudi

gitee https://gitee.com/WeBank/DataSphereStudio

01

DSS是什么?

DataSphere Studio(简称DSS)定位为数据应用开发门户,闭环涵盖数据应用开发全流程。在统一的UI下,以工作流式的图形化拖拽开发体验,满足从数据导入、脱敏清洗、分析挖掘、质量检测、可视化展现、定时调度到数据输出应用等,数据应用开发全流程场景需求。

DSS通过插拔式的集成框架设计,让用户可以轻松定制化开发DSS,简单快速集成各种Web系统,在一个统一的页面下,便可满足用户的所有业务需求。

根据需要,用户可以简单快速替换DSS已集成的各种功能组件,或新增功能组件。

借助于Linkis计算中间件的连接、复用与简化能力,DSS天生便具备了金融级高并发、高可用、多租户隔离和资源管控等执行与调度能力。

02

为什么需要DSS?

随着大数据技术的广泛应用,如今数据应用的开发,已远远不再是加工和生产几个报表了。

业务与数据如何快速实现互动,数据如何快速且高效地生成报告,协助商业决策,几乎是所有企业的核心诉求。

然而,现实却是,业务用户面对功能丰富的众多数据应用系统,往往不知所措,不知如何选择。

 

以下六个痛点,几乎是所有企业面临的非常头痛的问题:

  1. 数据应用系统多,没有统一的用户入口,用户体验割裂感强。

  2. 业务流程涉及多个系统相互协作,用户需频繁切换系统才可实现业务。

  3. 很多数据应用系统边界不清晰,功能重叠不仅极大浪费人力,系统间也难以协同互通,用户更是需要花时间反复调研比较,才能最终敲定方案。

  4. 跨部门跨业务的数据依赖,全靠口头约定ready时间,如果上游数据延迟,下游将产生连锁反应,引发数据灾难。

  5. 系统间的数据和信息共享,需要两两开发适配,调用复杂且耦合度高。

  6. 没有一套统一的集成框架,系统间集成需要各种开发适配。

03

DSS的核心概念

DSS提出的五大核心概念,专注于解决上述提到的六大痛点问题。

 

1. 一站式

一站式,是DSS提高业务用户主动参与数据开发的第一步探索。

DSS通过提供一站式的数据应用开发管理界面,让用户无需再多方打听探讨,才能确认是否有工具能满足需求,所有的数据开发均可在DSS上找到组件完成。

DSS集成度极高,最新开源版已集成的系统有:

  1. 数据开发探索Scriptis

  2. 数据可视化Visualis(基于宜信Davinci二次开发)

  3. 数据质量Qualitis

  4. 调度系统Azkaban

DSS插拔式的框架设计模式,允许用户快速替换DSS已集成的各个Web系统。如:将Scriptis替换成Zeppelin,将Azkaban替换成DolphinScheduler。

DSS一站式的数据应用开发入口,使用户养成了有需求时搜DSS,没需求时探索DSS其他功能组件的良好习惯。

2. 全连接

在DSS工作流拖拽编辑页面,DSS已集成的所有数据应用系统,都将以工作流节点的形式出现,一种节点对应一个系统功能,让功能边界清晰明朗,用户无需再做选择题。

DSS工作流节点,支持嵌入已集成的数据应用系统前端界面,让用户在一个工作流页面,即可编辑修改所有的业务功能。

DSS工作流,让用户能以业务视角将多个业务功能连接起来,编排成支持实时执行和定时调度的工作流,只需简单拖拽即可完成数据应用的全流程开发。

在微众银行,通过DSS的工作流,业务数据应用的迭代周期从原来的1周,降低到1天,效率提升了600%倍。

DSS工作流,做到让用户可以简单快速地实现业务,同时帮助用户更好地理解业务。

 

3.插拔式

插拔式是DSS作为数据应用集成框架的最大特色。

DSS就像是插槽,插拔式的设计方式,几乎不侵入原有的外部系统,且只需做简单适配,即可快速的集成进来。

DSS通过插拔式集成架设计,让用户可以轻松定制化开发DSS,简单快速集成各种Web系统,在一个统一的页面,便可满足用户的所有业务需求

通过插拔式,让WeDataSphere的各个功能组件既能相互独立、系统边界清晰明确,又能有机融合在一起,共同构成WeDataSphere一站式、全连通的大数据使用体验。

 

4.上下文

何谓上下文?

保持某种操作继续进行的所有必需信息。如:同时看三本书,每本书已翻看的页码就是继续看这本书的上下文。

DSS上下文,解决DSS工作流跨多个系统节点间的数据和信息共享问题。

例如,B系统需要使用A系统产生的一份数据,通常的做法如下:

  1. B系统调用A系统开发的数据访问接口

  2. B系统读取A系统写入某个共享存储的数据

DSS借助Linkis计算中间件实现的WorkflowContext,允许接入的外部系统作为分享节点或读取节点,将节点信息和节点数据共享给其他外部系统节点,无需外部系统两两开发适配,降低系统间调用复杂度和耦合度。

借助于DSS上下文,微众银行WeDataSphere实现彻底解耦,各功能组件的复杂度至少降低了30%。

 

5.信号化

跨部门跨业务的数据依赖问题,一向是业界公认的老大难。

例如:部门B的数据集市依赖于部门A DWD(Data Warehouse Detail数据明细层)的部分数据,

如何确保部门A的数据处理完成后,部门B才正式开始数据处理?

通常的做法是:双方约定一个时间窗口,部门A保证数据已准备就绪。

中间的空窗期,不仅极大降低了数据处理时效性,且一旦部门A数据处理延迟,下游将引发灾难。

DSS作为数据应用开发门户,提出了一套基于信号的数据依赖解决方案。

接入到DSS的数据应用系统,只需在其前面加上一个信息节点,即可实现跨业务、多系统间的数据依赖协作执行问题。

微众银行通过DSS信号化,让各业务跨多系统的数据依赖,变得简单、清晰又高效,平均提速了业务30%的数据产出,数据延迟率降低了90%。

04

DSS核心设计理念

AppJoint,DSS插拔式架构的插口,是DSS构建一站式、全连通、插拔式、上下文的基石。

AppJoint,是DSS可以简单快速集成各种上层Web系统的核心概念。

 

什么是AppJoint?

AppJoint——应用关节,基于Linkis计算中间件构建,定义了一套统一且规范的前后台接入规范,

让外部数据应用系统可简单快速地接入到DSS。

AppJoint的四大规范,让DSS的数据应用系统接入,变得清晰又便捷。

Security规范和Project规范,是实现一站式的核心抽象。

  1. Security规范,打通DSS与外部系统前后台的登录跨域问题。

  2. Project规范,打通DSS与外部系统的组织结构、权限体系,是实现DSS协同开发的通用标准。

NodeService规范和NodeExecution规范,是实现全连通的核心基石。

  1. NodeService规范,打通DSS工作流节点与外部系统的关联互通。

  2. NodeExecution规范,实现DSS工作流节点与外部系统的任务交互执行。

AppJoint还引入了Linkis计算中间件,让接入的外部数据应用系统,可快速具备Linkis的并发限流、用户资源打通等能力。

且基于Linkis实现的WorkflowContext,允许上下文信息跨系统节点级共享,彻底告别应用孤岛。

05

DSS已集成的数据应用组件

DSS通过实现多个AppJoint,已集成了丰富多样的各种上层Web应用系统,基本可满足用户的数据开发需求。

用户如果有需要,也可以轻松集成新的Web应用系统,以替换或丰富DSS的数据应用开发流程。

1、数据开发——Scriptis

什么是Scriptis?

Scriptis是一款支持在线写SQL、Pyspark、HiveQL等脚本,提交给Linkis执行的数据分析Web工具,且支持UDF、函数、资源管控和智能诊断等企业级特性。

Scriptis AppJoint为DSS集成了Scriptis的数据开发能力,并允许Scriptis的各种脚本类型,作为DSS工作流的节点,参与到应用开发的流程中。

目前已支持HiveSQL、SparkSQL、Pyspark、Scala等脚本节点类型。

 

2、数据可视化——Visualis

什么是Visualis?

Visualis是一个数据可视化的BI工具,基于宜信开源组件Davinci二次定制化开发而成。

Visualis AppJoint为DSS集成了Visualis的数据可视化能力,并允许数据大屏和仪表盘,作为DSS工作流的节点,与上游的数据集市关联起来。

 

3、DSS的调度能力——Azkaban

用户的很多数据应用,通常希望具备周期性的调度能力。

目前市面上已有的开源调度系统,与上层的其他数据应用系统整合度低,且难以融通。

DSS通过实现Azkaban AppJoint,允许用户将一个编排好的工作流,一键发布到Azkaban中进行定时调度。

DSS还为调度系统定义了一套标准且通用的Linkis工作流解析发布规范,让其他调度系统可以轻松与DSS实现低成本对接。

 

4、数据质量——Qualitis

Qualitis AppJoint 为DSS集成数据质量校验能力,将数据质量系统集成到DSS工作流开发中,对数据完整性、正确性等进行校验。

5、数据发送——Sender

Sender AppJoint为DSS集成数据发送能力,目前支持SendEmail节点类型,所有其他节点的结果集,都可以通过邮件发送。

例如:SendEmail节点可直接将Display数据大屏作为邮件发送出来。

6、数据信号——Signal

Signal AppJoint用于强化业务与流程之间的解耦和相互关联。

DataChecker节点:检查库表分区是否存在。

EventSender: 跨工作流和工程的消息发送节点。

EventReceiver: 跨工作流和工程的消息接收节点。

7、功能节点

空节点和子工作流节点。

8、节点扩展

根据需要,用户可以简单快速替换DSS已集成的各种功能组件,或新增功能组件。

06

总结

DSS作为数据应用开发门户,致力于提供一套通用的数据应用接入和开发的标准,让业务用户具备参与到数据应用开发的能力和可能。

由于篇幅所限,本文不再详细论述DSS的架构设计和实现。

期待更多的社区力量,一起推动DSS + Linkis生态圈的成长。


酷毙

雷人

鲜花

鸡蛋

漂亮
  • 快毕业了,没工作经验,
    找份工作好难啊?
    赶紧去人才芯片公司磨练吧!!

最新评论

关于LUPA|人才芯片工程|人才招聘|LUPA认证|LUPA教育|LUPA开源社区 ( 浙B2-20090187 浙公网安备 33010602006705号   

返回顶部