登录
注册
回到首页
AI搜索
发现报告
发现数据
专题报告
研选报告
定制报告
VIP权益
发现大使
发现一下
热门搜索:
新能源车
AIGC
Chatgpt
大模型
新质生产力
低空经济
当前位置:首页
/
行业研究
/
报告详情
/
3-1 Apache InLong 的 SPI 扩展实践 - 周康
信息技术
2022-09-15
DataFunSummit2022:数据治理在线峰会
睿***
AI智能总结
查看更多
Apache InLong简介
项目简介
:Apache InLong 是一个一站式的海量数据集成框架,提供自动、安全、可靠和高性能的数据传输能力,支持流式数据分析、建模和应用。
适用场景
:适用于广告、支付、社交、游戏、运营商、人工智能等领域,依托腾讯百万亿级别的数据接入和处理能力。
InLong Manager简介
作用
:InLong Manager 用于管理系统和任务的元数据,通过 Web UI 或命令行工具创建数据流任务,并串联数据的全流程。
具体步骤
:
创建目标端的库表结构。
创建 MQ 的 Topic 和消费者。
启动 Flink 任务,从 MQ 消费数据并写入目标端。
下发采集任务,向 MQ 生产数据。
InLong Manager 的 SPI 改造实践
存在的问题
在 InLong 上云过程中,数据源端和目标端类型急剧增多,导致维护成本高、难以扩展。
大量相似代码(if-else/switch-case)导致难以维护。
什么是 SPI
SPI
:Service Provider Interface,是 Java 提供的一套 API,用于框架扩展和替换组件。常见示例包括加载数据库驱动、SLF4J 日志实现类等。
改造过程
精简服务层代码
:删除繁琐的 if-else/switch-case,收敛 Service 层接口,同一领域模型的请求都在同一个 Service 接口中处理。
重构数据库实体模型
:一张表支持任意类型 Sink 的配置,通过扩展字段(KV, JSON)存储特有字段。
具体实现
:不同类型 Sink 的特有参数转换为 JSON 格式存储,查询时解析成特定 DTO。
改造后的收益
代码复用性提高
:减少了大量重复/相似逻辑的代码,降低维护成本。
代码扩展性增强
:增加不同类型的配置只需实现其特殊逻辑,无需改动已有接口。
表的 DDL 更稳定
:降低维护成本,避免因修改 DDL/增加新表引发线上问题。
扩展灵活性
:可以在不侵入修改开源代码的情况下,扩展腾讯内部的配置类型,加入内网特有的业务逻辑。
你可能感兴趣
3-1 Apache InLong 一站式海量数据集成框架原理和实践
信息技术
DataFunSummit2022:大数据存储架构峰会
2022-07-19
3-1 通过 dbt 把软件开发的最佳实践带到数据领域
信息技术
DataFunSummit2022:现代数据栈技术峰会
2022-11-02
5-4 Apache Spark 在自助分析系统的应用实践与优化
信息技术
DataFunSummit2022:现代数据栈技术峰会
2022-11-02
4-6 Apache Iceberg 在小红书的探索与实践
文化传媒
DataFunSummit2022:大数据存储架构峰会
2022-07-19
小米集团基于 Apache Doris 的 OLAP 实践
电子设备
DataFunSummit2023:OLAP引擎架构峰会
2023-08-09