RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Spark和Flink的技術(shù)與場(chǎng)景進(jìn)行全面分析與對(duì)比

DPVg_AI_era ? 來源:未知 ? 作者:李倩 ? 2018-08-01 09:00 ? 次閱讀

一提到大數(shù)據(jù),多半繞不開Spark 和 Flink。Spark用一個(gè)統(tǒng)一的引擎支持批處理、流處理、交互式查詢、機(jī)器學(xué)習(xí)等常見的數(shù)據(jù)處理場(chǎng)景,適應(yīng)性極廣,但數(shù)據(jù)流計(jì)算上表現(xiàn)稍弱,而Flink的出現(xiàn)很好地彌補(bǔ)了這一不足。本文對(duì) Spark 和 Flink 的技術(shù)與場(chǎng)景進(jìn)行了全面分析與對(duì)比,且看下一代大數(shù)據(jù)計(jì)算引擎之爭,誰主沉?。?/p>

下一代大數(shù)據(jù)計(jì)算引擎

自從數(shù)據(jù)處理需求超過了傳統(tǒng)數(shù)據(jù)庫能有效處理的數(shù)據(jù)量之后,Hadoop 等各種基于 MapReduce 的海量數(shù)據(jù)處理系統(tǒng)應(yīng)運(yùn)而生。從 2004 年 Google 發(fā)表 MapReduce 論文開始,經(jīng)過近 10 年的發(fā)展,基于 Hadoop 開源生態(tài)或者其它相應(yīng)系統(tǒng)的海量數(shù)據(jù)處理已經(jīng)成為業(yè)界的基本需求。

但是,很多機(jī)構(gòu)在開發(fā)自己的數(shù)據(jù)處理系統(tǒng)時(shí)都會(huì)發(fā)現(xiàn)需要面臨一系列的問題。從數(shù)據(jù)中獲取價(jià)值需要的投入遠(yuǎn)遠(yuǎn)超過預(yù)期。常見的問題包括:

非常陡峭的學(xué)習(xí)曲線。剛接觸這個(gè)領(lǐng)域的人經(jīng)常會(huì)被需要學(xué)習(xí)的技術(shù)的數(shù)量砸暈。不像經(jīng)過幾十年發(fā)展的數(shù)據(jù)庫一個(gè)系統(tǒng)可以解決大部分?jǐn)?shù)據(jù)處理需求,Hadoop 等大數(shù)據(jù)生態(tài)里的一個(gè)系統(tǒng)往往在一些數(shù)據(jù)處理場(chǎng)景上比較擅長,另一些場(chǎng)景湊合能用,還有一些場(chǎng)景完全無法滿足需求。結(jié)果就是需要好幾個(gè)系統(tǒng)來處理不同的場(chǎng)景。

(來源:https://mapr.com/developercentral/lambda-architecture/)

上圖是一個(gè)典型的 lambda 架構(gòu),只是包含了批處理和流處理兩種場(chǎng)景,就已經(jīng)牽涉到至少四五種技術(shù)了,還不算每種技術(shù)的可替代選擇。再加上實(shí)時(shí)查詢、交互式分析、機(jī)器學(xué)習(xí)等場(chǎng)景,每個(gè)場(chǎng)景都有幾種技術(shù)可以選擇,每個(gè)技術(shù)涵蓋的領(lǐng)域還有不同方式的重疊。結(jié)果就是一個(gè)業(yè)務(wù)經(jīng)常需要使用四五種以上的技術(shù)才能支持好一個(gè)完整的數(shù)據(jù)處理流程。加上調(diào)研選型,需要了解的數(shù)目還要多得多。

下圖是大數(shù)據(jù)領(lǐng)域的全景。暈了沒?

2018 大數(shù)據(jù)和 AI 全景

開發(fā)和運(yùn)行效率低下。因?yàn)闋可娴蕉喾N系統(tǒng),每種系統(tǒng)有自己的開發(fā)語言和工具,開發(fā)效率可想而知。而因?yàn)椴捎昧硕嗵紫到y(tǒng),數(shù)據(jù)需要在各個(gè)系統(tǒng)之間傳輸,也造成了額外的開發(fā)和運(yùn)行代價(jià),數(shù)據(jù)的一致也難以保證。在很多機(jī)構(gòu),實(shí)際上一半以上的開發(fā)精力花在了數(shù)據(jù)在各個(gè)系統(tǒng)之間的傳輸上。

