暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

对话 Contributor | 我在 SeaTunnel 学到的个人“硬实力”

SeaTunnel 2022-08-30
1275

   点亮 ⭐️ Star · 照亮开源之路

GitHub:https://github.com/apache/incubator-seatunnel


    

开源不止,微小的贡献都将汇聚成推动 SeaTunnel 社区向前发展的巨大动力。本期「对话 Contributor」栏目中,我们将介绍一位活跃的社区 Contributor,田超。


个人简介


个人简介


田超 高级大数据开发工程师


Github:tyrantlucifer


个人擅长研究领域:聚焦于数据集成与数据开发相关研究,对于市面上常见的数据集成框架内核原理和分布式数据引擎内核原理有一定的了解,例如:DataX、Seatunnel、Spark、Flink 等。

社区贡献

01

代码贡献


  • 2.1.0 版本翻译 spark-base-api 从 scala 版本到 java 版本
  • 2.1.3 版本为新版本 file connector 添加 parquet、orc 文件支持
  • 2.1.3 版本为新版本 hive connector 添加 parquet、orc 文件支持
  • 2.1.3 版本开发新版本 http sink connector sink
  • 2.1.3 版本开发新版本 feishu sink connector 
  • 解决若干 e2e 测试方面的 bug,例如 flink docker 镜像没有 hadoop 依赖、某些包依赖冲突等
  • 解决了 seatunnel-spark-connector-v2-examples 中存在的 jar 包依赖冲突 bug
  • 为新版 file connector 添加完整的 e2e 测试
  • 为新版本 http connector 添加完整的 e2e 测试
  • 为新版本的 source connectors 添加了公共的解析用户自定义模式的功能
  • 为 seatunnel-engine 开发了自定义类加载器
  • 维护官网文档,为所有插件添加了对应的描述信息

02

非代码贡献


参加 SeaTunnel 社区组织的线上交流会,促进社区交流和 SeaTunnel 项目传播。

与 SeaTunnel 结缘


我所在的公司当时也在做自己的低代码数据开发引擎,但是效果不是很理想,基于 akka-stream 构建了一套实时流处理计算引擎,可公司大多数是离线需求,这套引擎在数据处理效率上有所欠缺。

为了解决这个痛点,我当时去调研了当前市面上比较好用的数据集成框架,SeaTunnel 当时还叫 Waterdrop,从这时起我就开始与 Seatunnel 有了不
解之缘。

调研与对比


在调研中,与其他竞品的对比让我发现了 SeaTunnel 的一些优势:
  • 简单易用,灵活配置,无需开发;
  • 模块化和插件化;
  • 支持利用 SQL 做数据处理和聚合;
  • 由于其高度封装的计算引擎架构,可以很好的与中台进行融合,对外提供分布式计算能力。
当然也有一些缺点,比如当时版本对 Flink 版本升级向上兼容的问题,Spark 作业虽然可以很快配置,但相关人员还需要懂一些参数的调优才能让作业效率更优等问题。

相关竞品及对比(当时的对比,与最新状况可能有出入)

  • FlinkX,现已更名为chunjun
  • StreamX
  • DataX


当时,公司内部开发了一套基于 1.5.x 版本 SeaTunnel 和 DataX 的数据同步系统, 主要场景是做数据同步。我们在计算引擎层之上开发了一套自己的任务解析层,通俗一点来讲就是根据内部任务格式去生成 Datax 或者SeaTunnel 所能够认识的配置文件,然后调度起来这些 DataX 或 SeaTunnel 任务。

开源于我


仔细算算,我从大学就开始就接触到了开源,距今有 5 年之余,刚开始只是逛一下开源社区看一些当前的热门项目,并没有开始贡献和提交代码。后来 git 技能稍微熟练了一点,我才开始将自己的一些代码放在 GitHub 上,但自己写的项目平平无奇,无人问津(主要是菜,手动狗头)。

在工作之后出现了契机,自己有了一定的产品思维,也更能够理解目前大家更需要什么样的功能,我把自己写的一个小工具开源出来并收获了 600+ star,这算是我在开源领域取得的第一个小成就。

后来我接触到了 DataX 和 SeaTunnel,阅读了它们的代码并开始关注社区,自此也开始了自己在开源社区的贡献之路。

社区初印象


社区有很多大牛,而且非常活跃,每天都有更新,大牛们也很热心给我review 代码和提出一定的建议。

参与 SeaTunnel 社区首先能够让我真切感受到 Apache 的开源精神,其次会让我学习到很多前辈的代码设计思想以及 Apache 项目的管理流程。

对社区的话


我希望能够在社区里跟大牛们学习到更多,包括架构设计、项目流程等,提升自己的个人硬实力。我的代码能够被社区认可已经感到非常荣幸,这些已经足矣。

最后,目前 SeaTunnel 在开发自己新的 connector 和新的计算引擎,我觉得按照这个发展趋势,SeaTunnel 一定会成为顶级的数据集成项目。

Apache SeaTunnel

//  保持联络 //

微信号 : Seatunnel

来,和社区一同成长!

Apache SeaTunnel(Incubating) 是一个分布式、高性能、易扩展、用于海量数据(离线&实时)同步和转化的数据集成平台。

仓库地址: 
https://github.com/apache/incubator-seatunnel

网址:
https://seatunnel.apache.org/

Proposal:
https://cwiki.apache.org/confluence/display/INCUBATOR/SeaTunnelProposal

Apache SeaTunnel(Incubating) 2.1.0 下载地址:
https://seatunnel.apache.org/download
 
衷心欢迎更多人加入!

能够进入 Apache 孵化器,SeaTunnel(原 Waterdrop) 新的路程才刚刚开始,但社区的发展壮大需要更多人的加入。我们相信,在「Community Over Code」(社区大于代码)、「Open and Cooperation」(开放协作)、「Meritocracy」(精英管理)、以及「多样性与共识决策」等 The Apache Way 的指引下,我们将迎来更加多元化和包容的社区生态,共建开源精神带来的技术进步!

我们诚邀各位有志于让本土开源立足全球的伙伴加入 SeaTunnel 贡献者大家庭,一起共建开源!

提交问题和建议:
https://github.com/apache/incubator-seatunnel/issues

贡献代码:
https://github.com/apache/incubator-seatunnel/pulls

订阅社区开发邮件列表 : 
dev-subscribe@seatunnel.apache.org

开发邮件列表:
dev@seatunnel.apache.org

加入 Slack:
https://join.slack.com/t/apacheseatunnel/shared_invite/zt-1cmonqu2q-ljomD6bY1PQ~oOzfbxxXWQ

关注 Twitter: 
https://twitter.com/ASFSeaTunnel


往期推荐





SeaTunnel 2.1.2 封装 Flink 连接数据库的源码解析




SeaTunnel Connector 接入计划已有多个任务完成,Switch、华为 MatePad 等你带回家!




开源星「001号」落地 SeaTunnel,欢迎你登陆赢神秘大礼包!



点击“阅读原文”,加入开源

文章转载自SeaTunnel,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论