Apache Flink とは何かを紹介します

王林
リリース: 2020-10-20 17:10:18
転載
2347 人が閲覧しました

Apache Flink とは何かを紹介します

Apache Flink の概要:

Apache Flink は、無制限および有界のデータ ストリーム計算におけるステートフル処理のためのフレームワークおよび分散処理エンジンです。 Flink はすべての一般的なクラスター環境で実行され、メモリ速度とあらゆる規模で計算できます。

(推奨チュートリアル: apache)

次に、Flink アーキテクチャの重要な側面を紹介します。

無制限データと制限付きデータの処理

あらゆる種類のデータがイベント ストリームを形成できます。クレジット カードのトランザクション、センサーの測定値、マシンのログ、Web サイトやモバイル アプリでのユーザー インタラクションの記録、これらすべてのデータがストリームを形成します。

データは、無制限または制限付きのストリームとして処理できます。

1. 無制限フロー フローの始まりは定義されていますが、フローの終わりは定義されていません。彼らは際限なくデータを生成します。無制限フローのデータは継続的に処理する必要があります。つまり、データは取り込まれた後すぐに処理する必要があります。入力は無限であり、いつでも完了することはないため、すべてのデータが到着するまで処理を待つことはできません。無制限のデータを処理するには、結果の完全性を推測できるように、イベントが発生する順序など、特定の順序でイベントを取り込む必要があることがよくあります。

2. 境界フローは、フローの始まりと終わりを定義します。境界付きストリームを使用すると、すべてのデータが取り込まれた後に計算を実行できます。制限されたストリーム内のすべてのデータは並べ替えられるため、順序付けられた取り込みは必要ありません。境界付きストリーム処理は、バッチ処理と呼ばれることがよくあります。

Apache Flink とは何かを紹介します

Apache Flink は、境界のないデータ セットと境界のあるデータ セットの処理に優れています。正確な時間制御とステートフル性により、Flink のランタイムは、境界のないストリームを処理するアプリケーションを実行できます。境界付きストリームは、固定サイズのデータ​​セット用に特別に設計されたアルゴリズムとデータ構造によって内部で処理されるため、優れたパフォーマンスが得られます。

Flink 上に構築されたユースケースを検討することで理解を深めてください。

アプリケーションをどこにでも展開

Apache Flink は、アプリケーションを実行するためにコンピューティング リソースを必要とする分散システムです。 Flink は、Hadoop YARN、Apache Mesos、Kubernetes などのすべての一般的なクラスター リソース マネージャーと統合されますが、スタンドアロン クラスターとして実行することもできます。

Flink は、上記の各リソース マネージャーと適切に動作するように設計されており、これはリソース マネージャー固有のデプロイメント モードを通じて実現されます。 Flink は、現在のリソース マネージャーに適切な方法で対話できます。

Flink アプリケーションをデプロイすると、Flink はアプリケーションの構成された並列処理に基づいて必要なリソースを自動的に識別し、リソース マネージャーにこれらのリソースを要求します。障害が発生した場合、Flink は新しいリソースを要求して、障害が発生したコンテナを置き換えます。アプリケーションを送信または制御するためのすべての通信は REST 呼び出しを通じて行われるため、Flink のさまざまな環境への統合が簡素化されます。

あらゆる規模でアプリケーションを実行

Flink は、あらゆる規模でステートフル ストリーミング アプリケーションを実行できるように設計されています。したがって、アプリケーションは潜在的に数千のタスクに並列化され、クラスター全体に分散されて同時に実行されます。したがって、アプリケーションは無限の CPU、メモリ、ディスク、ネットワーク IO を活用できます。また、Flink を使用すると、非常に大規模なアプリケーションの状態を簡単に維持できます。その非同期および増分チェックポイント設定アルゴリズムは、処理遅延への影響を最小限に抑えながら、1 回限りの状態の一貫性を保証します。

Flink ユーザーは、実稼働環境での素晴らしいスケーラビリティ数値を報告しています。

1 日あたり数兆のイベントを処理し、アプリケーションはテラバイトの状態を維持し、アプリケーションはデータ上で実行されます。数千のコアで実行されます。

メモリ パフォーマンスの活用

ステートフル Flink プログラムは、ローカル状態アクセス用に最適化されています。タスクの状態は常にメモリ内に維持されます。状態のサイズが使用可能なメモリを超える場合は、効率的にアクセスできるディスク上のデータ構造に保存されます。タスクはローカル (通常はメモリ内) 状態にアクセスしてすべての計算を実行するため、処理遅延が非常に短くなります。 Flink は、ローカル状態ストレージを定期的かつ非同期的に永続化することで、障害シナリオにおける 1 回限りの状態の一貫性を保証します。

Apache Flink とは何かを紹介します

以上がApache Flink とは何かを紹介しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:juejin.im
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!