復(fù)雜的運(yùn)維。多個(gè)系統(tǒng),每個(gè)需要自己的運(yùn)維,帶來更高的運(yùn)維代價(jià)的同時(shí)也提高了系統(tǒng)出問題的可能。

數(shù)據(jù)質(zhì)量難以保證。數(shù)據(jù)出了問題難以跟蹤解決。

最后,還有人的問題。在很多機(jī)構(gòu),由于系統(tǒng)的復(fù)雜性,各個(gè)子系統(tǒng)的支持和使用落實(shí)在不同部門負(fù)責(zé)。

了解了這些問題以后,對(duì) Spark 從 2014 年左右開始迅速流行就比較容易理解了。Spark 在當(dāng)時(shí)除了在某些場(chǎng)景比 Hadoop MapReduce 帶來幾十到上百倍的性能提升外,還提出了用一個(gè)統(tǒng)一的引擎支持批處理、流處理、交互式查詢、機(jī)器學(xué)習(xí)等常見的數(shù)據(jù)處理場(chǎng)景??催^在一個(gè) Notebook 里完成上述所有場(chǎng)景的 Spark 演示,對(duì)比之前的數(shù)據(jù)流程開發(fā),對(duì)很多開發(fā)者來說不難做出選擇。經(jīng)過幾年的發(fā)展,Spark 已經(jīng)被視為可以完全取代 Hadoop 中的 MapReduce 引擎。

正在 Spark 如日中天高速發(fā)展的時(shí)候,2016 年左右 Flink 開始進(jìn)入大眾的視野并逐漸廣為人知。為什么呢?原來在人們開始使用 Spark 之后,發(fā)現(xiàn) Spark 雖然支持各種常見場(chǎng)景,但并不是每一種都同樣好用。數(shù)據(jù)流的實(shí)時(shí)處理就是其中相對(duì)較弱的一環(huán)。Flink 憑借更優(yōu)的流處理引擎,同時(shí)也支持各種處理場(chǎng)景,成為 Spark 的有力挑戰(zhàn)者。

Spark 和 Flink 是怎么做到這些的,它們之間又有那些異同,下面我們來具體看一下。

Spark和Flink的引擎技術(shù)

這一部分主要著眼于 Spark 和 Flink 引擎的架構(gòu)方面,更看重架構(gòu)帶來的潛力和限制。現(xiàn)階段的實(shí)現(xiàn)成熟度和局限會(huì)在后續(xù)生態(tài)部分探討。

數(shù)據(jù)模型和處理模型

要理解 Spark 和 Flink 的引擎特點(diǎn),首先從數(shù)據(jù)模型開始。

Spark 的數(shù)據(jù)模型是彈性分布式數(shù)據(jù)集 RDD(Resilient Distributed Datasets)。 比起 MapReduce 的文件模型,RDD 是一個(gè)更抽象的模型,RDD 靠血緣(lineage) 等方式來保證可恢復(fù)性。很多時(shí)候 RDD 可以實(shí)現(xiàn)為分布式共享內(nèi)存或者完全虛擬化(即有的中間結(jié)果 RDD 當(dāng)下游處理完全在本地時(shí)可以直接優(yōu)化省略掉)。這樣可以省掉很多不必要的 I/O,是早期 Spark 性能優(yōu)勢(shì)的主要原因。

Spark 用 RDD 上的變換(算子)來描述數(shù)據(jù)處理。每個(gè)算子(如 map,filter,join)生成一個(gè)新的 RDD。所有的算子組成一個(gè)有向無環(huán)圖(DAG)。Spark 比較簡單地把邊分為寬依賴和窄依賴。上下游數(shù)據(jù)不需要 shuffle 的即為窄依賴,可以把上下游的算子放在一個(gè)階段(stage) 里在本地連續(xù)處理,這時(shí)上游的結(jié)果 RDD 可以 省略。下圖展示了相關(guān)的基本概念。更詳細(xì)的介紹在網(wǎng)上比較容易找到,這里就不花太多篇幅了。

Spark DAG

