SeaTunnel架构剖析

目录

基础介绍

seaTunnel配置文件由4个部分组成

启动命令

seatunnel覆盖了那部分?

seaTunnel架构剖析

seaTunnel的基石 Api

 SeaTunnel core

SeaTunnel Plugins

 SeaTunnel 使用场景

seaTunnel痛点


基础介绍

seaTunnel是一个分布式、高性能、用于处理海量数据(离线&实时)同步和转换的数据集成工具

注:

分布式体现在能运行在yarn or mesos or More

离线&实时: 丰富的Connector 且支持流批一体

同步和转换:多样的数据处理插件且极易扩展

seaTunnel配置文件由4个部分组成

  • env
  • source
  • transform
  • sink
env{
    app.name=seaTunnel-demo
}

source {
   mysql{
     }
}

transform {
   convert{
   }
}

sink{
   elasticsearch{
    }
}

source + transform +sink 构建了数据处理的Pipeline,满足各种各样的数据处理需求

启动命令

./bin/start-seatunnel.sh --master yarn --deploy-mode client --config ./config/demo.conf

seatunnel覆盖了那部分?

数据处理+数据存储

seaTunnel架构剖析

seaTunnel的基石 Api

 底层Plugin

public interface Plugin<T> extends Serializable {

     config getConfg();
     
     void setConfig(Config config);

     CheckResult checkConfig();

     void prepare(T prepareEnv);
}

BaseSource

public interface BaseSource<T extends RuntimeEnv,OUT> extends Plugin<T>{

    OUT getData(T env);
}

BaseTransform

public interface BaseTransfrom<T extends RuntimeEnv,IN,OUT> extends Plugin<T>{

     OUT process(IN inputData,T env);

}

BaseSink

public interface BaseSink<T extends RuntimeEnv,IN,OUT> extends Plugin<T>{

  OUT output(IN inputData,T env);
}

 SeaTunnel core

 

SeaTunnel Plugins

 SeaTunnel 使用场景

常用

  • 实时数据同步

1. kafka -> ClickHouse/Elasticsearch

  • 异构数据源同步

1. Hive -> ClickHouse

2. MySQL -> Elasticsearch

3. JDBC -> JDBC

  • OLAP CUBE计算

1. kafka -> AGG -> ClickHouse/Elasticsearch

2. Hive -> Hive

seaTunnel痛点

 解决方案 dolphinScheduler与SeaTunnel集成

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值