Storm的設(shè)計(jì)思想是什么

這篇文章主要介紹“Storm的設(shè)計(jì)思想是什么”,在日常操作中,相信很多人在Storm的設(shè)計(jì)思想是什么問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Storm的設(shè)計(jì)思想是什么”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!

站在用戶的角度思考問題,與客戶深入溝通,找到湖口網(wǎng)站設(shè)計(jì)與湖口網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗(yàn)好的作品,建站類型包括:成都做網(wǎng)站、網(wǎng)站設(shè)計(jì)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、空間域名、虛擬主機(jī)、企業(yè)郵箱。業(yè)務(wù)覆蓋湖口地區(qū)。

實(shí)時(shí)計(jì)算概述

有別于傳統(tǒng)的離線批處理操作(對很多數(shù)據(jù)的集合進(jìn)行的操作),實(shí)時(shí)處理,說白就是針對一條一條的數(shù)據(jù)/記錄進(jìn)行操作,所有的這些操作進(jìn)行一個匯總(截止到目前為止的所有的統(tǒng)計(jì)總和)。

實(shí)時(shí)計(jì)算與離線計(jì)算比較

Bounded:有界
    離線計(jì)算面臨的操作數(shù)據(jù)都是有界限的,無論是1G、1T、1P、1EB、1NB
    數(shù)據(jù)的有界必然會導(dǎo)致計(jì)算的有界
UnBounded:×××
    實(shí)時(shí)計(jì)算面臨的操作數(shù)據(jù)是源源不斷的向水流一樣,是沒有界限的,
    數(shù)據(jù)的×××必然導(dǎo)致計(jì)算的×××

來自Flink官網(wǎng)的說明:

First, 2 types of datasets
    Unbounded: Infinite datasets that are appended to continuously
    Bounded: Finite, unchanging datasets

Second, 2 types of execution models
    Streaming: Processing that executes continuously as long as data is being produced
    Batch: Processing that is executed and runs to completeness in a finite amount of 
           time, releasing computing resources when finished

大數(shù)據(jù)處理的6大問題

3大計(jì)算中心
    離線批處理
    準(zhǔn)實(shí)時(shí)流計(jì)算中心
    實(shí)時(shí)流計(jì)算
3大計(jì)算引擎
    用戶交互式計(jì)算引擎:SQL/ES
    圖計(jì)算引擎
    機(jī)器學(xué)習(xí)計(jì)算引擎

Storm簡介

ApacheStorm是Twitter開源的一個類似于Hadoop的實(shí)時(shí)數(shù)據(jù)處理框架,它原來是由BackType開發(fā),后BackType被Twitter收購,將Storm作為Twitter的實(shí)時(shí)數(shù)據(jù)分析系統(tǒng)。

Storm能實(shí)現(xiàn)高頻數(shù)據(jù)和大規(guī)模數(shù)據(jù)的實(shí)時(shí)處理。

官網(wǎng)資料顯示storm的一個節(jié)點(diǎn)1秒鐘能夠處理100萬個100字節(jié)的消息(IntelE5645@2.4Ghz的CPU,24GB的內(nèi)存)。(即單節(jié)點(diǎn)每秒大概處理95MB左右數(shù)據(jù))

官網(wǎng):<http://storm.apache.org>

Storm和Hadoop比較

  • 數(shù)據(jù)來源

    HADOOP處理的是HDFS上TB級別的數(shù)據(jù)(歷史數(shù)據(jù)),STORM是處理的是實(shí)時(shí)新增的某一筆數(shù)據(jù)(實(shí)時(shí)數(shù)據(jù));

  • 處理過程

    HADOOP是分MAP階段到REDUCE階段,STORM是由用戶定義處理流程,流程中可以包含多個步驟,每個步驟可以是數(shù)據(jù)源(SPOUT)或處理邏輯(BOLT);

  • 是否結(jié)束

    HADOOP最后是要結(jié)束的,STORM是沒有結(jié)束狀態(tài),到最后一步時(shí),就停在那,直到有新數(shù)據(jù)進(jìn)入時(shí)再從頭開始;

  • 處理速度

    HADOOP是以處理HDFS上TB級別數(shù)據(jù)為目的,處理速度慢,STORM是只要處理新增的某一筆數(shù)據(jù)即可,可以做到很快;

  • 適用場景

    HADOOP是在要處理批量數(shù)據(jù)時(shí)用的,不講究時(shí)效性,STORM是要處理某一新增數(shù)據(jù)時(shí)用的,要講時(shí)效性。

Storm的設(shè)計(jì)思想

Storm是對流Stream的抽象,流是一個不間斷的×××的連續(xù)tuple,注意Storm在建模事件流時(shí),把流中的事件抽象為tuple即元組。

Storm將流中元素抽象為Tuple,一個tuple就是一個值列表——valuelist,list中的每個value都有一個name,并且該value可以是基本類型,字符類型,字節(jié)數(shù)組等,當(dāng)然也可以是其他可序列化的類型。

Storm認(rèn)為每個stream都有一個stream源,也就是原始元組的源頭,所以它將這個源頭稱為Spout。

有了源頭即spout也就是有了stream,那么該如何處理stream內(nèi)的tuple呢。將流的狀態(tài)轉(zhuǎn)換稱為Bolt,bolt可以消費(fèi)任意數(shù)量的輸入流,只要將流方向?qū)蛟揵olt,同時(shí)它也可以發(fā)送新的流給其他bolt使用,這樣一來,只要打開特定的spout(管口)再將spout中流出的tuple導(dǎo)向特定的bolt,又bolt對導(dǎo)入的流做處理后再導(dǎo)向其他bolt或者目的地。

Storm的設(shè)計(jì)思想是什么

以上處理過程統(tǒng)稱為Topology即拓?fù)洹M負(fù)涫莝torm中最高層次的一個抽象概念,它可以被提交到storm集群執(zhí)行,一個拓?fù)渚褪且粋€流轉(zhuǎn)換圖,圖中每個節(jié)點(diǎn)是一個spout或者bolt,圖中的邊表示bolt訂閱了哪些流,當(dāng)spout或者bolt發(fā)送元組到流時(shí),它就發(fā)送元組到每個訂閱了該流的bolt(這就意味著不需要我們手工拉管道,只要預(yù)先訂閱,spout就會將流發(fā)到適當(dāng)bolt上)。

拓?fù)涞拿總€節(jié)點(diǎn)都要說明它所發(fā)出的元組的字段的name,其他節(jié)點(diǎn)只需要訂閱該name就可以接收處理。

到此,關(guān)于“Storm的設(shè)計(jì)思想是什么”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!

名稱欄目:Storm的設(shè)計(jì)思想是什么
網(wǎng)址分享:http://muchs.cn/article16/ghiedg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營銷微信小程序、響應(yīng)式網(wǎng)站、網(wǎng)站設(shè)計(jì)公司網(wǎng)站收錄、網(wǎng)站設(shè)計(jì)

廣告

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

小程序開發(fā)