臣本布衣,躬耕于南阳,苟全性命于乱世,不求闻达于诸侯。先帝不以臣 ...

打住,打住!

百家讲坛,谈古论今,今天我们不讲三国,我们来讲地球脉动 ...

啊,停停停,爬错楼梯了,跑题啦,专业,专业!

好了,离远点,别扯淡了,今天笔者聊点不一样的东西,或许你觉得废话连篇,或许你觉得价值连城,亦或许弃之可惜食之无味。

笔者一直有一个似有似无的习惯,就是每个季度会去挑选一些开源项目去学习和研究。最近一个季度初略涉及多方面,包括:

  • TBase

    企业级分布式 HTAP 数据库管理系统。

  • Polynote

    Polynote 是一种多语言编程 notebook 环境,与 Apache Spark 集成,并为 Scala、Python 和 SQL 提供强大的支持。Polynote 旨在使数据科学家和 AI 研究人员将 Netflix 的机器学习框架与 Python 机器学习和可视化库相集成。

  • ClickHouse

    ClickHouse 是一个开源的面向列的数据库管理系统,能够使用 SQL 查询实时生成分析数据报告。

  • Apache Doris

    Apache Doris 是用于报告和分析的基于 MPP 的交互式 SQL 数据仓库。Doris主要集成了 Google Mesa 和 Apache Impala 的技术。与其他流行的基于 Hadoop 的 SQL 系统不同,Doris 被设计为一个简单且紧密耦合的单个系统,而不依赖于其他系统。

  • Milvus

    Milvus 是一款开源的、针对海量特征向量的相似性搜索引擎。基于异构计算框架设计,成本更低,性能更好。在有限的计算资源下,十亿向量搜索仅毫秒响应。

  • DataSphere Studio

    DataSphere Studio 定位为数据应用开发门户,闭环涵盖数据应用开发全流程。

还有其他一些项目都是持续研究的,这里就不再罗列,否则看起来不雅观。

开源世界

国内最近几年开源项目的确如雨后春笋般涌现,当然是不是春笋不是笔者所能定义的,开源本身就是勇气,需要大家始终如一地鼓励和积极忘我地参与。

但是笔者还是有几句话要说的,既然开源出来,还是要有点态度的,不能只管生不管养。这里有点态度是啥?当然代码本身质量就不说了,笔者认为最起码该有的文档还是不能缺少的,比如项目描述(准确定位)、使用场景和案例、架构图、部署和运维文档、调试和监控手册、用户文档、生态系统、开发文档、How To Contribute、FAQ 等,其实 Spark 和 Flink 项目文档化总体还是不错的,可以参考。

笔者的确遇到不少开源项目,部署完成后,遇到一些问题:

  • 用户名和密码还要去查询数据库或者查看源码

  • 各种依赖问题,无文档说明,需要去查看源码修复

  • 项目定位不清晰,场景夸大

  • 架构随便定义为高可用、高性能、高并发、在线扩容、各种中台等

  • 开源项目里面包含一些非开源的代码,注意 The Apache Way

  • Issues 和 Bugs 就在那里,稳如磐石

  • QQ 群和微信群满天飞,私聊很难,私聊之前先来 fork 和 start 项目一下,开个玩笑哈。

    最近在研究百度开源的 Doris 项目中,非常感激百度技术人积极主动地解答疑惑,无论是群聊还是私聊都是非常敬业的,再次谢过,Doris 本身也是很棒的 Apache 开源项目,值得研究和应用

开源世界太大,并非笔者所能够妄加论断,聊此一二,正所谓且行且珍惜。

说了那么多,还是要聊点技术的。上面列举了几个开源项目,今天笔者只会挑选 DataSphere Studio 来讲解,因为这个项目本周才开始调研。目前在部署的路上还是遇到不少问题的,所谓一边看源码一边部署,一边修 bug 一边打包,如此反复 ...,不过项目还处于快速迭代更新中。

一站式数据应用开发管理门户

先看一个视频,应该是一个动态 GIF,看完后,对于内行人来说,大致应该就知道产品的功能了,也可以访问 https://github.com/WeBankFinTech/DataSphereStudio 项目,里面有很多演示的动画。

https://github.com/WeBankFinTech/DataSphereStudio/blob/master/images/en_US/readme/DSS_gif.gif

项目概述

DataSphere Studio 是微众银行大数据平台自研的一站式数据应用开发管理门户,闭环涵盖数据应用开发全流程。在统一的 UI 下,以工作流式的图形化拖拽开发体验,满足从数据导入、脱敏清洗、分析挖掘、质量检测、可视化展现、定时调度到数据输出应用等,数据应用开发全流程场景需求。

