【アパッチフリンク】
Apache Flink(フリンク) とは?
最終更新:
💡 流れるデータを止めずに処理する高速エンジン
終わりのないデータの流れ(ストリーム)と、終わりのあるデータ(バッチ)の両方を、状態を持ちながら処理できる分散処理フレームワーク。低レイテンシのリアルタイム処理基盤として使われている。
📌 このページのポイント
ストリーム処理って、データが来るたびにすぐ処理するってこと?
SparkのStructured Streamingとはどう違うの?
Exactly-onceって何がすごいの?
どんな会社が使ってるの?
公式サイトの利用例には、Blinkというフォーク版で検索ランキングをリアルタイムに最適化しているAlibabaや、Flinkの上にSQLで使えるストリーム分析基盤AthenaXを作ったUberなどが載っているよ
Flinkは学ぶの難しい?
まとめ:ざっくりこれだけ覚えればOK!
「Apache Flink」って出てきたら「データをリアルタイムに流しながら処理する分散エンジン」と思えればだいたいOK!
📖 おまけ:英語の意味
「Apache Flink」 = アパッチフリンク
💬 ドイツ語のflinkは「素早く器用に動く」という意味の形容詞だよ。名前の由来の公式な説明は見つからなかったけど、Flinkは2009年にベルリン工科大学(TU Berlin)などで始まった研究プロジェクトStratosphereがルーツなんだ
参考資料
- Architecture(Apache Flink)
- Fault Tolerance via State Snapshots(Apache Flink Documentation)
- Powered By Flink(Apache Flink)
- Apache Flink 2.0.0: A new Era of Real-Time Data Processing(Apache Flink Blog)
- The Apache Software Foundation Announces Apache Flink as a Top-Level Project(ASF, 2015)
- Structured Streaming Programming Guide(Apache Spark)
- Amazon Managed Service for Apache Flink(AWS)
- flink(Duden)