Flink-はじめにおよびスタンドアロンクラスターのインストールと簡単なテスト
フリンク入門
Flinkは、限られたデータストリームとワイヤレスデータストリームでステートフル計算を実行できる分散型ビッグデータ処理エンジンであり、さまざまなクラスター環境に展開して、さまざまなサイズのデータスケールで高速計算を実行できます。
フリンクの特徴は何ですか
-
バッチフローの統合
-
高スループット、低遅延、高性能ストリーミングをサポート
-
イベント時間でウィンドウ操作をサポート
-
ステートフルコンピューティングの1回
限りのセマンティクスをサポートする5.柔軟性の高いウィンドウ操作をサポートし、時間、カウント、およびセッションに基づくウィンドウ操作をサポートする -
背圧機能付き連続流モデルをサポート
-
軽量分散スナップショットに基づくフォールトトレランスのサポート(スナップショット)
反復コンピューティングのサポート -
Flinkは、JVM内に独自のメモリ管理を実装します
-
プログラムの自動最適化をサポート:特定の状況でのシャッフルや並べ替えなどのコストのかかる操作を回避し、中間結果をキャッシュする必要があります
flinkと他のフレームワークの比較
フレーム名 | 利点 | 不利益 |
---|---|---|
嵐 | 低遅延 | 低スループット、正確な1回限りの保証はできず、APIは豊富ではありません |
スパーク | 高スループット、1回限りの豊富なAPIを保証できます | 高遅延 |
当社 | 高スループット、低レイテンシ、1回限りの豊富なAPIを保証できます | 速い更新速度、速いAPI変更 |
flinkのアーキテクチャは次のとおりです。
JobManager
マスターとも呼ばれ、分散実行の調整に使用されます。タスクのスケジュール、チェックポイントの調整、および調整が失敗した場合の回復に使用されます。Flinkの
実行中は、少なくとも1つのマスターが存在します。高可用性モードが構成されている場合、複数のマスターが存在し、そのうちの1つがリーダーで
、他のマスターはスタンバイです。
タスクマネージャー
ワーカーとも呼ばれ、データフロータスクの実行に使用されます。データバッファリングとデータストリームデータ交換。Flinkの実行
時に少なくとも1つのTaskManagerがあります。JobManagerとTaskManagerは物理マシンで直接実行するか
、YARNなどのリソーススケジューリングを実行できます。フレームワークであるTaskManagerは、ネットワークを介してJobManagerに接続し、RPC通信を介してその
可用性を通知してタスクの割り当てを取得します。
SparkとFlinkの比較
flinkインストール
あなたへ
BaiduCloud :リンク:https://pan.baidu.com/s/1bYkJ4OmmQnAUW7fiAqsKjwパスワード:a53w
アップロード後に解凍します
flink-スタンドアロンクラスター構成
1.flinkフォルダの下にあるconfディレクトリに入ります。
vi flink-conf.yaml
次のコンテンツを変更します。
#这里填主节点的ip地址,是worker与主节点通信的地址
jobmanager.rpc.address: 192.168.237.130
#资源槽,默认为1,太小了
taskmanager.numberOfTaskSlots: 2
スレーブノードのアドレスを変更します。
vi slaves
コンテンツを追加する:
192.168.237.131
192.168.237.132
構成が終了しました(実際には、構成はほとんどありませんが、高可用性のための構成はありません)2。SSHで
構成されたマシンを準備します。
自分のマスターノードはtest130で、他の2つのスレーブノードはtest131とtest132です。 。
構成されたフォルダーを他のマシンにコピーします。
scp -r flink-1.9.1/ test131:/opt/modules/
scp -r flink-1.9.1/ test132:/opt/modules/
3.クラスターを(マスターノードマシンで)起動します
bin/start-cluster.sh
次の図が表示されます
。4。プロセスの表示:
マスターノード:
スレーブノード:
5。ページにアクセス:http://192.168.237.130:
8081 /#/ overviewデフォルトのオープンポートは8081です。
簡単なテスト、ワードカウントを行う
flinkインストールパッケージに付属しているjarパッケージがあります。これは、テスト用のケースです。
ディレクトリは次のとおりです。flink1.9.1/ examples
ページ操作開始タスク
- ターミナルのポート8888を開きます
nc -lk 8888
-
左側の[新しいジョブの送信]をクリックします
-
指定されたjarパッケージをアップロードします
-
アップロード後のページは次のようになります。
-
新しく追加された行をクリックすると、ページが表示されます。並列度、ホスト名、およびポートを入力し(スペースが必要であることに注意してください)、[送信]をクリックします。
-
次のページが表示されます。
-
端末に関連データを入力します(最初のステップに対応):
- TaskManagerの下の特定の作業で結果を表示します(結果はJobManagerではなく、スレーブノードで表示されます。そのうちの1つをクリックすると、次のページが表示されます。2つのスレーブノードを構成しました。作業をクリックするとデータがない場合、それは別の作業で実行されるタスクです)
タスクを開始するためのコマンドライン操作
bin/flink run -m test130:8081 -p 4 -c org.apache.flink.streaming.examples.socket.SocketWindowWordCount examples/streaming/SocketWindowWordCount.jar --hostname test130 --port 8888
flinkディレクトリで実行するだけです。IPとポートを変更するだけです。
コマンドの順序は次のとおりです。
- -pは並列処理を表します
- -c [jarフルクラス名] [パス]
- –hostname ip
- -ポートポート