(來源:http://datastrophic.io/core-concepts-architecture-and-internals-of-apache-spark/)

Flink 的基本數(shù)據(jù)模型是數(shù)據(jù)流,及事件(Event)的序列。數(shù)據(jù)流作為數(shù)據(jù)的基本模型可能沒有表或者數(shù)據(jù)塊直觀熟悉,但是可以證明是完全等效的。流可以是無邊界的無限流,即一般意義上的流處理。也可以是有邊界的有限流,這樣就是批處理。

Flink 用數(shù)據(jù)流上的變換(算子)來描述數(shù)據(jù)處理。每個(gè)算子生成一個(gè)新的數(shù)據(jù)流。在算子,DAG,和上下游算子鏈接(chaining) 這些方面,和 Spark 大致等價(jià)。Flink 的節(jié)點(diǎn)(vertex)大致相當(dāng)于 Spark 的階段(stage),劃分也會(huì)和上圖的 Spark DAG 基本一樣。

Flink 任務(wù)圖(來源:https://ci.apache.org/projects/flink/flink-docs-release-1.5/concepts/runtime.html)

在 DAG 的執(zhí)行上,Spark 和 Flink 有一個(gè)比較顯著的區(qū)別。在 Flink 的流執(zhí)行模式中,一個(gè)事件在一個(gè)節(jié)點(diǎn)處理完后的輸出就可以發(fā)到下一個(gè)節(jié)點(diǎn)立即處理。這樣執(zhí)行引擎并不會(huì)引入額外的延遲。與之相應(yīng)的,所有節(jié)點(diǎn)是需要同時(shí)運(yùn)行的。而 Spark 的 micro batch 和一般的 batch 執(zhí)行一樣,處理完上游的 stage 得到輸出之后才開始下游的 stage。

在 Flink 的流執(zhí)行模式中,為了提高效率也可以把多個(gè)事件放在一起傳輸或者計(jì)算。但這完全是執(zhí)行時(shí)的優(yōu)化,可以在每個(gè)算子獨(dú)立決定,也不用像 RDD 等批處理模型中一樣和數(shù)據(jù)集邊界綁定,可以做更加靈活的優(yōu)化同時(shí)可以兼顧低延遲需求。

Flink 使用異步的 checkpoint 機(jī)制來達(dá)到任務(wù)狀態(tài)的可恢復(fù)性,以保證處理的一致性,所以在處理的主流程上可以做到數(shù)據(jù)源和輸出之間數(shù)據(jù)完全不用落盤,達(dá)到更高的性能和更低的延遲。

數(shù)據(jù)處理場(chǎng)景

除了批處理之外,Spark 還支持實(shí)時(shí)數(shù)據(jù)流處理、交互式查詢和機(jī)器學(xué)習(xí)、圖計(jì)算等。

(來源: https://databricks.com/spark/about)

實(shí)時(shí)數(shù)據(jù)流處理和批處理主要區(qū)別就是對(duì)低延時(shí)的要求。Spark 因?yàn)?RDD 是基于內(nèi)存的,可以比較容易切成較小的塊來處理。如果能對(duì)這些小塊處理得足夠快,就能達(dá)到低延時(shí)的效果。

交互式查詢場(chǎng)景,如果數(shù)據(jù)能全在內(nèi)存,處理得足夠快的話,就可以支持交互式查詢。

機(jī)器學(xué)習(xí)和圖計(jì)算其實(shí)是和前幾種場(chǎng)景不同的 RDD 算子類型。Spark 提供了庫來支持常用的操作,用戶或者第三方庫也可以自己擴(kuò)展。值得一提的是,Spark 的 RDD 模型和機(jī)器學(xué)習(xí)模型訓(xùn)練的迭代計(jì)算非常契合,從一開始就在有的場(chǎng)景帶來了非常顯著的性能提升。

從這些可以看出來,比起 Hadoop MapReduce, Spark 本質(zhì)上就是基于內(nèi)存的更快的批處理。然后用足夠快的批處理來實(shí)現(xiàn)各種場(chǎng)景。

(來源:https://www.slideshare.net/ParisCarbone/state-management-in-apache-flink-consistent-stateful-distributed-stream-processing)

前面說過,在 Flink 中,如果輸入數(shù)據(jù)流是有邊界的,就自然達(dá)到了批處理的效果。這樣流和批的區(qū)別完全是邏輯上的,和處理實(shí)現(xiàn)獨(dú)立,用戶需要實(shí)現(xiàn)的邏輯也完全一樣,應(yīng)該是更干凈的一種抽象。后續(xù)會(huì)在深入對(duì)比流計(jì)算方面的時(shí)候做更深入的討論。

Flink 也提供了庫來支持機(jī)器學(xué)習(xí)、圖計(jì)算等場(chǎng)景。從這方面來說和 Spark 沒有太大區(qū)別。

一個(gè)有意思的事情是用 Flink 的底層 API 可以支持只用 Flink 集群實(shí)現(xiàn)一些數(shù)據(jù)驅(qū)動(dòng)的分布式服務(wù)。有一些公司用 Flink 集群實(shí)現(xiàn)了社交網(wǎng)絡(luò),網(wǎng)絡(luò)爬蟲等服務(wù)。這個(gè)也體現(xiàn)了 Flink 作為計(jì)算引擎的通用性,并得益于 Flink 內(nèi)置的靈活的狀態(tài)支持。

總的來說,Spark 和 Flink 都瞄準(zhǔn)了在一個(gè)執(zhí)行引擎上同時(shí)支持大多數(shù)數(shù)據(jù)處理場(chǎng)景,也應(yīng)該都能做到這一點(diǎn)。主要區(qū)別就在于因?yàn)榧軜?gòu)本身的局限在一些場(chǎng)景會(huì)受到限制。比較突出的地方就是 Spark Streaming 的 micro batch 執(zhí)行模式。Spark 社區(qū)應(yīng)該也意識(shí)到了這一點(diǎn),最近在持續(xù)執(zhí)行模式(continuous processing)方面開始發(fā)力。 具體情況會(huì)在后面介紹。

有狀態(tài)處理(Stateful Processing)

Flink 還有一個(gè)非常獨(dú)特的地方是在引擎中引入了托管狀態(tài)(managed state)。要理解托管狀態(tài),首先要從有狀態(tài)處理說起。如果處理一個(gè)事件(或一條數(shù)據(jù))的結(jié)果只跟事件本身的內(nèi)容有關(guān),稱為無狀態(tài)處理;反之結(jié)果還和之前處理過的事件有關(guān),稱為有狀態(tài)處理。稍微復(fù)雜一點(diǎn)的數(shù)據(jù)處理,比如說基本的聚合,都是有狀態(tài)處理。Flink 很早就認(rèn)為沒有好的狀態(tài)支持是做不好留處理的,因此引入了 managed state 并提供了 API 接口。

Flink 中的狀態(tài)支持

(來源:https://www.slideshare.net/ParisCarbone/state-management-in-apache-flink-consistent-stateful-distributed-stream-processing)

一般在流處理的時(shí)候會(huì)比較關(guān)注有狀態(tài)處理,但是仔細(xì)看的話批處理也是會(huì)受到影響的。比如常見的窗口聚合,如果批處理的數(shù)據(jù)時(shí)間段比窗口大,是可以不考慮狀態(tài)的,用戶邏輯經(jīng)常會(huì)忽略這個(gè)問題。但是當(dāng)批處理時(shí)間段變得比窗口小的時(shí)候,一個(gè)批的結(jié)果實(shí)際上依賴于以前處理過的批。這時(shí),因?yàn)榕幚硪嬉话銢]有這個(gè)需求不會(huì)有很好的內(nèi)置支持,維護(hù)狀態(tài)就成為了用戶需要解決的事情。比如窗口聚合的情況用戶就要加一個(gè)中間結(jié)果表記住還沒有完成的窗口的結(jié)果。這樣當(dāng)用戶把批處理時(shí)間段變短的時(shí)候就會(huì)發(fā)現(xiàn)邏輯變復(fù)雜了。這是早期 Spark Streaming 用戶 經(jīng)常碰到的問題,直到 Structured Streaming 出來才得到緩解。

