IT科技

當前位置 /首頁/IT科技 > /列表

flink,java

很多朋友都想知道java flink是什麼?下面就一起來了解一下吧~

1、Flink是什麼

Java Apache Flink是一個開源的分佈式,高性能,高可用,準確的流處理框架。支持實時流處理和批處理。

java flink

2、Flink特性

(1)支持批處理和數據流程序處理

(2)優雅流暢的支持java和scala api

(3)同時支持高吞吐量和低延遲

(4)支持事件處理和無序處理通過SataStream API,基於DataFlow數據流模型

(5)在不同的時間語義(時間時間,處理時間)下支持靈活的窗口(時間,技術,會話,自定義觸發器)

(6)僅處理一次的容錯擔保

(7)自動反壓機制

(8)圖處理(批) 機器學習(批) 複雜事件處理(流)

(9)在dataSet(批處理)API中內置支持迭代程序(BSP)

(10)高效的自定義內存管理,和健壯的切換能力在in-memory和out-of-core中

(11)兼容hadoop的mapreduce和storm

(12)集成YARN,HDFS,Hbase 和其它hadoop生態系統的組件

3、Flink分佈式執行

Flink分佈式程序包含2個主要的進程:JobManager和TaskManager.當程序運行時,不同的進程就會參與其中,包括Jobmanager、TaskManager和JobClient

java flink 第2張

Flink程序提交給JobClient,JobClient再提交到JobManager,JobManager負責資源的協調和Job的執行。一旦資源分配完成,task就會分配到不同的TaskManager,TaskManager會初始化線程去執行task,並根據程序的執行狀態向JobManager反饋,執行的狀態包括starting、in progress、finished以及canceled和failing等。當Job執行完成,結果會返回給客户端。

TAG標籤:flink java #