Principal Software Practice Lead
Apache Flink is a powerful stream-processing engine designed for modern software needs. However, the DataStream API can be daunting for new users. Meanwhile, the SQL API provides a high-level relational model that is easier to use but is restricted to predefined queries. This can be limiting for those used to building complex applications in Java or Python. This is where the Flink Table API comes in. It provides a middle ground between the DataStream API and the SQL API giving the power to programmatically create queries while offering an easy-to-use syntax similar to SQL.
An interesting aspect of the Table API is that while it is often presented as a layer between SQL and the DataStream API, Confluent Cloud actually builds on top of SQL. Queries written with the Table API are translated into SQL queries before being executed by Confluent Cloud. However, even though it produces SQL because the code can be written in languages such as Java or Python, it allows more complex query generation. We don’t have to limit ourselves to predefined queries but can programmatically define them. This provides flexibility that you won’t get using the SQL API alone.
This course will introduce students to the Apache Flink Table API through hands-on exercises. Students will use Java to build Flink queries that can be executed using the Flink SQL engine. Students will inspect the SQL code generated from the Table API to understand the process operating behind the scenes. This will be done with a production-grade Confluent Cloud Data Streaming platform.
Wade has been a Software Developer since 2005. He has worked on video games, backend microservices, ETL Pipelines, IoT systems, and more. He is an advocate for Test-Driven Development, Domain-Driven Design, Microservice Architecture, and Event-Driven Systems. Today, Wade works as a Staff Software Practice Lead at Confluent, showing people how to build modern data streaming applications.
Why did you click on this video?
The odds are it's because you are interested in Apache Flink.
But why?
What problems are you trying to solve that Flink might be a good fit for?
Maybe the existing system you are working with is too slow, and you need something real-time.
Or, perhaps you have hit limitations with your existing platform and need to move to something more scalable.
Are you frustrated dealing with flakey batch jobs and want something more reliable?
That can't be it because batch jobs never fail...
Hold on...
I'm being told my batch job just failed...
I'll be right back.
Sorry about that...Now, where was I?
Maybe you already use Flink, but you'd rather have a managed platform to ease the pain of hosting your own.
Regardless of why you clicked on this video, I'm glad you did.
I've put together a series of videos and hands-on exercises that will show how to use Flink to interact with Kafka topics as though they were relational database tables.
But, if you are anything like me, you'll be dreading the idea of writing a bunch of SQL code.
The good news is we'll be using the Flink Table API in Java, which means no SQL knowledge is required.
And no, that doesn’t mean this is a NoSQL database.
Because it’s not a database.
Don’t worry, it will make more sense as we go through the course.
Oh, and did I mention it's completely free?
I'll even throw in some Confluent Cloud credits so you can get started with a new cluster without paying a dime.
So, follow along with me on Confluent Developer and I'll show you how to create a series of jobs to consume data streams in real-time.
If you aren't already on Confluent Developer, check the link in the video description to find the course.
And I'll see you in the next video.
We will only share developer content and updates, including notifications when new content is added. We will never send you sales emails. 🙂 By subscribing, you understand we will process your personal information in accordance with our Privacy Statement.