基于 Linkis 计算中间件构建,可轻松整合上层各数据应用系统,让数据应用开发变得简洁又易用。并且借助于 Linkis 计算中间件的连接、复用与简化能力,DataSphere Studio 天生便具备了金融级高并发、高可用、多租户隔离和资源管控等执行与调度能力。

Linkis 是什么?

上面项目概述中多次提到 Linkis,这是什么呢?

其实大家看到上面的图,大概就应该知道 Linkis 的功能了。

Linkis 是一个打通了多个计算存储引擎,如 Spark、TiSpark、Hive、Python 和 HBase 等,对外提供统一 REST/WebSocket/JDBC 接口,提交执行 SQL、Pyspark、HiveQL、Scala 等脚本的计算中间件。

其实 Linkis 定义了 AppJoint(应用关节),定义了一套统一的前后台接入规范,可让外部数据应用系统快速简单地接入,成为 DataSphere Studio 数据应用开发中的一环。

比如笔者最近部署的 Qualitis 数据质量管理工具,实现 Qualitis AppJoint,依赖于 Linkis 进行数据计算和质量管理,比如可以对 Hive 表的字段进行各种规则校验。

DataSphere Studio 架构

其实 DataSphere Studio 项目属于一个高度集成的项目,整套产品集成了好几个产品,的确对部署和运维带来不小的挑战,这个就要看项目后续的发展了,目前集成的系统有:

1. Scriptis

开源项目地址:

https://github.com/WeBankFinTech/Scriptis

Scriptis 可以理解为统一 SQL 引擎,类似于 Hue 和 Zeppelin,但是提供了更多的功能。支持在线编写 SQL、Pyspark、HiveQL 等脚本,提交给 Linkis 执行的数据分析Web工具,且支持 UDF、函数、资源管控和智能诊断等企业级特性。

2. Visualis

开源项目地址:

https://github.com/WeBankFinTech/Visualis

基于宜信的开源项目 Davinci 开发的数据可视化 BI 工具,支持拖拽式报表定义、图表联动、钻取、全局筛选、多维分析、实时查询等数据开发探索的分析模式,并做了水印、数据质量校验等金融级增强。Davinci 本身是面向业务人员/数据工程师/数据分析师/数据科学家,致力于提供一站式数据可视化解决方案。

3. Qualitis

开源项目地址:

https://github.com/WeBankFinTech/Qualitis

数据质量管理工具,基于 Spring Boot 开发,依赖于 Linkis 进行数据计算,提供数据质量模型构建,数据质量模型执行,数据质量任务管理,异常数据发现保存以及数据质量报表生成等功能。并提供了金融级数据质量模型资源隔离,资源管控,权限隔离等企业特性,具备高并发,高性能,高可用的大数据质量管理能力。

在 DataSphere Studio 上面开发的工作流可以集成 Scriptis 数据查询、Visualis 图表分析以及 Qualitis 数据质量查看。

4. Azkaban

这一块大家都比较熟悉,业界开源的工作流调度工具,类似的还有 Apache Airflow。DataSphere Studio 集成 Azkaban,便于把用户开发的工作流提交给 Azkaban 进行调度执行。

5. Exchanges

数据交换平台,尚未开源。

使用场景

DataSphere Studio 是一个引领数据应用开发管理方向的开源项目,开源社区目前尚没有同类产品。

DataSphere Studio 官网列举出的适用于以下场景:

1. 正在筹建或初步具备大数据平台能力,但无任何数据应用工具的场景。

2. 已具备大数据基础平台能力,且仅有少数数据应用工具的场景。

3. 已具备大数据基础平台能力,且拥有全部数据应用工具,但工具间尚未打通,用户使用隔离感强、学习成本高的场景。

4. 已具备大数据基础平台能力,且拥有全部数据应用工具,部分工具已实现对接,但尚未定义统一规范的场景。

由于笔者刚开始研究,而且 DataSphere Studio 本身集成度的确不低,所以需要花时间去研究,扩展和落实。

总结

开源世界,还是需要以开源态度去对待,遵循 The Apache way,提供始终如一的高品质软件,进行尊重、诚实和技术为基础的交流。

