真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網站制作重慶分公司

Storm編程入門知識點有哪些

這篇文章主要講解了“Storm編程入門知識點有哪些”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Storm編程入門知識點有哪些”吧!

在沿灘等地區(qū),都構建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產品創(chuàng)新能力,以專注、極致的服務理念,為客戶提供成都網站建設、網站制作 網站設計制作按需策劃,公司網站建設,企業(yè)網站建設,高端網站設計,營銷型網站建設,外貿營銷網站建設,沿灘網站建設費用合理。

Storm是什么? 什么是流式計算

    Storm是一個分布式實時計算框架, 適應于流式計算。 所謂流式計算,你可以把它想像成你家的電表,電在流過電表時,電表就要計算耗用量,電表對耗用量的計算就是典型的流式計算。

    下面介紹編程過程中需要用到的Storm的幾個概念:

  • Topology
        Topology似于Hadoop中的MapReduce Job,是一個用來編排、容納一組計算邏輯組件(Spout、Bolt)的對象(Hadoop MapReduce中一個Job包含一組Map Task、Reduce Task),這一組計算組件可以按照DAG圖的方式編排起來(通過選擇Stream Groupings來控制數(shù)據流分發(fā)流向),從而組合成一個計算邏輯更加強大的對象,那就是Topology。一個Topology運行以后就不能停止,它會無限地運行下去,除非手動干預(顯式執(zhí)行bin/storm kill )或意外故障(如停機、整個Storm集群掛掉)讓它終止。

  • Spout
        Spout是一個Topology消息源頭,是一個可持續(xù)不斷生產消息的組件,例如,它可以是一個Socket Server在監(jiān)聽外部Client連接并發(fā)送消息,可以是一個消息隊列(MQ)的消費者、可以是用來接收Flume Agent的Sink所發(fā)送消息的服務,等等。Spout生產的消息在Storm中被抽象為Tuple,在整個Topology的多個計算組件之間都是根據需要抽象構建的Tuple消息來進行連接,從而形成流。

  • Bolt
        Storm中消息的處理邏輯被封裝到Bolt中,任何處理邏輯都可以在Bolt里面執(zhí)行,處理過程和普通計算應用程序沒什么區(qū)別,只是需要根據Storm的計算語義來合理設置一下組件之間消息流的聲明、分發(fā)、連接即可。Bolt可以接收來自一個或多個Spout的Tuple消息,也可以來自多個其它Bolt的Tuple消息,也可能是Spout和其它Bolt組合發(fā)送的Tuple消息。

  • Stream Grouping
        Storm中用來定義各個計算組件(Spout、Bolt)之間流的連接、分組、分發(fā)關系。Storm定義了如下7種分發(fā)策略:Shuffle Grouping(隨機分組)、Fields Grouping(按字段分組)、All Grouping(廣播分組)、Global Grouping(全局分組)、Non Grouping(不分組)、Direct Grouping(直接分組)、Local or Shuffle Grouping(本地/隨機分組),各種策略的具體含義可以參考Storm官方文檔、比較容易理解。

示例代碼 storm-demo

     storm-demo是一個包含完整的storm topology的代碼示例,有詳盡的注釋。
源碼見: https://git.oschina.net/HuQingmiao/storm-demo.git

怎么把storm 程序跑起來

###本地模式      在本地開發(fā)時,不需要部署storm, 直接在eclipse或IntelliJ idea下運行即可,便于調試。      也可以通過命令行執(zhí)行: java -jar jar文件名 main入口類

###生產模式     先將你的應用程序打成jar包,但jar包中不要含有storm及相關日志包,即將storm及相關日志包的scope設為provided即可:

        
            org.apache.storm
            storm-core
            0.9.5
            provided
        

    再把應用程序jar包上傳到storm結點(Nimbus), 然后在結點上執(zhí)行指令:

   storm  jar  你的應用程序.jar  Main入口類   參數(shù)(topologId)
 或
   jstorm jar 你的應用程序.jar  Main入口類   參數(shù)(topologId)

    若要在在生產模式下停止這個topology,則執(zhí)行以下命令即可:

   storm  kill  參數(shù)(topologId)
或
   jstorm  kill  參數(shù)(topologId)

感謝各位的閱讀,以上就是“Storm編程入門知識點有哪些”的內容了,經過本文的學習后,相信大家對Storm編程入門知識點有哪些這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關知識點的文章,歡迎關注!


新聞名稱:Storm編程入門知識點有哪些
網站網址:http://weahome.cn/article/pscdjj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部