Big Data 78 min read

Apache Flink 1.7–1.14 Release Highlights and Feature Evolution

This article provides a comprehensive overview of Apache Flink's major releases from version 1.7 to 1.14, detailing new APIs, state management improvements, Kubernetes integration, SQL and Table API enhancements, checkpointing advances, and performance optimizations that together illustrate the platform's evolution for both streaming and batch processing workloads.

Big Data Technology & Architecture
Big Data Technology & Architecture
Big Data Technology & Architecture
Apache Flink 1.7–1.14 Release Highlights and Feature Evolution

Flink 1.7

Introduced Scala 2.12 support, Exactly‑once S3 StreamingFileSink, MATCH_RECOGNIZE in Streaming SQL, Temporal Tables and Joins, a versioned REST API, Kafka 2.0 connector, local recovery, and removal of the legacy mode.

Flink 1.8

Added Schema Evolution, TTL‑based state cleanup, user‑defined functions in SQL, RFC‑compliant CSV format, new KafkaDeserializationSchema, and several connector and API improvements.

Flink 1.9

Featured fine‑grained batch job recovery, State Processor API, stop‑with‑savepoint, a redesigned Web UI, Blink‑based SQL planner preview, and extensive Table API/SQL enhancements including DDL support and temporal table joins.

Flink 1.10

Major upgrade with over 200 contributors, improved memory management, unified job submission logic, native Kubernetes (beta) integration, production‑ready Hive integration, expanded PyFlink UDF support, and numerous connector and optimizer updates.

Flink 1.11

Made Blink planner the default, introduced unaligned checkpoints, a new Source API, CDC support in Table & SQL, JDBC catalog, enhanced Hive real‑time warehousing, and significant stability and production‑ready features such as application mode and improved checkpointing.

Flink 1.12

Unified DataStream API with batch execution mode, new Data Sink API, Kubernetes‑based HA, metadata handling in SQL connectors, upsert‑Kafka connector, temporal table joins, and extensive Python API enhancements including stateful DataStream operations and UDAFs.

Flink 1.13

Introduced window table‑valued functions, declarative source/sink registration, a new code generator, removal of the old planner, Python DataStream API performance improvements, LoopBack mode for local execution, and many Table API/SQL refinements.

Flink 1.14

Focused on unified streaming‑batch processing, reactive scaling, performance diagnostics (back‑pressure, CPU flame graphs, state access latency), checkpointing for finite streams, state‑backend switching with savepoints, fine‑grained resource management, and further SQL/Table API enhancements such as session windows and improved code generation.

Key Code Snippets

./bin/flink run -d -e kubernetes-session -Dkubernetes.cluster-id= examples/streaming/WindowJoin.jar
CREATE TABLE kafka_table (
  id BIGINT,
  name STRING,
  event_time TIMESTAMP(3) METADATA FROM 'timestamp',
  headers MAP METADATA
) WITH (
  'connector' = 'kafka',
  'topic' = 'test-topic',
  'format' = 'avro'
);
StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();
env.setRuntimeMode(RuntimeMode.BATCH);
Original Source

Signed-in readers can open the original source through BestHub's protected redirect.

Sign in to view source
Republication Notice

This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactadmin@besthub.devand we will review it promptly.

PythonSQLState ManagementKubernetesBatch ProcessingApache FlinkStreamingCheckpoint
Big Data Technology & Architecture
Written by

Big Data Technology & Architecture

Wang Zhiwu, a big data expert, dedicated to sharing big data technology.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.