如何使用TwitterStorm處理實時的大數(shù)據(jù)-創(chuàng)新互聯(lián)

這篇文章主要為大家展示了“如何使用Twitter Storm處理實時的大數(shù)據(jù)”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“如何使用Twitter Storm處理實時的大數(shù)據(jù)”這篇文章吧。

創(chuàng)新互聯(lián)專注于襄垣企業(yè)網(wǎng)站建設,成都響應式網(wǎng)站建設,商城網(wǎng)站建設。襄垣網(wǎng)站建設公司,為襄垣等地區(qū)提供建站服務。全流程按需制作,專業(yè)設計,全程項目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務

怎樣使用 Twitter Storm 處理實時的大數(shù)據(jù)

Hadoop(大數(shù)據(jù)分析領域無可爭辯的王者)專注于批處理。這種模型對許多情形(比如為網(wǎng)頁建立索引)已經(jīng)足夠,但還存在其他一些使用模型,它們 需要來自高度動態(tài)的來源的實時信息。為了解決這個問題,就得借助 Nathan Marz 推出的 Storm(現(xiàn)在在 Twitter 中稱為 BackType)。Storm 不處理靜態(tài)數(shù)據(jù),但它處理預計會連續(xù)的流數(shù)據(jù)??紤]到 Twitter 用戶每天生成 1.4 億條推文 (tweet),那么就很容易看到此技術的巨大用途。

但 Storm 不只是一個傳統(tǒng)的大數(shù)據(jù)分析系統(tǒng):它是復雜事件處理 (CEP) 系統(tǒng)的一個示例。CEP 系統(tǒng)通常分類為計算和面向檢測,其中每個系統(tǒng)都可通過用戶定義的算法在 Storm 中實現(xiàn)。舉例而言,CEP 可用于識別事件洪流中有意義的事件,然后實時地處理這些事件。

Nathan Marz 提供了在 Twitter 中使用 Storm 的大量示例。一個最有趣的示例是生成趨勢信息。Twitter 從海量的推文中提取所浮現(xiàn)的趨勢,并在本地和國家級別維護它們。這意味著當一個案例開始浮現(xiàn)時,Twitter 的趨勢主題算法就會實時識別該主題。這種實時算法在 Storm 中實現(xiàn)為 Twitter 數(shù)據(jù)的一種連續(xù)分析。

什么是 “大數(shù)據(jù)”?

大數(shù)據(jù) 指的是海量無法通過傳統(tǒng)方式管理的數(shù)據(jù)?;ヂ?lián)網(wǎng)范圍的數(shù)據(jù)正在推動能夠處理這類新數(shù)據(jù)的新架構(gòu)和應用程序的創(chuàng)建。這些架構(gòu)高度可擴展,且能夠跨無限多的服務器并行、高效地處理數(shù)據(jù)。

大數(shù)據(jù)實現(xiàn)

Hadoop 的核心是使用 Java? 語言編寫的,但支持使用各種語言編寫的數(shù)據(jù)分析應用程序。新的應用程序的實現(xiàn)采用了更加深奧的路線,以充分利用現(xiàn)代語言和它們的特性。例如,位于伯克利 的加利福尼亞大學 (UC) 的 Spark 是使用 Scala 語言實現(xiàn)的,而 Twitter Storm 是使用 Clojure(發(fā)音同 closure)語言實現(xiàn)的。

Clojure 是 Lisp 語言的一種現(xiàn)代方言。類似于 Lisp,Clojure 支持一種功能性編程風格,但 Clojure 還引入了一些特性來簡化多線程編程(一種對創(chuàng)建 Storm 很有用的特性)。Clojure 是一種基于虛擬機 (VM) 的語言,在 Java 虛擬機上運行。但是,盡管 Storm 是使用 Clojure 語言開發(fā)的,您仍然可以在 Storm 中使用幾乎任何語言編寫應用程序。所需的只是一個連接到 Storm 的架構(gòu)的適配器。已存在針對 Scala、JRuby、Perl 和 PHP 的適配器,但是還有支持流式傳輸?shù)?Storm 拓撲結(jié)構(gòu)中的結(jié)構(gòu)化查詢語言適配器。

怎樣使用 Twitter Storm 處理實時的大數(shù)據(jù)

Storm 的關鍵屬性

Storm 實現(xiàn)的一些特征決定了它的性能和可靠性的。Storm 使用 ZeroMQ 傳送消息,這就消除了中間的排隊過程,使得消息能夠直接在任務自身之間流動。在消息的背后,是一種用于序列化和反序列化 Storm 的原語類型的自動化且高效的機制。

Storm 的一個最有趣的地方是它注重容錯和管理。Storm 實現(xiàn)了有保障的消息處理,所以每個元組都會通過該拓撲結(jié)構(gòu)進行全面處理;如果發(fā)現(xiàn)一個元組還未處理,它會自動從噴嘴處重放。Storm 還實現(xiàn)了任務級的故障檢測,在一個任務發(fā)生故障時,消息會自動重新分配以快速重新開始處理。Storm 包含比 Hadoop 更智能的處理管理,流程會由監(jiān)管員來進行管理,以確保資源得到充分使用。

Storm 模型

Storm 實現(xiàn)了一種數(shù)據(jù)流模型,其中數(shù)據(jù)持續(xù)地流經(jīng)一個轉(zhuǎn)換實體網(wǎng)絡(參見 圖 1)。一個數(shù)據(jù)流的抽象稱為一個流,這是一個無限的元組序列。元組就像一種使用一些附加的序列化代碼來表示標準數(shù)據(jù)類型(比如整數(shù)、浮點和字節(jié)數(shù)組)或用戶定義類型的結(jié)構(gòu)。每個流由一個惟一 ID 定義,這個 ID 可用于構(gòu)建數(shù)據(jù)源和接收器 (sink) 的拓撲結(jié)構(gòu)。流起源于噴嘴,噴嘴將數(shù)據(jù)從外部來源流入 Storm 拓撲結(jié)構(gòu)中。

以上是“如何使用Twitter Storm處理實時的大數(shù)據(jù)”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學習更多知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

當前文章:如何使用TwitterStorm處理實時的大數(shù)據(jù)-創(chuàng)新互聯(lián)
文章路徑:http://muchs.cn/article0/dhisoo.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設計公司標簽優(yōu)化、服務器托管、動態(tài)網(wǎng)站、營銷型網(wǎng)站建設、品牌網(wǎng)站設計

廣告

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

手機網(wǎng)站建設