SkillsApr 16, 2026·3 min read

Apache SeaTunnel — High-Performance Data Integration Engine

Fast, distributed, cloud-native data integration tool for batch and streaming data synchronization across 100+ sources and sinks.

Agent ready

Review-first install path

This asset needs a review step. The copied prompt tells the agent to dry-run, show the writes, then proceed only after confirmation.

Needs Confirmation · 64/100Policy: confirm
Agent surface
Any MCP/CLI agent
Kind
Skill
Install
Single
Trust
Trust: Community
Entrypoint
SeaTunnel Integration
Review-first command
npx -y tokrepo@latest install b9625074-3931-11f1-9bc6-00163e2b0d79 --target codex

Dry-run first, confirm the writes, then run this command.

TL;DR
SeaTunnel synchronizes data across 100+ sources and sinks with a unified batch and streaming engine.
§01

What it is

Apache SeaTunnel is a distributed data integration engine that synchronizes data between 100+ sources and sinks in both batch and streaming modes. It supports databases (MySQL, PostgreSQL, Oracle), data warehouses (BigQuery, Snowflake, Redshift), file systems (HDFS, S3, local), and message queues (Kafka, Pulsar). Jobs are defined in YAML or JSON configuration files.

SeaTunnel targets data engineers who need to move data between heterogeneous systems at scale. It suits ETL pipelines, data lake ingestion, database migration, and real-time data synchronization scenarios.

§02

How it saves time or tokens

This workflow provides the download, installation, and a sample job configuration. Instead of writing custom data pipeline code for each source-sink pair, you define a YAML config and SeaTunnel handles connection management, parallelism, fault tolerance, and data type mapping.

§03

How to use

  1. Download and install SeaTunnel:
wget https://dlcdn.apache.org/seatunnel/2.3.5/apache-seatunnel-2.3.5-bin.tar.gz
tar -xzf apache-seatunnel-2.3.5-bin.tar.gz
cd apache-seatunnel-2.3.5
  1. Create a job configuration:
# config/mysql_to_postgres.conf
env {
  parallelism = 4
  job.mode = "BATCH"
}

source {
  Jdbc {
    url = "jdbc:mysql://localhost:3306/source_db"
    driver = "com.mysql.cj.jdbc.Driver"
    user = "root"
    password = "password"
    query = "SELECT * FROM orders"
  }
}

sink {
  Jdbc {
    url = "jdbc:postgresql://localhost:5432/target_db"
    driver = "org.postgresql.Driver"
    user = "postgres"
    password = "password"
    table = "orders"
  }
}
  1. Run the job:
./bin/seatunnel.sh --config config/mysql_to_postgres.conf
§04

Example

# Streaming from Kafka to Elasticsearch
env {
  parallelism = 2
  job.mode = "STREAMING"
  checkpoint.interval = 10000
}

source {
  Kafka {
    bootstrap.servers = "kafka:9092"
    topic = "events"
    format = "json"
  }
}

sink {
  Elasticsearch {
    hosts = ["http://elasticsearch:9200"]
    index = "events-${now}"
  }
}
§05

Related on TokRepo

§06

Common pitfalls

  • JDBC connector requires the database driver JAR in the lib directory. SeaTunnel does not bundle proprietary drivers like MySQL or Oracle.
  • Parallelism settings higher than source partitions waste resources. Match parallelism to the data distribution of your source.
  • Streaming mode requires checkpoint configuration for fault tolerance. Without checkpoints, a failure restarts the job from the beginning.

Frequently Asked Questions

What data sources does SeaTunnel support?+

SeaTunnel supports 100+ connectors including MySQL, PostgreSQL, Oracle, MongoDB, Kafka, Pulsar, S3, HDFS, Elasticsearch, BigQuery, Snowflake, Redshift, ClickHouse, and many more. Each connector handles its own data type mapping.

How does SeaTunnel compare to Apache Spark?+

SeaTunnel focuses on data integration (moving data between systems) while Spark focuses on data processing (transformations, analytics). SeaTunnel is lighter weight and does not require a Spark cluster. It uses its own Zeta engine or can run on Spark/Flink.

Does SeaTunnel support real-time streaming?+

Yes. Set job.mode to STREAMING in the configuration. SeaTunnel continuously reads from the source and writes to the sink with configurable checkpoint intervals for fault tolerance.

Can I transform data during transfer?+

Yes. SeaTunnel supports transform plugins for filtering rows, renaming columns, type conversion, and custom SQL transformations between source and sink.

Is SeaTunnel production-ready?+

Yes. Apache SeaTunnel is an Apache Software Foundation project used in production for data integration workloads. It provides fault tolerance, exactly-once semantics in streaming mode, and horizontal scaling.

Citations (3)

Discussion

Sign in to join the discussion.
No comments yet. Be the first to share your thoughts.

Related Assets