dongzl / incubator-seatunnel

SeaTunnel is a distributed, high-performance data integration platform for the synchronization and transformation of massive data (offline & real-time).

Home Page:https://seatunnel.apache.org/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Apache SeaTunnel (Incubating)

seatunnel logo

Backend Workflow Slack Twitter Follow


EN doc CN doc

SeaTunnel was formerly named Waterdrop , and renamed SeaTunnel since October 12, 2021.


SeaTunnel is a very easy-to-use ultra-high-performance distributed data integration platform that supports real-time synchronization of massive data. It can synchronize tens of billions of data stably and efficiently every day, and has been used in the production of nearly 100 companies.

Why do we need SeaTunnel

SeaTunnel will do its best to solve the problems that may be encountered in the synchronization of massive data:

  • Data loss and duplication
  • Task accumulation and delay
  • Low throughput
  • Long cycle to be applied in the production environment
  • Lack of application running status monitoring

SeaTunnel use scenarios

  • Mass data synchronization
  • Mass data integration
  • ETL with massive data
  • Mass data aggregation
  • Multi-source data processing

Features of SeaTunnel

  • Easy to use, flexible configuration, low code development
  • Real-time streaming
  • Offline multi-source data analysis
  • High-performance, massive data processing capabilities
  • Modular and plug-in mechanism, easy to extend
  • Support data processing and aggregation by SQL
  • Support Spark structured streaming
  • Support Spark 2.x

Workflow of SeaTunnel

seatunnel-workflow.svg

Source[Data Source Input] -> Transform[Data Processing] -> Sink[Result Output]

The data processing pipeline is constituted by multiple filters to meet a variety of data processing needs. If you are accustomed to SQL, you can also directly construct a data processing pipeline by SQL, which is simple and efficient. Currently, the filter list supported by SeaTunnel is still being expanded. Furthermore, you can develop your own data processing plug-in, because the whole system is easy to expand.

Plugins supported by SeaTunnel

Connector

Connector Type
Source
Sink
Clickhouse doc
Doris doc
Druid doc doc
ElasticSearch doc doc
Email doc
Fake doc
File doc doc
Hbase doc doc
Hive doc doc
Hudi doc doc
Iceberg doc doc
InfluxDb doc doc
Jdbc doc doc
Kafka doc doc
Kudu doc doc
MongoDB doc doc
Neo4j doc
Phoenix doc doc
Redis doc doc
Socket doc
Tidb doc doc

Transform

Transform Plugins
Add
CheckSum
Convert
Date
Drop
Grok
Json
Kv
Lowercase
Remove
Rename
Repartition
Replace
Sample
Split
Sql
Table
Truncate
Uppercase
Uuid

Environmental dependency

  1. java runtime environment, java >= 8

  2. If you want to run SeaTunnel in a cluster environment, any of the following Spark cluster environments is usable:

  • Spark on Yarn
  • Spark Standalone

If the data volume is small, or the goal is merely for functional verification, you can also start in local mode without a cluster environment, because SeaTunnel supports standalone operation. Note: SeaTunnel 2.0 supports running on Spark and Flink.

Compiling project

Follow this document.

Downloads

Download address for run-directly software package : https://seatunnel.apache.org/download

Quick start

Spark https://seatunnel.apache.org/docs/deployment

Flink https://seatunnel.apache.org/docs/deployment

Detailed documentation on SeaTunnel https://seatunnel.apache.org/docs/intro/about

Application practice cases

  • Weibo, Value-added Business Department Data Platform

Weibo business uses an internal customized version of SeaTunnel and its sub-project Guardian for SeaTunnel On Yarn task monitoring for hundreds of real-time streaming computing tasks.

  • Sina, Big Data Operation Analysis Platform

Sina Data Operation Analysis Platform uses SeaTunnel to perform real-time and offline analysis of data operation and maintenance for Sina News, CDN and other services, and write it into Clickhouse.

  • Sogou, Sogou Qiqian System

Sogou Qiqian System takes SeaTunnel as an ETL tool to help establish a real-time data warehouse system.

  • Qutoutiao, Qutoutiao Data Center

Qutoutiao Data Center uses SeaTunnel to support mysql to hive offline ETL tasks, real-time hive to clickhouse backfill technical support, and well covers most offline and real-time tasks needs.

  • Yixia Technology, Yizhibo Data Platform

  • Yonghui Superstores Founders' Alliance-Yonghui Yunchuang Technology, Member E-commerce Data Analysis Platform

SeaTunnel provides real-time streaming and offline SQL computing of e-commerce user behavior data for Yonghui Life, a new retail brand of Yonghui Yunchuang Technology.

  • Shuidichou, Data Platform

Shuidichou adopts SeaTunnel to do real-time streaming and regular offline batch processing on Yarn, processing 3~4T data volume average daily, and later writing the data to Clickhouse.

  • Tencent Cloud

Collecting various logs from business services into Apache Kafka, some of the data in Apache Kafka is consumed and extracted through Seatunnel, and then store into Clickhouse.

For more use cases, please refer to: https://seatunnel.apache.org/blog

Code of conduct

This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code. Please follow the REPORTING GUIDELINES to report unacceptable behavior.

Developer

Thanks to all developers!

Contact Us

Landscapes



  

SeaTunnel enriches the CNCF CLOUD NATIVE Landscape.

Our Users

Various companies and organizations use SeaTunnel for research, production and commercial products. Visit our website to find the user page.

License

Apache 2.0 License.

About

SeaTunnel is a distributed, high-performance data integration platform for the synchronization and transformation of massive data (offline & real-time).

https://seatunnel.apache.org/

License:Apache License 2.0


Languages

Language:Java 65.9%Language:Scala 32.7%Language:Shell 1.1%Language:Dockerfile 0.3%