Flink——最流批的大數據框架(流批一體)

Apache Flink基礎教程

資料來源:Apache Flink Tutorial (tutorialspoint.com)

Apache Flink Tutorial

Apache Flink是Apache Hadoop的開源本地分析數據庫。它由Cloudera、MapR、Oracle和Amazon等供應商提供。本教程中提供的示例是使用Cloudera Apache Flink開發的。

本教程是為那些想要學習Apache Flink的人準備的。Apache Flink使用傳統的SQL知識以閃電般(松鼠般doge)的速度處理大量數據。

1. Flink-前置知識

1.1 大數據平臺

學習Flink之前,先來點前置知識

在過去的10年里,數據的進步是巨大的;這就產生了一個術語“大數據”。可以稱之為大數據的沒有固定大小;傳統系統(RDBMS)無法處理的任何數據都是大數據。這些大數據可以是結構化、半結構化或非結構化的格式。最初,數據有三個維度:體量(Volume) 、速度(Velocity)、種類(Variety)。現在,維度已經超過了三個“V”.我們現在添加了其他的V -真實性(Veracity),有效性(Validity),脆弱性(Vulnerability),價值(Value),可變性(Variability)等。

大數據導致了多種工具和框架的出現,這些工具和框架有助于存儲和處理數據。目前流行的大數據框架有Hadoop、Spark、Hive、Pig、Storm和Zookeeper等。它還提供了在醫療保健、金融、零售、電子商務等多個領域創建下一代產品的機會。

無論是跨國公司還是初創企業,每個人都在利用大數據來存儲和處理數據,并做出更明智的決策。

1.2 批處理vs實時處理

在大數據而言,有兩種類型的處理:

  • (批處理)Batch Processing
  • (實時處理)Real-time Processing

處理基于一段時間內收集的數據稱為批處理。例如,銀行經理希望處理過去一個月的數據(隨時間收集),以了解過去一個月被取消的支票數量。

處理基于即時數據的即時結果稱為實時處理。例如,銀行經理在發生欺詐交易(即時結果)后立即收到欺詐警報。

下表列出了批處理和實時處理的區別:

批處理(Batch Processing)實時處理(Real-Time Processing)
靜態文件事件流
按分鐘、小時、天等周期處理。納秒級,及時處理
存在磁盤上的歷史數據內存存儲
例子?票據生成例子?ATM事務警報

如今,實時處理在每個組織(泛指各種公司、政府部門等機構)中都得到了廣泛的應用。欺詐檢測、醫療保健中的實時警報和網絡攻擊警報等用例需要實時處理即時數據;即使是幾毫秒的延遲也會產生巨大的影響。

對于這種實時用例,理想的工具應該是能夠以流而不是批處理的方式輸入數據的工具。Apache Flink就是實時處理工具。

1.3 Flink 簡介

Apache Flink是一個實時處理框架,可以處理流數據。它是一個開源流處理框架,用于高性能、可擴展和精確的實時應用程序。它具有真正的流模型。

tips: flink最初是為實時處理設計的,但現在是流批一體(從 Apache Flink 1.12.0 開始),就問你流不流批

Apache Flink是由Data Artisans公司創建的,現在由Apache Flink社區在Apache許可下開發。到目前為止,這個社區有超過479個貢獻者和15500多個提交。


Apache Flink的生態系統

下圖顯示了Apache Flink生態系統的不同層:

Ecosystem on Apache Flink

下面,將從該圖的從下往上,分別簡要介紹STORAGE、DEPLOY、KERNEL、API’s and LIBRARIES


Storage(存儲)

Apache Flink有多種讀/寫數據的選項。下面是一個基本存儲列表?

  • HDFS (Hadoop Distributed File System)
  • 本地文件系統(Local File System)
  • S3
  • 關系型數據庫:RDBMS (MySQL, Oracle, MS SQL etc.)
  • MongoDB
  • HBase
  • Apache Kafka
  • Apache Flume

Deploy(部署)

您可以在本地模式、集群模式或云上部署Apache Fink。集群模式包括:standalone、YARN、MESOS。

在云端,Flink可以部署在AWS或GCP上(都是云服務器)。


Kernel(內核)

這是運行時層,它提供分布式處理、容錯、可靠性、本地迭代處理能力等等。


