在我国,数字化的趋势驱动互联网银行发展走上快车道,近年来互联网银行发展迅速,积极拓展线上业务,并利用大数据技术加强风险控制,积极进行数字化转型。当新兴互联网银行乘着数字化改革的风潮搭档数据集成平台Apache SeaTunnel,成千万上亿的数据就有了快速流通的管道。
在社区的6月份线上用户交流会上,来自某互联网银行的大数据工程师带来了关于互联网银行在Apache SeaTunnel应用与实践方面的分享,以下为演讲整理,供参考(以下“某互联网银行”简称“银行”):
演讲概览
- 演讲人:陈卫
- 演讲日期:2024年6月26日
- 主题:Apache SeaTunnel 2.1.3版本在数据集成领域的应用与定制化实践
背景与需求
随着银行数据集成需求的日益增长,我们需要一种能够支持配置化开发、异构数据源接入,并具备高性能高效率的数据集成工具。经过调研考察,Apache SeaTunnel以其强大的数据处理能力满足了这些需求,所以我们决定采用Apache SeaTunnel。
应用场景
Apache SeaTunnel在银行以下三个主要场景中发挥着重要作用:
- 数据加速:数据仓库在数据模型层对模型进行加工,完成后将大数据平台数据推送至OLAP专属引擎(目前配置ClickHouse引擎),支持用户即时查询。
- 数据推送:将内部管理系统,如指标管理系统、标签管理系统加工后的结果数据推送至目标数据源(MySQL)。
- 数据采集:提高业务系统的数据时效性,及时采集至目标数据源。
SeaTunnel定制化(V2.1.3)
为了更好地适应银行的需求,我们对SeaTunnel进行了一系列的定制化改进:
- 数据源支持:增加了对非Spark直接支持数据源的支持,例如星环Inceptor和Hive事务表。
- 插件优化:
- 自定义插件的增加。
- 迭代优化已有插件,如Jdbc、ClickHouse、Hive、ElasticSearch。
- 其他运行时优化。
特定插件的定制化
Jdbc:
- 增加多查询支持、根据指定字段自动分区。
- Jdbc Sink增加PreSQL执行支持。
- 增加对Inceptor表中事务表的支持。
ClickHouse & Hive:
- 增加PreSQL执行支持。
- 调整Hive数据写入方式。
SeaTunnel的集成应用
与Apache Livy的集成
我们把Apache SeaTunnel融入到已有的Apache Livy服务中,在快速启动、安全性、灵活性上得到了提高。
- 快速启动:通过Livy Client,在同一个SparkContext下运行多个SeaTunnel Job,提升启动效率。
- 安全性:通过Livy访问大数据平台,客户端设置安全认证,无需将整个大数据集群暴露,从而保护大数据集群安全性。
- 灵活性:通过与Livy集成,无需生产本地配置文件,通过Livy job提交SeaTunnel任务,提升系统灵活性。
与Apache DolphinScheduler的集成
- 共享数据源:与SQL等任务使用相同数据源配置,降低配置变更复杂度。
- 参数一致:支持与调度系统一致的参数配置,便于用户学习和使用。
- 元数据一致:银行开发了支持血缘相关功能,支持在任务层面提供与SQL等任务相对的元数据配置,便于系统自动触发。
SeaTunnel实践情况
- 已接入项目数:7个
- 已接入任务数:2000+
- 每日实例数:2000+
- 每日数据量:2TB
- 支持的数据源:星环Inceptor,MySQL,Oracle,ElasticSearch,Remote Hbase, ClickHouse
SeaTunnel总结与展望
- SeaTunnel基本支持了我们当前对异常数据集成的支持,主要集中在数据应用端,后续需推广对数据采集支持,提升数据管道的整体效率;
- SeaTunnel对批量数据采集的应用待完善,尤其是针对分库分表的支持。调度系统侧则需要增加按标志(数据库标志、文件标志等)调度能力的支持;
- SeaTunnel数据集成采集metrics数据完善;
- SeaTunnel数据集成并行度优化(尤其针对ES写入优化)。
加入SeaTunnel社区
欢迎对数据集成感兴趣的开发者和企业加入SeaTunnel社区,共同探讨和推动数据集成技术的发展。
本文由 白鲸开源科技 提供发布支持!