Apache Flink SQL Ask-Me-Anything

Apache Flink SQL Ask-Me-Anything

Feb 24, 2022

One of the greatest things about Apache Flink (and there are many!) is that it’s available in a variety of programming languages: from the low level APIs accessible in Java and Scala all the way to Python and SQL. The Flink SQL APIs offer very powerful SQL with many useful features and functions: spanning from the definition of time windows, late events or aggregations and also covering advanced topics like pattern detection via MATCH_RECOGNIZE.

In this Ask-Me-Anything session, you’ll get the opportunity to ask your burning questions about Flink SQL from the Flink community members, Martijn Visser (Ververica), and Francesco Tisiot (Aiven) and learn how to create data pipelines with this powerful tool.

About the speakers:

Martijn Visser is Senior Product Manager at Ververica, where he's responsible for the SQL and SDK teams. Before joining Ververica, he worked as Product Lead at ING where he was responsible for the product development of ING's real time streaming analytics and engagement platform.

Twitter: https://twitter.com/MartijnVisser82
LinkedIn: https://www.linkedin.com/in/martijnvisser1982/

Francesco comes from Verona, Italy and works as a Developer Advocate at Aiven. With his many years of experience as a data engineer, he has stories to tell and advice for data-wranglers everywhere. Francesco loves sharing knowledge with others as a speaker and writer, and is on a mission to defend the world from bad Italian food!

Twitter: https://twitter.com/FTisiot
LinkedIn: https://www.linkedin.com/in/francescotisiot/

Follow the conversation on Twitter: @aiven_io, @ApacheFlink, @VervericaData

Timestamps
0:00:21 Introductions
0:01:21 What is Flink SQL?
0:13:23 Isn’t Flink SQL a “false friend” when coming from batch ETLs?
0:15:00 How can you test Flink SQL?
0:18:15 What should I pay attention to when creating my first SQL data pipelines?
0:21:14 I’m new to Flink SQL, where can I start?
0:23:56 When NOT to use SQL?
0:25:22 Are there optimizations within Flink SQL to support different windowed aggregations?
0:27:51 Side output support within Flink SQL
0:29:33 Can I upgrade my Flink SQL application?
0:30:51 What are the recommendations for controlling or assigning UID to avoid DAG's from breaking with, e.g. an addition of a new column?
0:31:51 Where does Flink SQL stand compared to Confluent kSQL?
0:35:07 What is the coolest Flink SQL function in your opinion and why?
0:40:43 Advice on starting and working with Flink SQL

Resources
Download Flink to get started: https://nightlies.apache.org/flink/flink-docs-release-1.14//docs/try-flink/local_installation/
Flink Faker: https://github.com/knaufk/flink-faker
Flink SQL Cookbook: https://github.com/ververica/flink-sql-cookbook
Flink SQL Functions: https://nightlies.apache.org/flink/flink-docs-master/docs/dev/table/functions/systemfunctions/
Flink SQL CLI on Docker: https://github.com/aiven/sql-cli-for-apache-flink-docker