欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

SparkStreaming與KafkaStream的原理是什么

這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)?lái)有關(guān)Spark Streaming與Kafka Stream的原理是什么,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

創(chuàng)新互聯(lián)建站于2013年開始,先為鞏留等服務(wù)建站,鞏留等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為鞏留企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。

下面介紹了兩大常用的流式處理框架,Spark Streaming和Kafka  Stream,并對(duì)他們各自的特點(diǎn)做了詳細(xì)說(shuō)明,以幫助讀者在不同的場(chǎng)景下對(duì)框架進(jìn)行選擇。以下是譯文。流式處理的需求每天都在增加,僅僅對(duì)大量的數(shù)據(jù)進(jìn)行處理是不夠的。數(shù)據(jù)必須快速地得到處理,以便企業(yè)能夠?qū)崟r(shí)地對(duì)不斷變化的業(yè)務(wù)環(huán)境做出反應(yīng)。流式處理是持續(xù)而又并發(fā)地對(duì)數(shù)據(jù)進(jìn)行實(shí)時(shí)處理。流式處理是處理數(shù)據(jù)流或傳感器數(shù)據(jù)的理想平臺(tái),而“復(fù)雜事件處理”(CEP)則利用了逐個(gè)事件處理和聚合等技術(shù)。對(duì)于實(shí)時(shí)數(shù)據(jù)處理功能,我們有很多選擇可以來(lái)實(shí)現(xiàn),比如Spark、Kafka  Stream、Flink、Storm等。在這個(gè)博客中,我將討論Apache Spark和Kafka Stream的區(qū)別。

Apache Spark

Apache  Spark是大規(guī)模數(shù)據(jù)處理的通用框架,支持多種不同的編程語(yǔ)言和概念,例如MapReduce、內(nèi)存處理、流式處理、圖形處理和機(jī)器學(xué)習(xí)。它也可以用于Hadoop的頂層。數(shù)據(jù)可以從多種來(lái)源(例如Kafka、Flume、Kinesis或TCP套接字)獲取,并且使用一些復(fù)雜的算法(高級(jí)功能,例如映射、歸約、連接和窗口等)對(duì)數(shù)據(jù)進(jìn)行處理。

Spark Streaming與Kafka Stream的原理是什么

在框架內(nèi)部,它的工作原理如下圖。 Spark  Streaming接收實(shí)時(shí)輸入數(shù)據(jù)流,并將數(shù)據(jù)分成多個(gè)批次,然后由Spark引擎對(duì)其進(jìn)行處理,批量生成最終的結(jié)果流。

Spark Streaming與Kafka Stream的原理是什么

Spark Streaming提供了一個(gè)被稱為離散化數(shù)據(jù)流(discretized  stream,縮寫為DStream)的高級(jí)抽象,它代表了一個(gè)持續(xù)的數(shù)據(jù)流。DStream可以從諸如Kafka、Flume或Kinesis等來(lái)源的輸入數(shù)據(jù)流中創(chuàng)建,或者通過(guò)對(duì)其他DStream執(zhí)行高級(jí)操作來(lái)創(chuàng)建。在框架內(nèi)部,DStream可以看成是一系列的RDD(Resilient  Distributed Datasets,彈性分布式數(shù)據(jù)集)。

Kafka Stream

Kafka  Streams是一個(gè)用于處理和分析數(shù)據(jù)的客戶端庫(kù)。它先把存儲(chǔ)在Kafka中的數(shù)據(jù)進(jìn)行處理和分析,然后將最終所得的數(shù)據(jù)結(jié)果回寫到Kafka或發(fā)送到外部系統(tǒng)去。它建立在一些非常重要的流式處理概念之上,例如適當(dāng)區(qū)分事件時(shí)間和處理時(shí)間、窗口支持,以及應(yīng)用程序狀態(tài)的簡(jiǎn)單(高效)管理。同時(shí),它也基于Kafka中的許多概念,例如通過(guò)劃分主題進(jìn)行擴(kuò)展。此外,由于這個(gè)原因,它作為一個(gè)輕量級(jí)的庫(kù)可以集成到應(yīng)用程序中去。這個(gè)應(yīng)用程序可以根據(jù)需要獨(dú)立運(yùn)行、在應(yīng)用程序服務(wù)器中運(yùn)行、作為Docker容器,或通過(guò)資源管理器(如Mesos)進(jìn)行操作。

