分散式計算技術(下):Impala、Apache Flink、星環Slipstream
— 實時計算引擎Apache Flink —
-
Flink邏輯架構
-
Runtime是Flink中核心計算框架,採用了標準 master-slave 的結構,master負責管理整個叢集中的資源和作業;Slave負責提供具體的資源並實際執行作業。runtime用於將框架中的job進行拆分並構建DAG圖,透過單執行緒或多執行緒的方式對拆分後的job進行分散式作業,提高執行速度。 -
DataSet API 和DataStream API表示Flink中的分散式資料集,分別用於Flink批處理和流處理。DataStream為流處理提供了支援,包括逐條記錄的轉換操作和在處理事件時進行外部資料庫查詢等;DataSet API支援批資料處理,將輸入資料轉換成DataSet資料集,並行分佈在叢集的每個節點上;然後將DataSet資料集進行各種轉換操作(map、filter等),最後透過DataSink操作將結果資料集輸出到外部系統。 -
Flink ML是Flink的機器學習庫,提供了可擴充套件的ML演算法,直觀的API和工具,支援監督學習、無監督學習、資料預處理等,幫助使用者在flink框架中便捷的使用機器學習模型。 -
Table API 是一種類SQL的關係型API,使用者可以像操作表一樣地運算元據,非常的直觀和方便。透過類SQL語句,系統會自動化決定如何高效計算。Table & SQL API 實現了流處理和批處理統一的API層,批資料的查詢會隨著輸入資料的結束生成有限結果集,流資料的查詢會一直執行並生成結果流。Table & SQL API 支援資料批與流查詢的同樣語法,使用程式碼編寫規則就能同時在批和流上跑。 -
Flink CEP是在flink上實現複雜事件處理(CEP)的庫,允許在事件流中對事件進行檢測,方便使用者掌握資料中重要的事項。 -
Gelly是Flink的圖API庫,它包含了一組旨在簡化Flink中圖形分析應用程式開發的方法。在Gelly中,可以使用類似於批處理API提供的 函式來轉換和修改圖。Gelly提供了建立、轉換和修改圖的方法,以及圖演算法庫,可以方便使用者進行大型圖分析。
-
Fink系統架構
-
Client:Flink作業在哪臺機器上面提交,那麼當前機器稱之為Client。由使用者Program所構建出DataFlow Graph會以Job形式透過Client提交給JobManager。 -
JobManager:主節點,相當於YARN裡面的REsourceManager,生成環境中一般可以做HA 高可用。JobManager會將任務進行拆分,排程到TaskManager上面執行。 -
TaskManager:是從節點,TaskManager才是真正實現task的部分。 -
Dispatcher :提供了一個REST 介面,用於提交application執行。
— 星環實時計算引擎Slipstream —
-
Exactly Once語義保證:透過分散式的Checkpoint機制,對應用操作的狀態進行Checkpoint,可以在不影響應用整體執行效能的同時,保證Exactly Once語義。 -
自動故障恢復:實時應用通常需要7*24小時不間斷執行,Slipstream提供了自動故障恢復機制,當Worker或者Server發生故障時,實現秒級別的任務自動恢復。 -
使用者登陸安全認證:提供基於LDAP和Kerberos的認證方式,確保授權使用者可以訪問。 -
操作審計:對於登陸使用者的操作都會記錄日誌,方便監控告警,以及事後日誌審計。 -
細粒度的許可權訪問控制:提供對應用的檢視、修改、啟動、停止、刪除等多種操作許可權進行細粒度的控制,保證應用的安全性。 -
智慧資源隔離排程:透過應用的抽象,和資源佇列,可以實現不同應用之間的資源隔離和管理,透過應用優先順序,可以保證在資源緊張時,保證高優先順序的應用不受影響。
— 小結 —
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69994106/viewspace-2944869/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Apache Flink核心技術Apache
- 比較Apache Kafka與各大雲端計算的分散式日誌技術 - scottlogicApacheKafka分散式
- 分散式計算技術(上):經典計算框架MapReduce、Spark 解析分散式框架Spark
- 分散式計算技術的比較:Jini, Jxta and Web Services分散式Web
- Apache Flink,流計算?不僅僅是流計算!Apache
- 詳解 Apache SkyWalking OAP 的分散式計算Apache分散式
- 一文讀懂Apache Flink技術Apache
- Apache Impala 架構Apache架構
- 分散式計算技術比較:JXTA JINI和J2EE分散式
- 大資料環境下計算機軟體技術分析大資料計算機
- Apache Flink CDC 批流融合技術原理分析Apache
- 分散式雲端計算分散式
- 分散式技術設計中的問題分散式
- 【雲星資料---Apache Flink實戰系列(精品版)】:Apache Flink高階特性與高階應用015-Flink中廣播變數和分散式快取001Apache變數分散式快取
- 【雲星資料---Apache Flink實戰系列(精品版)】:Apache Flink高階特性與高階應用016-Flink中廣播變數和分散式快取002Apache變數分散式快取
- 分散式技術-Zookeeper概述分散式
- [分散式]分散式計算系統淺析分散式
- Hadoop 分散式儲存分散式計算Hadoop分散式
- 「分散式技術專題」常用的 SQL 運算元介紹分散式SQL
- Oceanus:基於Apache Flink的一站式實時計算平臺Apache
- 搞懂分散式技術12:分散式ID生成方案分散式
- 搞懂分散式技術17:淺析分散式事務分散式
- 【分散式通知技術-JGroups】分散式
- 分散式儲存技術概念分散式
- 【技術乾貨】程式碼示例:使用 Apache Flink 連線 TDengineApache
- oracle RAC環境分散式計算(prallel能力)設定 --轉載Oracle分散式
- 【分散式計算】分散式日誌匯入工具-Flume分散式
- 分散式計算與Map Reduce分散式
- 【分散式計算】DFS && BigTable分散式
- 分散式計算如果學習分散式
- 分散式技術中不可或缺的分散式互斥方案分散式
- Apache Flink 在移動雲實時計算的實踐Apache
- 分散式技術“上位”進行時分散式
- 技術分享 | Redis 之分散式鎖Redis分散式
- 分散式鏈路追蹤技術分散式
- 雲端計算分散式平行計算:系統架構分散式架構
- 搞懂分散式技術3:初探分散式協調服務zookeeper分散式
- 不同體系分散式儲存技術的技術特性分散式