APIs & Libraries(api和庫)

這是Apache Flink的頂層,也是最重要的一層。它有數據集API,負責批處理;和數據流API,負責流處理。還有其他庫,如Flink ML(用于機器學習),Gelly(用于圖形處理),Tables for SQL。這一層為Apache Flink提供了多種功能。

未完待續,點個贊唄

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/35029.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/35029.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/35029.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

fork 是一個創建新進程的系統調用

在計算機科學中,fork 是一個創建新進程的系統調用。具體來說,fork 調用會創建一個與當前進程幾乎完全相同的副本,包括父進程的內存布局、環境變量、打開的文件描述符等。這個新的進程被稱為子進程,而原始進程被稱為父進程。 以下…

光伏開發有沒有難點?如何解決?

隨著全球對可再生能源的日益重視,光伏技術作為其中的佼佼者,已成為實現能源轉型的關鍵手段。然而,光伏開發并非一帆風順,其過程中也面臨著諸多難點和挑戰。本文將對這些難點進行探討,并提出相應的解決策略。 一、光伏開…

12 學習總結:操作符

目錄 一、操作符的分類 二、二進制和進制轉換 (一)概念 (二)二進制 (三)進制轉換 1、2進制與10進制的互換 (1)2進制轉化10進制 (2)10進制轉化2進制 2…

解決vs2022scanf報錯問題

vs2022scanf報錯問題 大家下完vs2022之后,開心的寫下一段簡單的代碼: #include <stdio.h> #include <stdlib.h>int main() {int a;scanf("%d", &a);printf("%d", a);return 0; } vs2022會毫不猶豫的報錯,下面是報錯信息: 翻譯過來就是v…

探究InnoDB Compact行格式背后

目錄 一、InnoDB 行格式數據準備 二、COMPACT行格式整體說明 三、記錄的額外信息 &#xff08;一&#xff09;變長字段長度列表 數據結構 存儲過程 讀取過程 變長字段長度列表存儲示例 &#xff08;二&#xff09;NULL 值位圖 數據結構 存儲過程 讀取過程 NULL 值…

【MySQL進階之路 | 高級篇】索引的聲明與使用

1. 索引的分類 MySQL的索引包括普通索引&#xff0c;唯一性索引&#xff0c;全文索引&#xff0c;單列索引和空間索引. 從功能邏輯上說&#xff0c;索引主要分為普通索引&#xff0c;唯一索引&#xff0c;主鍵索引和全文索引.按物理實現方式&#xff0c;索引可以分為聚簇索引…

蘋果電腦清理垃圾怎么清理 macbook怎么清理電腦垃圾文件 macos優化軟件 cleanmymac怎么使用

在選擇電腦時&#xff0c;不少人都會選擇擁有高性能和輕薄機身的mac。一開始&#xff0c;它確實如我們所期待的那樣健步如飛&#xff0c;然而&#xff0c;隨著時間的流逝&#xff0c;有沒有覺得您的Mac有時候像是需要一個好的春季大掃除一樣&#xff1f;隨著我們不斷使用電腦&a…

Lobe Chat openai claude

claude-3-5-sonnet-20240620 $ docker run -d -p 3210:3210 \-e OPENAI_API_KEYsk-xxxx \-e OPENAI_PROXY_URLhttps://api-proxy.com/v1 \-e ACCESS_CODElobe66 \--name lobe-chat \lobehub/lobe-chatDocker 部署 更新 docker ps CONTAINER ID IMAGE …

1590. 【中山市第十二屆義務教育段學生信息學邀請賽】除法運算(divide)

時間限制: 1 s 空間限制: 256 MB 題目描述 Jimmy 開始學習除法啦&#xff01;一開始他學習了余數為 0 的除法&#xff08;也就是我們常說的整除&#xff09;&#xff0c;后來又學習了余數不為 0 的除法&#xff0c;所以 Jimmy 對被除數、除數、商、余數這些概念都已經了如指…

C語言學習步驟

C語言學習步驟 學習C語言是一個系統化的過程&#xff0c;以下是一些基本的步驟和建議&#xff1a; 1. 理解基礎概念&#xff1a;首先&#xff0c;了解編程的基本概念&#xff0c;比如變量常量、數據類型、指針、控制結構&#xff08;順序語句、分支語句、循環語句&#xff09;、…

