This documentation is for an unreleased version of Apache Flink. We recommend you use the latest stable version.
最初の一歩 #
Flinkへようこそ!:)
Flinkは連続的なデータストリームを超高速で処理するように設計されています。この短いガイドでは、Flinkの最新の安定バージョンをダウンロードして、インストールし、実行する方法を説明します。また、サンプルのFlinkジョブを実行し、Web UIで表示します。
Flinkのダウンロード #
注意: FlinkはDockerイメージとしても利用できます。
Flinkは、Linux、Mac OS X、Cygwin (Windows用)など、全てのUNIXのような環境で動作します。__Java 11__がインストールされている必要があります。インストールされているJavaバージョンを調べるには、ターミナルで次のように入力します:
$ java -version
次に、Flinkの最新のバイナリリリースをダウンロードし、次にアーカイブを解凍します:
$ tar -xzf flink-*.tgz
プロジェクトディレクトリの参照 #
解凍されたディレクトリに移動し、次のコマンドを実行して内容を一覧表示します:
$ cd flink-* && ls -l
次のような内容が表示されるはずです:
現時点では、次のことに注意してください。
- bin/ ディレクトリには、
flink
バイナリと、様々なジョブやタスクを管理するいくつかのbashスクリプトが含まれます - conf/ ディレクトリには、
flink-conf.yaml
を含む設定ファイルが含まれます - examples/ ディレクトリには、Flinkでそのまま使えるサンプルアプリケーションが含まれます
ローカルクラスタの開始と終了 #
ローカルクラスタを起動するには、Flinkに付属のbashスクリプトを実行します:
$ ./bin/start-cluster.sh
次のような出力が表示されるはずです:
Flinkは現在バックグラウンドプロセスとして実行されています。次のコマンドを実行してステータスを確認できます:
$ ps aux | grep flink
localhost:8081のWeb UIに移動して、Flinkのダッシュボードが表示され、クラスタが稼働していることを確認します。
クラスタと実行中の全てのコンポーネントを迅速に停止するために、提供されているスクリプトを使えます:
$ ./bin/stop-cluster.sh
Flinkジョブの送信 #
Flinkは、JavaARchives(JAR)としてパッケージ化されたプログラムを実行でき、それらの実行を制御できる、CLIツール__bin/flink__を提供します。jobを送信するということは、ジョブのJARファイルと関連する依存関係を実行中のFlinkクラスタにアップロードして実行することを意味します。
Flinkリリースにはサンプルのジョブが付属していて、__examples/__フォルダにあります。
サンプルのワードカウントを実行中のクラスタにデプロイするには、次のコマンドを発行します:
$ ./bin/flink run examples/streaming/WordCount.jar
ログを表示して、出力を確認できます:
$ tail log/flink-*-taskexecutor-*.out
出力例:
(nymph,1)
(in,3)
(thy,1)
(orisons,1)
(be,4)
(all,2)
(my,1)
(sins,1)
(remember,1)
(d,4)
さらに、クラスタのステータスと実行中のジョブを監視するために、Flinkのweb UIをチェックできます。
実行のデータフローパターンを表示できます:
ここでは、ジョブの実行のために、Flinkに2つのオペレータがあります。1つ目はコレクションソースからデータを読み込むソースオペレータです。2つ目のオペレータは単語数を集計する変換オペレータです。DataStreamオペレータについて学ぶ。
ジョブの実行のタイムラインを見ることもできます:
Flinkアプリケーションが正常に実行されました!__examples/__フォルダから他のJARアーカイブを自由に選択するか、独自のジョブをデプロイしてください!
概要 #
このガイドでは、Flinkをダウンロードし、プロジェクトディレクトリを探索し、ローカルクラスタを起動および停止し、サンプルのFlinkジョブを送信しました!
Flinkの基礎をもっと学ぶには、概念のセクションをご覧ください。もっと実践的なことを試したい場合は、チュートリアルのいずれかを試してください。