Apache Flink is an open-source stream processing framework for stateful computation over data streams. It treats streaming as the primary model — with batch as a special case of bounded streams — and provides event-time semantics, watermarks, and large, exactly-once-consistent managed state.
Applications are written against DataStream APIs (Java/Scala, with Python via PyFlink) or Flink SQL, and commonly consume from and produce to Kafka. Checkpointing to durable storage underpins fault tolerance for long-running jobs.
Flink is the reference choice for demanding low-latency workloads: streaming ETL, real-time feature computation, alerting, and continuously maintained materialized views. Managed offerings exist across the major clouds and vendors such as Confluent and Ververica.