Kafka Streams直接解決了流式處理中的很多困難問(wèn)題:

  • 毫秒級(jí)延遲的逐個(gè)事件處理。

  • 有狀態(tài)的處理,包括分布式連接和聚合。

  • 方便的DSL。

  • 使用類似DataFlow的模型對(duì)無(wú)序數(shù)據(jù)進(jìn)行窗口化。

  • 具有快速故障切換的分布式處理和容錯(cuò)能力。

  • 無(wú)停機(jī)滾動(dòng)部署。

Apache Spark可以與Kafka一起使用來(lái)傳輸數(shù)據(jù),但是如果你正在為新應(yīng)用程序部署一個(gè)Spark集群,這絕對(duì)是一個(gè)復(fù)雜的大問(wèn)題。

為了克服這個(gè)復(fù)雜性,我們可以使用完整的流式處理框架,Kafka streams正是實(shí)現(xiàn)這個(gè)目的的***選擇。

Spark Streaming與Kafka Stream的原理是什么

我們的目標(biāo)是簡(jiǎn)化流式處理,使之成為異步服務(wù)的主流應(yīng)用程序編程模型。這是我知道的***個(gè)庫(kù),它充分利用了Kafka,而不僅僅把Kafka當(dāng)做是一個(gè)信息中介。

Streams建立在KTables和KStreams的概念之上,這有助于他們提供事件時(shí)間處理。

給出一個(gè)與Kafka的核心抽象高度集成的處理模型,能夠減少流式架構(gòu)中移動(dòng)件的總數(shù)。

將狀態(tài)表與事件流完全整合起來(lái),并在單個(gè)概念框架中提供這兩個(gè)東西,這使得Kafka  Streams完全成為一個(gè)嵌入式的庫(kù),而不是流式處理集群(只是Kafka和你的應(yīng)用程序)。當(dāng)你向應(yīng)用程序加入了一個(gè)新的實(shí)例,或者現(xiàn)有的實(shí)例發(fā)生崩潰的時(shí)候,它能夠自動(dòng)均衡負(fù)載,并維護(hù)表的本地狀態(tài),使得系統(tǒng)能夠從故障中恢復(fù)出來(lái)。

Kafka  Streams具備低延遲的特點(diǎn),并且支持易于使用的事件時(shí)間。它是一個(gè)非常重要的庫(kù),非常適合某些類型的任務(wù)。這也是為什么一些設(shè)計(jì)可以針對(duì)Kafka的工作原理進(jìn)行深入地優(yōu)化的原因。你不需要設(shè)置任何種類的Kafka  Streams集群,也沒(méi)有集群管理器。如果你需要實(shí)現(xiàn)一個(gè)簡(jiǎn)單的Kafka的主題到主題的轉(zhuǎn)換、通過(guò)關(guān)鍵字對(duì)元素進(jìn)行計(jì)數(shù)、將另一個(gè)主題的數(shù)據(jù)加載到流上,或者運(yùn)行聚合或只執(zhí)行實(shí)時(shí)處理,那么Kafka  Streams適合于你。

如果事件時(shí)間不相關(guān),并且秒級(jí)的延遲可以接受,那么Spark是你的***選擇。它相當(dāng)穩(wěn)定,并且可以很容易地集成到幾乎任何類型的系統(tǒng)中去。此外,每個(gè)Hadoop發(fā)行版都包含它。而且,用于批處理應(yīng)用程序的代碼也可以用于流式應(yīng)用程序,因?yàn)锳PI是相同的。

結(jié)論

我認(rèn)為,Kafka Streams最適用于“Kafka > Kafka”場(chǎng)景,而Spark Streaming可用于“Kafka >  數(shù)據(jù)庫(kù)”或“Kafka > 數(shù)據(jù)科學(xué)模型“這樣的場(chǎng)景。

上述就是小編為大家分享的Spark Streaming與Kafka Stream的原理是什么了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

當(dāng)前文章:SparkStreaming與KafkaStream的原理是什么
網(wǎng)站鏈接:http://chinadenli.net/article4/gejcie.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供手機(jī)網(wǎng)站建設(shè)全網(wǎng)營(yíng)銷推廣企業(yè)網(wǎng)站制作微信小程序定制網(wǎng)站移動(dòng)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)