Exchangis V1.0.0 版本发布--一款开源的轻量级数据交换平台
Exchangis是微众银行开源的轻量级数据交换平台,用于数据在不同存储介质中快速传递,并解决数据交换过程中面临的复杂性、兼容性等问题。设计上采取微服务架构形态,上下层服务松耦合,易于进行个性化的,高拓展性的迭代开发。
Exchangis开源项目地址:
gitee地址: https://gitee.com/WeBank/Exchangis
Github地址:https://github.com/WeBankFinTech/Exchangis
1.Exchangis是什么
Exchangis是一个数据交换系统,便捷且安全地进行数据交换流程是其主要职责。它提供创建和管理数据交换任务的功能,目的是以类似任务总线的方式,满足现有的同构或者异构数据源之间数据传输、管理的需求。Exchangis将数据交换中涉及的数据源抽象化,可以随时更新和修正数据源连接,数据交换任务的执行流程也被拆分成几大部分,对任务有更细粒度的管理。Exchangis底层使用的执行引擎具有可替换性,目前主要使用的执行引擎是基于阿里DataX框架二次开发后的成果,支持以记录或者二进制两种方式进行数据传输。
2.为什么需要Exchangis
随着数据利用率的提高和数据共享行为变得频繁,对于大数据平台应用开发来说,如何进行数据交换是每个平台组件都绕不过去的问题,以此产生了如下的痛点:
- 随着大数据平台数据来源的增多,以及大数据集群本身之间的隔离,数据彼此之间缺少稳定安全的传输交换通道。
- 不同业务数据的存储方式不一样,缺少统一标准的数据交换协议。
- 数据所处的网络环境不一样,没有便捷的平台管理工具。
- 数据通常对应有不同的数据属主和用户权限,不同用户之间的数据交换方向不可控。
- 缺少用户级的产品,来定制化自己的传输通路。
可以说Exchangis的设计就是为了解决如上的痛点,作为一个平台系统,它针对数据交换的业务场景抽象出了一套统一的数据来源到目的的元数据映射结构,极大降低了用户使用数据交换的学习和使用成本,使数据在不同存储系统、不同存储格式之间的流转,变得更加的简单和易用,同时结合了数据权限管理的功能,增强用户对数据传输流向的把控和监管能力。
3.Exchangis的技术架构
Exchangis的设计理念是将平台的相关特性在高层抽象化为统一入口,例如任务作业管理,执行调度,权限管控等,而在底层方面(特指底层传输引擎)则采用多架构多实现的形式(例DataX等传输框架),不同架构之间彼此隔离,可以选择在旧传输架构上合理新增新特性,也可以选择引入新传输架构。而对于用户来说,入口是稳定且统一的。这使得Exchangis在特性拓展上有一定的灵活性。
- WEB/GATEWAY Container,界面和网关服务容器,用于各个服务容器之间的鉴权,外部请求的鉴权和与外部鉴权服务器的交互,维护着整个平台的路由链路。
- SERVICE Container,管理着多组和用户使用相关的API接口,是用户创建配置数据源,配置执行数据交换任务等业务操作的入口
- EXECUTOR Container,实际执行数据交换任务的容器,可以对接多种执行引擎,引擎之间可以自由切换,同时还维护任务作业的多种监听线程,监听作业日志、是否超时和作业资源分配。
4.Exchangis核心特征
- 较为完善的数据源管理
用户可以分别维护自己的数据源,通过绑定项目的方式共享自己的数据源,同时可以设置数据源的对外权限,控制数据的流入和流出。
- 多传输引擎支持
传输底层可以横向扩展,目前聚合了离线批量传输引擎DataX和大数据批量导数引擎Sqoop,对两者功能进行了整合,还可以继续做动态扩充。
- 多引擎服务管理
基于Spring Cloud的特性,可以动态扩充系统的某项服务,系统会接收这些服务上报的机器信息,调整调度传输任务的负载均衡策略,同时提供统一的服务管理界面,允许管理员对这些服务进行创建系统用户等基本的机器底层操作。
- 支持近实时的任务管控
可以快速地抓取传输任务的日志以及传输速率等信息,可以实时地关闭正在运行的任务,并根据当下网络情况对单个运行中任务进行动态限流处理。
- 任务状态自检流程
系统会周期性地去捕捉长时间运行的任务和排队等待的任务,检验任务状态是否异常,对异常的任务及时释放占用的资源并收集告警信息发出
- 支持无结构化数据传输
对底层批量传输引擎做架构改造,单独构建二进制流快捷通道,适用于某些无数据转换的纯数据同步的需求。
5.Exchangis和WeDataSphere
WeDataSphere是一套一站式、金融级、开源开放大数据平台套件,已在国内最大线上银行WeBank,经过了数年海量严苛金融业务场景的打磨和验证,表现卓越。
更多关于WeDataSphere的介绍,请访问:https://github.com/WeBankFinTech/WeDataSphere
Exchangis作为WeDataSphere的数据交换组件,负责各个工具组件与外部环境之间的数据传递工作,相对其他WeDataSphere组件,Exchangis以轻量级少依赖为设计出发点,目前还暂时处理独立状态,但部分功能例如数据源管理,已整合进已开源的Linkis组件中,后续Exchangis也将作为WeDataSphere Studio中的节点被使用。
6.Exchangis的前景规划
Exchangis数据交换系统在开源版本上后续会同步做两方面的提升,一方面是自身系统架构的优化改造,支持作业拆分调度,以分布式的形式执行子作业,充分利用集群每个传输节点的资源,并逐步开放支持的数据类型,接入更多的执行引擎;对于现有引擎例如DataX,则是会继续开放一读多写,断点续传等二次开发后的新特性。另一方面是和WeDataSphere社区其他开源组件的整合, Exchangis会将其数据源模块统一集成到Linkis组件中,而底层的引擎部分也会逐步做成Linkis的Engine引擎,会和Linkis做同步的适配。而对于DSS(DataSphere Studio),Exchangis则会以插件化的方式嵌入到其中,作为应用数据开发的第三方节点存在。
7.总结
Exchangis数据交换系统,提供了一个通用化的平台,整合并增强了现有的传输交换引擎功能,为后续的改进优化提供了可能。由于篇幅的限制,本文就不再多论述更多的设计点和优化点,期待有更多的开源社区力量,帮助和完善Exchangis的设计,推动其更进一步的成长。
欢迎关注并且star。
gitee地址: https://gitee.com/WeBank/Exchangis

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
一文搞懂华为HMS ML Kit文本识别,银行卡识别,通用卡证识别,身份证识别
一文搞懂华为HMS ML Kit文本识别,银行卡识别,通用卡证识别,身份证识别 1前言 查看华为开发者联盟网站的机器学习服务业务介绍(https://developer.huawei.com/consumer/cn/doc/development/HMS-Guides/ml-introduction-4) 可以看到华为HMS把机器学习服务纳入了文本类,语言类,图片类,人脸人体类四大服务,后面新特性同时不断增加中,其中某些类是文本类服务,文本类服务里面又含了文本识别,文档识别,身份证识别,银行卡识别,通用卡证识别,这些子服务之间都有一些差异和关联呢,可能很多小伙伴会傻傻分不清,今天小编重点剖析下文本类服务,来看下这几个子服务间的差异和关联。 2应用场景差异 首先看下文本类服务包含的子服务内容和对应的场景差异 服务 场景差异 说明 文字识别 稀疏的文本,收据,名片 支持的识别范围和场景“广”,啥都能识别,只要是拉丁字符,日韩,中英的文字都可以识别。 文档识别 包含文档的密集文本图片,尺寸文章,合同等 需要识别出带一级格式的文本信息,此处需要更多云端的运算能力,有更广泛的语言种类支持能力。 ...
- 下一篇
企业级 React 组件库 tinper-bee 发布 2.3.7 版本
企业级 React 组件库 tinper-bee 发布 2.3.7版本,更新内容: 🌟 时间控件回车如果没有值,回填默认时间,并关闭面板 🐞 消息提示Tooltip onVisibleChange单独使用不生效。 🌟 复杂表格组件单选修改 selectedRowIndex 动态设置不生效问题 🐞 Tree组件树参照包含下级需求,checkStrictly 动态改变后,拿到组件内部属性 查看详细升级内容 https://github.com/iuap-design/tinper-bee/releases/tag/v2.3.7
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS8编译安装MySQL8.0.19
- CentOS7,CentOS8安装Elasticsearch6.8.6
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- 设置Eclipse缩进为4个空格,增强代码规范
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16