Streaming
Kafka Connect — integrace systémů bez kódu
Kafka Connect je framework pro integraci Kafky s externími systémy bez psaní kódu. Source konektory čtou data do Kafky, sink konektory zapisují z Kafky — stovky hotových konektorů.
Kafka Connect architektura
Connect běží jako cluster workerů spravujících konektory. Dva typy:
- Source connector — čte z externího systému do Kafka topicu
- Sink connector — zapisuje z Kafka topicu do externího systému
Source connector — PostgreSQL do Kafky
{
"name": "postgres-source",
"config": {
"connector.class": "io.debezium.connector.postgresql.PostgresConnector",
"database.hostname": "postgres",
"database.dbname": "app",
"topic.prefix": "cdc",
"table.include.list": "public.orders"
}
}
Sink connector — Kafka do S3
{
"name": "s3-sink",
"config": {
"connector.class": "io.confluent.connect.s3.S3SinkConnector",
"topics": "orders",
"s3.bucket.name": "data-lake",
"s3.region": "eu-central-1",
"format.class": "io.confluent.connect.s3.format.parquet.ParquetFormat",
"flush.size": 10000,
"rotate.interval.ms": 3600000
}
}
Transformace (SMT)
- Single Message Transforms — jednoduché transformace bez kódu
- Přejmenování polí, maskování, filtrování, routing
Shrnutí
Kafka Connect je nejjednodušší způsob integrace Kafky s externími systémy. Stovky konektorů bez kódu.