Přeskočit na obsah
_CORE
AI & Agentic Systems Core Informační Systémy Cloud & Platform Engineering Data Platforma & Integrace Security & Compliance QA, Testing & Observability IoT, Automatizace & Robotika Mobile & Digital Banky & Finance Pojišťovnictví Veřejná správa Obrana & Bezpečnost Zdravotnictví Energetika & Utility Telco & Média Průmysl & Výroba Logistika & E-commerce Retail & Loyalty
Reference Technologie Blog Knowledge Base O nás Spolupráce Kariéra
Pojďme to probrat

Apache Flink — real-time stream processing engine

01. 01. 2024 1 min čtení intermediate

Flink je nejpokročilejší engine pro stream processing. Exactly-once sémantika, event time processing a state management.

Stream-first přístup — batch je speciální případ streamingu.

CREATE TABLE orders (
    order_id STRING,
    amount DECIMAL(10,2),
    order_time TIMESTAMP(3),
    WATERMARK FOR order_time AS order_time - INTERVAL '5' SECOND
) WITH ('connector' = 'kafka', 'topic' = 'orders', 'format' = 'json');

SELECT
    TUMBLE_START(order_time, INTERVAL '5' MINUTE) AS window_start,
    COUNT(*) AS order_count,
    SUM(amount) AS revenue
FROM orders
GROUP BY TUMBLE(order_time, INTERVAL '5' MINUTE);

Porovnání

  • Flink — true streaming, nejnižší latence
  • Spark Streaming — micro-batch, batch+stream hybrid
  • Kafka Streams — library, jednoduché transformace

Shrnutí

Flink je top volba pro nízkou latenci a exactly-once processing. Flink SQL zpřístupňuje streaming analytikům.

apache flinkstream processingreal-timestateful