而像 Flink 這樣以流處理為基本模型的引擎,因?yàn)橐婚_始就避不開這個(gè)問題,所以引入了 managed state 來提供了一個(gè)通用的解決方案。比起用戶實(shí)現(xiàn)的特定解決方案,不但用戶開發(fā)更簡單,而且能提供更好的性能。最重要的是能更好地保證處理結(jié)果的一致性。

簡單來說,就是有一些內(nèi)秉的數(shù)據(jù)處理邏輯,在批處理中容易被忽略或簡化處理掉也能得到可用的結(jié)果,而在流處理中問題被暴露出來解決掉了。所以流計(jì)算引擎用有限流來處理批在邏輯上比較嚴(yán)謹(jǐn),能自然達(dá)到正確性。主要做一些不同的實(shí)現(xiàn)來優(yōu)化性能就可以了。而用更小的批來模擬流需要處理一些以前沒有的問題。當(dāng)計(jì)算引擎還沒有通用解決方案的時(shí)候就需要用戶自己解決了。類似的問題還有維表的變化(比如用戶信息的更新),批處理數(shù)據(jù)的邊界和遲到數(shù)據(jù)等等。

編程模型

Spark 1.6 時(shí)的 API 狀態(tài)

Spark 的初衷之一就是用統(tǒng)一的編程模型來解決用戶的各種需求,在這方面一直很下功夫。最初基于 RDD 的 API 就可以做各種類型的數(shù)據(jù)處理。后來為了簡化用戶開發(fā),逐漸推出了更高層的 DataFrame(在 RDD 中加了列變成結(jié)構(gòu)化數(shù)據(jù))和 Datasets(在 DataFrame 的列上加了類型),并在 Spark 2.0 中做了整合(DataFrame = DataSet[Row])。Spark SQL 的支持也比較早就引入了。在加上各個(gè)處理類型 API 的不斷改進(jìn),比如 Structured Streaming 以及和機(jī)器學(xué)習(xí)深度學(xué)習(xí)的交互,到了今天 Spark 的 API 可以說是非常好用的,也是 Spark 最強(qiáng)的方面之一。