神經網絡參數-----學習率(Learning Rate)

學習率 學習率是訓練神經網絡的重要超參數之一&#xff0c;它代表在每一次迭代中梯度向損失函數最優解移動的步長。它的大小決定網絡學習速度的快慢。在網絡訓練過程中&#xff0c;模型通過樣本數據給出預測值&#xff0c;計算代價函數并通過反向傳播來調整參數。重復上述過程…

Geoserver源碼解讀四 REST服務

文章目錄 文章目錄 一、概要 二、前置知識點-FreeMarker 三、前置知識點-AbstractHttpMessageConverter 3.1 描述 3.2 應用 四、前置知識點-AbstractDecorator 4.1描述 4.2 應用 五、工作空間查詢解讀 5.1 模板解讀 5.2 請求轉換器解讀 一、概要 關于geoserver的r…

zabbix-agent2啟動失敗報錯Unit zabbix-agent2.service entered failed state.

文章目錄 1&#xff0c;用systemctl status zabbix-agent2查看報錯狀態2&#xff0c;用journalctl -xe查看一下報錯日志3&#xff0c;再看一下zabbix的日志。4&#xff0c;錯誤修改5&#xff0c; 再次重啟zabbix-agent2 1&#xff0c;用systemctl status zabbix-agent2查看報錯…

高考季-計算機相關專業與所學核心課程介紹以及高考報考學校推薦

計算機相關專業通常包括計算機科學與技術、軟件工程、信息安全、網絡工程、人工智能等。以下是對這些專業的詳細介紹、所學課程內容以及一些推薦的學校和專業。 1. 計算機科學與技術 專業介紹 計算機科學與技術是研究計算機系統及其相關技術的學科&#xff0c;包括計算機硬件…

ref與reactive

在Vue 3中&#xff0c;ref 和 reactive 是兩種用于創建響應式狀態的API。它們在實現方式和使用場景上有所不同。下面是對 ref 和 reactive 的深度解析&#xff1a; 1. ref 解析 ref 用于創建一個單一的響應式引用&#xff0c;可以用來包裹基本類型&#xff08;如字符串、數字…

Word如何在頁眉中插入和刪除橫線

你平常是否遇見到Word的頁眉中有一條橫線&#xff0c;怎么也刪不了&#xff01;&#xff01;&#xff01; 今天劉小生分享如何在頁眉中插入和刪除橫線&#xff0c;我們一起操練起來吧&#xff01; 1、Word頁眉插入橫線 選擇【插入】-【頁眉頁腳】&#xff0c;在“頁眉頁腳”…

00_Python核心編程

Python入門 一 Python初識 1 Python的歷史 Python的歷史python是蟒蛇的含義python是一種解釋型的,面向對象的,帶有動態語義的高級程序設計語言. python是一種使你在編程時能夠保持自己的風格的程序設計語言,你不用費什么勁就可以實現你想要的功能,并且編寫的程序清晰易懂. …

ArcGIS Pro SDK (五)內容 5 元數據

ArcGIS Pro SDK &#xff08;五&#xff09;內容 5 收藏夾 目錄 ArcGIS Pro SDK &#xff08;五&#xff09;內容 5 收藏夾1 獲取其 IMetadata 接口2 獲取項目的元數據&#xff1a;獲取XML3 設置項目的元數據&#xff1a;設置XML項4 檢查元數據是否可以編輯&#xff1a;可以編輯…

可靠性評估的概念和流程

可靠性評估的概念和流程 可靠性評估是系統工程中的一項重要任務&#xff0c;它旨在確定系統的可靠性和預期的運行時間&#xff0c;以便進行設計優化和維護決策。其概念和流程通常涉及以下幾個關鍵要素&#xff1a; 可靠性模型&#xff1a; 可靠性模型是描述系統或組件性能的…

常見的排序算法【總結】

目錄 排序的基本概念與分類排序的穩定性內排序與外排序簡單排序冒泡排序時間復雜度&#xff1a; O ( n 2 ) O(n^2) O(n2) 簡單選擇排序排序原理&#xff1a;時間復雜度&#xff1a; O ( n 2 ) O(n^2) O(n2) 插入排序排序原理&#xff1a;時間復雜度&#xff1a; O ( n 2 ) O(n^…