The Apache Way - 开源项目相关推荐

  1. 开源指南|如何从零开始参与 Apache 顶级开源项目?(二)

    作者:苏奕嘉|SelectDB 生态研发工程师 写在开头 上一篇文章 如何从零开始参与 Apache 顶级开源项目?我们介绍了 Apache Doris 社区的工作机制.如何参与社区贡献以及如何完成第 ...

  2. Apache孵化器主席Justin Mclean:如何成为Apache顶级开源项目

    近日,Apache孵化器主席.Apache基金会成员.Dubbo & RocketMQ等开源项目的导师Justin Mclean来到阿里巴巴西溪园区,与众多开发者分享了如何打造一个Apache ...

  3. GitHub 超 14,000 Star,中国又一 Apache 顶级开源项目诞生!

    [编者按]时至今日,Apache bRPC 在 GitHub 上已经收获了 14,356 个 Star,并正式从 Apache 孵化器毕业成为顶级开源项目.但 bRPC 的成功并不是一蹴而就的,开源近 ...

  4. 对话Apache孵化器主席Justin Mclean | Apache顶级开源项目晋级之路

    近日,Apache孵化器主席.Apache基金会成员.Dubbo & RocketMQ等开源项目的导师Justin Mclean来到阿里巴巴西溪园区,与众多开发者分享了如何打造一个Apache ...

  5. 全球首次!阿里云把 Apache 顶级开源项目会议搬到线上

    2019 年 12 月,Flink Forward 亚洲站邀请了来自阿里巴巴.字节跳动.滴滴.美团点评.小米.bilibili.快手等一线厂商 45 位技术大佬分享其技术心得和实战干货,以及 Flin ...

  6. 专访Niclas Hedhman:Apache欢迎什么样的开源项目?

    11月18日,由开源社主办的中国开源年会COSCon17在上海召开.前Apache基金会副总裁Niclas Hedhman在大会上分享了<Apache软件基金会的故事>以及<The ...

  7. apache madlib 教程_Apache顶级开源项目——机器学习库MADlib简介与应用实例

    原标题:Apache顶级开源项目--机器学习库MADlib简介与应用实例 Apache MADlib是Pivotal与UCBerkeley合作的一个开源机器学习库,提供了精确的数据并行实现.统计和机器 ...

  8. 盘点大数据生态圈,那些繁花似锦的开源项目

     盘点大数据生态圈,那些繁花似锦的开源项目 发表于12小时前| 2466次阅读| 来源CSDN| 6 条评论| 作者仲浩 大数据开源HadoopSpark width="22" ...

  9. 大数据相关开源项目汇总

    调度与管理服务 **Azkaban **是一款基于Java编写的任务调度系统任务调度,来自LinkedIn公司,用于管理他们的Hadoop批处理工作流.Azkaban根据工作的依赖性进行排序,提供友好 ...

最新文章

  1. ***:***之路的必备技能
  2. linux下vi命令修改文件及保存的使用方法
  3. 4种方法可以缓解网络瓶颈
  4. DL之InceptionV2/V3:InceptionV2 InceptionV3算法的简介(论文介绍)、架构详解、案例应用等配图集合之详细攻略
  5. c语言机器人编程软件,Coconut编程机器人软件官方版下载_Coconut编程机器人软件 v1.3.4官方版 - Win7旗舰版...
  6. select 选择器php,php – 选择laravel 5.4中下拉列表的选定值
  7. synchronized()_深入理解synchronized
  8. Docker学习总结(66)—— Docker 的三大基石:Namespace、Cgroup 和 rootfs
  9. 论文阅读笔记五十三:Libra R-CNN: Towards Balanced Learning for Object Detection(CVPR2019)
  10. 只谈Network,不谈Social,互联网营销
  11. vuex-token的持久化
  12. 记录一次项目中代码大致优化方向
  13. 【上网】微信能上网,谷歌浏览器上不了网,怎么解决?
  14. 中文语音合成TTS (TensorFlowTTS)免费API资源及DEMO
  15. 信噪比与雷达探测距离之间关系
  16. 魅族4usb计算机连接,魅族MX4手机如何连接电脑
  17. 第二周 Linux文件管理类命令及bash基本特性
  18. 【数组练习题】计算一下牧场中的草丛数量(详细代码)
  19. MTC110-16-ASEMI可控硅模块MTC110-16
  20. 大学计算机实验报告虚拟机,1虚拟机安装和使用实验报告书

热门文章

  1. [Unity]Shader利用Geometry处理实现描边效果
  2. php存在文件夹_PHP创建文件夹 PHP判断文件夹文件是否存在
  3. 【英语:基础进阶_核心词汇扩充】E4.常见词根拓词
  4. Android 的媒体路由功能应用与框架解析
  5. python实现小程序_python实现小程序
  6. VS2015 更换序列号
  7. chrome 插件个人使用推介
  8. JSD-2204-创建Spring项目-Day19
  9. http://cdn.ac.nbutoj.com/Problem/view.xhtml?id=1180
  10. 64位Windows10+Code::Blocks+CUDA安装教程