Spark 2.0 API

(來源:https://databricks.com/blog/2016/07/14/a-tale-of-three-apache-spark-apis-rdds-dataframes-and-datasets.html)

Flink 的 API 也有類似的目標(biāo)和發(fā)展路線。Flink 和 Spark 的核心 API 可以說是可以基本對(duì)應(yīng)的。今天 Spark API 總體上更完備一下,比如說最近一兩年大力投入的和機(jī)器學(xué)習(xí)深度學(xué)習(xí)的整合方面。Flink 在流處理相關(guān)的方面還是領(lǐng)先一些,比如對(duì) watermark、window、trigger 的各種支持。

Flink API

(來源:https://ci.apache.org/projects/flink/flink-docs-release-1.5/concepts/programming-model.html)

小結(jié)

Spark 和 Flink 都是通用的能夠支持超大規(guī)模數(shù)據(jù)處理,支持各種處理類型的計(jì)算引擎。兩個(gè)系統(tǒng)都有很多值得探討的方面在這里沒有觸及,比如 SQL 的優(yōu)化,和機(jī)器學(xué)習(xí)的集成等等。這里主要是試圖從最基本的架構(gòu)和設(shè)計(jì)方面來比較一下兩個(gè)系統(tǒng)。因?yàn)樯蠈拥墓δ茉谝欢ǔ潭壬鲜强梢曰ハ嘟梃b的,有足夠的投入應(yīng)該都能做好。而基本的設(shè)計(jì)改變起來會(huì)傷筋動(dòng)骨,更困難一些。

Spark 和 Flink 的不同執(zhí)行模型帶來的最大的區(qū)別應(yīng)該還是在對(duì)流計(jì)算的支持上。最開始的 Spark Streaming 對(duì)流計(jì)算想得過于簡單,對(duì)復(fù)雜一點(diǎn)的計(jì)算用起來會(huì)有不少問題。從 Spark 2.0 開始引入的 Structured Streaming 重新整理了流計(jì)算的語義,支持按事件時(shí)間處理和端到端的一致性。雖然在功能上還有不少限制,比之前已經(jīng)有了長足的進(jìn)步。不過 micro batch 執(zhí)行方式帶來的問題還是存在,特別在規(guī)模上去以后性能問題會(huì)比較突出。最近 Spark 受一些應(yīng)用場(chǎng)景的推動(dòng),也開始開發(fā)持續(xù)執(zhí)行模式。2.3 里的實(shí)驗(yàn)性發(fā)布還只支持簡單的 map 類操作。

Spark 持續(xù)執(zhí)行模式狀態(tài)

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 數(shù)據(jù)處理
    +關(guān)注

    關(guān)注

    0

    文章

    595

    瀏覽量

    28554
  • 機(jī)器學(xué)習(xí)

    關(guān)注

    66

    文章

    8406

    瀏覽量

    132561
  • SPARK
    +關(guān)注

    關(guān)注

    1

    文章

    105

    瀏覽量

    19891

原文標(biāo)題:Spark比拼Flink:下一代大數(shù)據(jù)計(jì)算引擎之爭,誰主沉浮?

文章出處:【微信號(hào):AI_era,微信公眾號(hào):新智元】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    PCBA分析儀的技術(shù)原理和應(yīng)用場(chǎng)景

    PCBA分析儀,通常指的是多功能PCBA測(cè)試儀,是一種綜合性測(cè)試設(shè)備,能夠同時(shí)進(jìn)行多種測(cè)試,如功能測(cè)試、ICT(在線測(cè)試)、AOI(自動(dòng)光學(xué)檢測(cè))、X射線檢測(cè)等。以下是對(duì)其技術(shù)原理和應(yīng)用場(chǎng)景
    發(fā)表于 12-04 14:31

    射頻分析儀的技術(shù)原理和應(yīng)用場(chǎng)景

    射頻分析儀是一種功能強(qiáng)大的電子測(cè)量儀器,在無線通信、電子測(cè)試等領(lǐng)域具有廣泛的應(yīng)用。以下是關(guān)于射頻分析儀的技術(shù)原理和應(yīng)用場(chǎng)景的詳細(xì)介紹:一、射頻分析
    發(fā)表于 11-26 14:32

    導(dǎo)航分析儀的技術(shù)原理和應(yīng)用場(chǎng)景

    特定的編碼規(guī)則進(jìn)行解析,獲取其中的位置、速度、時(shí)間等關(guān)鍵信息。  頻譜分析:對(duì)于一些復(fù)雜的導(dǎo)航信號(hào)環(huán)境,導(dǎo)航分析儀會(huì)采用頻譜分析技術(shù)。通過將
    發(fā)表于 11-19 15:13

    移動(dòng)終端測(cè)試儀的技術(shù)原理和應(yīng)用場(chǎng)景

    ,確保設(shè)備在導(dǎo)航服務(wù)中的準(zhǔn)確性和可靠性。 應(yīng)用場(chǎng)景移動(dòng)終端測(cè)試儀的應(yīng)用場(chǎng)景廣泛,涵蓋了從研發(fā)到生產(chǎn)、從維護(hù)到監(jiān)管的多個(gè)環(huán)節(jié): 移動(dòng)維修服務(wù):維修技術(shù)人員可以使用便攜的綜測(cè)儀快速對(duì)手機(jī)進(jìn)行
    發(fā)表于 11-04 16:01

    實(shí)時(shí)示波器的技術(shù)原理和應(yīng)用場(chǎng)景

    波形圖像。在信號(hào)處理方面,示波器首先將接收到的被測(cè)信號(hào)進(jìn)行放大和濾波等處理,以確保信號(hào)的準(zhǔn)確性和穩(wěn)定性。然后,通過A/D轉(zhuǎn)換技術(shù),將模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào),以便進(jìn)行后續(xù)的數(shù)字處理和顯示。二、應(yīng)用
    發(fā)表于 10-23 14:22

    參數(shù)分析儀的技術(shù)原理和應(yīng)用場(chǎng)景

    參數(shù)分析儀的技術(shù)原理和應(yīng)用場(chǎng)景因其具體類型和用途的不同而有所差異。以下是對(duì)參數(shù)分析技術(shù)原理和應(yīng)用場(chǎng)景
    發(fā)表于 10-17 14:42

    智能IC卡測(cè)試設(shè)備的技術(shù)原理和應(yīng)用場(chǎng)景

    智能IC卡測(cè)試設(shè)備的技術(shù)原理和應(yīng)用場(chǎng)景,可以從以下幾個(gè)方面進(jìn)行闡述:技術(shù)原理智能IC卡測(cè)試設(shè)備的技術(shù)原理主要圍繞IC卡的通信和數(shù)據(jù)處理機(jī)制展
    發(fā)表于 09-26 14:27

    NFC協(xié)議分析儀的技術(shù)原理和應(yīng)用場(chǎng)景

    的兼容性和性能表現(xiàn),確保物聯(lián)網(wǎng)設(shè)備的穩(wěn)定運(yùn)行和高效通信。 安全分析:在安全領(lǐng)域,NFC協(xié)議分析儀可以用于進(jìn)行NFC安全分析。通過模擬攻擊場(chǎng)景
    發(fā)表于 09-25 14:45

    USB協(xié)議分析儀的技術(shù)原理和應(yīng)用場(chǎng)景

    USB協(xié)議分析儀的技術(shù)原理和應(yīng)用場(chǎng)景可以詳細(xì)闡述如下:技術(shù)原理USB協(xié)議分析儀的技術(shù)原理主要基于
    發(fā)表于 09-24 14:29

    什么是 Flink SQL 解決不了的問題?

    覆蓋不了的問題,但 SQL 的易用性又難以讓人釋懷。所以有些場(chǎng)景在使用 FLink SQL 開始就與需要額外注意,下面就介紹一種多表關(guān)聯(lián)時(shí)存在部分列更新(partial Update)場(chǎng)景,在
    的頭像 發(fā)表于 07-09 20:50 ?292次閱讀

    spark運(yùn)行的基本流程

    前言: 由于最近對(duì)spark的運(yùn)行流程非常感興趣,所以閱讀了《Spark大數(shù)據(jù)處理:技術(shù)、應(yīng)用與性能優(yōu)化》一書。通過這本書的學(xué)習(xí),了解了spark的核心
    的頭像 發(fā)表于 07-02 10:31 ?400次閱讀
    <b class='flag-5'>spark</b>運(yùn)行的基本流程

    Spark基于DPU的Native引擎算子卸載方案

    Spark Streaming)、機(jī)器學(xué)習(xí)(Spark MLlib)和圖計(jì)算(GraphX)。Spark?使用內(nèi)存加載保存數(shù)據(jù)并進(jìn)行迭代計(jì)算,減少磁盤溢寫,同時(shí)支持 Java、Sca
    的頭像 發(fā)表于 06-28 17:12 ?558次閱讀
    <b class='flag-5'>Spark</b>基于DPU的Native引擎算子卸載方案

    關(guān)于Spark的從0實(shí)現(xiàn)30s內(nèi)實(shí)時(shí)監(jiān)控指標(biāo)計(jì)算

    前言 說起Spark,大家就會(huì)自然而然地想到Flink,而且會(huì)不自覺地將這兩種主流的大數(shù)據(jù)實(shí)時(shí)處理技術(shù)進(jìn)行比較。然后最終得出結(jié)論:Flink
    的頭像 發(fā)表于 06-14 15:52 ?437次閱讀

    RDMA技術(shù)在Apache Spark中的應(yīng)用

    、電信、零售、醫(yī)療保健還是物聯(lián)網(wǎng),Spark的應(yīng)用幾乎遍及所有需要處理海量數(shù)據(jù)和復(fù)雜計(jì)算的領(lǐng)域。它的快速、易用和通用性,使得數(shù)據(jù)科學(xué)家和工程師能夠輕松實(shí)現(xiàn)數(shù)據(jù)挖掘、數(shù)據(jù)分析、實(shí)時(shí)處理等任務(wù)。 然而,在Spark的燦爛光環(huán)背后,一
    的頭像 發(fā)表于 03-25 18:13 ?1528次閱讀
    RDMA<b class='flag-5'>技術(shù)</b>在Apache <b class='flag-5'>Spark</b>中的應(yīng)用

    基于DPU和HADOS-RACE加速Spark 3.x

    的查詢和分析功能。 隨著SSD和萬兆網(wǎng)卡普及以及IO技術(shù)的提升,CPU計(jì)算逐漸成為Spark 作業(yè)的瓶頸,而
    的頭像 發(fā)表于 03-25 18:12 ?1345次閱讀
    基于DPU和HADOS-RACE加速<b class='flag-5'>Spark</b> 3.x
    RM新时代网站-首页