• This repository has been archived on 26/Nov/2021
  • Stars
    star
    543
  • Rank 81,848 (Top 2 %)
  • Language
    Java
  • Created over 5 years ago
  • Updated almost 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

⚠️ This repository has been archived. ⚠️


Apache Flink® SQL Training

This repository provides a training for Flink's SQL API.

In this training you will learn to:

  • run SQL queries on streams.
  • use Flink's SQL CLI client.
  • perform window aggregations, stream joins, and pattern matching with SQL queries.
  • specify a continuous SQL query that maintain a dynamic result table.
  • write the result of streaming SQL queries to Kafka and MySQL.

Please find the training instructions in the Wiki of this repository.

Requirements

The training is based on Flink's SQL CLI client and uses Docker Compose to setup the training environment.

You only need Docker to run this training.
You don't need Java, Scala, or an IDE.

What is Apache Flink?

Apache Flink is a framework and distributed processing engine for stateful computations over unbounded and bounded data streams. Flink has been designed to run in all common cluster environments, perform computations at in-memory speed and at any scale.

What is SQL on Apache Flink?

Flink features multiple APIs with different levels of abstraction. SQL is supported by Flink as a unified API for batch and stream processing, i.e., queries are executed with the same semantics on unbounded, real-time streams or bounded, recorded streams and produce the same results. SQL on Flink is commonly used to ease the definition of data analytics, data pipelining, and ETL applications.

The following example shows a SQL query that computes the number of departing taxi rides per hour.

SELECT
  TUMBLE_START(rowTime, INTERVAL '1' HOUR) AS t,
  COUNT(*) AS cnt
FROM Rides
WHERE
  isStart
GROUP BY 
  TUMBLE(rowTime, INTERVAL '1' HOUR)

Apache Flink, Flink®, Apache®, the squirrel logo, and the Apache feather logo are either registered trademarks or trademarks of The Apache Software Foundation.

More Repositories

1

flink-cdc-connectors

CDC Connectors for Apache Flink®
Java
4,956
star
2

flink-sql-cookbook

The Apache Flink SQL Cookbook is a curated collection of examples, patterns, and use cases of Apache Flink SQL. Many of the recipes are completely self-contained and can be run in Ververica Platform as is.
Dockerfile
842
star
3

flink-training-exercises

Java
552
star
4

flink-sql-gateway

Java
489
star
5

stateful-functions

Stateful Functions for Apache Flink
Java
276
star
6

flink-jdbc-driver

Java
128
star
7

flink-sql-benchmark

Java
102
star
8

ververica-platform-playground

Instructions for getting started with Ververica Platform on minikube.
Shell
89
star
9

frocksdb

C++
61
star
10

flink-statefun-workshop

Python
44
star
11

jupyter-vvp

Jupyter Integration for Flink SQL via Ververica Platform
Python
41
star
12

flink-training-troubleshooting

Java
40
star
13

lab-fraud-detection

Demo code for implementing and showcasing a Fraud Detection Engine with Apache Flink.
Java
30
star
14

streaming-ledger

Serializable ACID transactions on streaming data
Java
22
star
15

lab-flink-latency

Lab for testing different Flink job latency optimization techniques covered in a Flink Forward 2021 talk
Java
22
star
16

lab-flink-repository-analytics

Java
18
star
17

lab-sql-vs-datastream

Lab project to showcase Flink's performance differences between using a SQL query and implementing the same logic via the DataStream API
Java
13
star
18

flink-ecosystem

Ecosystem website for Apache Flink
TypeScript
12
star
19

tpc-ds-generators

Binaries for TPC-DS data generators
8
star
20

acwern

Flink visualization library for blogposts
TypeScript
6
star
21

ForSt

A Persistent Key-Value Store designed for Streaming processing
C++
4
star
22

demo-vvp-via-azure-pipelines

Java
3
star
23

pyflink-docs

pyflink documentation
Python
2
star
24

lab-vvp-pyflink

Java
2
star
25

flink-emr-terraform

Terraform module for creating AWS EMR Flink clusters.
HCL
1
star