Apache Flink features two relational APIs, SQL and Table API, as unified APIs for stream and batch processing.
Apache Flink features two relational APIs:
- SQL (via Apache Calcite)
- Table API, a language-integrated query (LINQ) interface
Both APIs are unified APIs for stream and batch processing. This means that the a query returns the same result regardless whether it is applied on a static data set or a data stream. SQL queries are parsed and optimized by Apache Calcite (Table API queries are optimized by Calcite).
Both APIs are tightly integrated with Flink's DataStream and DataSet APIs.