亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Hadoop生態(tài)Storm框架的實時人氣分布熱力圖構建分析

        2019-09-10 15:25:49彭嬌
        中國電氣工程學報 2019年4期
        關鍵詞:環(huán)境變量人流開源

        彭嬌

        摘要:隨著時代的發(fā)展,“大數(shù)據(jù)”已經(jīng)成為一個耳熟能詳?shù)脑~匯,與此同時,大數(shù)據(jù)處理框架Hadoop也逐漸成為數(shù)據(jù)處理挖掘行業(yè)廣泛使用的主流技術,而Storm作為“實時的Hadoop”,實現(xiàn)了大規(guī)模實時數(shù)據(jù)流處理的需求,達到實時數(shù)據(jù)監(jiān)控的目的。本文將基于Storm框架,利用手機信令、Logstash、Kafka等技術實時采集人流地理位置坐標數(shù)據(jù),以特殊高亮的形式顯示訪客熱衷的區(qū)域和訪客所在的地理區(qū)域的圖示,能夠準確并及時地分析人流信息,為出行者提供最優(yōu)質的選擇。

        關鍵字: Hadoop;Storm;實時處理

        引言

        隨著城市規(guī)模的擴張和交通的便利,閑暇時間的出游變的日常化。但城市交通可能會因為無法高效地利用路線和實時監(jiān)控,很容易造成交通堵塞。改善城市的出行、提高出行效率成為構建智慧城市的當務之急。如何在海量的交通、出行數(shù)據(jù)中,及時準備分析的當前的人流信息并進行監(jiān)控管理,為出行者提供優(yōu)質的交通引導服務,減少擁堵狀況,成為城市智能規(guī)劃的核心所在。

        在大數(shù)據(jù)時代,大數(shù)據(jù)處理的典型工具Hadoop是一個由Apache基金會所開發(fā)的分布式系統(tǒng)基礎架構,主要解決的是海量數(shù)據(jù)的存儲和分析計算問題,作為處理大數(shù)據(jù)的分布式存儲和計算框架,得到了國內(nèi)外大、中、小型企業(yè)的廣泛應用。不過它并不是一套實時系統(tǒng)。為了解決這個問題,計算機工程師們又開發(fā)了Storm和Kafka。 Apache Storm是一套開源的分布式實時計算系統(tǒng)。最早由Nathan Marz開發(fā),在被Twitter收購后開源,并在2014年9月起成為Apache頂級開源項目。Storm被廣泛用于各種商業(yè)網(wǎng)站,包括 Twitter、Yelp、Groupon、百度、淘寶等。Storm的使用場景非常廣泛,例如實時分析、在線機器學習、連續(xù)計算、分部署RPC、ET 等。Storm有著非??斓奶幚硭俣?,單節(jié)點可以達到百萬個元組每秒,此外它還具有高擴展、容錯、保證數(shù)據(jù)處理等特性。

        本文以IDEA為開發(fā)工具,利用Hadoop生態(tài)圈中的Storm框架、Zookeeper協(xié)調服務節(jié)點集群、Kafka中間件等運行環(huán)境,對人流信息數(shù)據(jù)進行流式處理和實時分析,并將結果反饋到基于J2EE架構的平臺中,實時顯示人流的熱力分布圖。

        1 實時數(shù)據(jù)流處理框架

        Storm是一個免費開源、分布式、高容錯的實時計算系統(tǒng)。Storm令持續(xù)不斷的流計算變得容易,彌補了Hadoop批處理所不能滿足的實時要求。Storm經(jīng)常用于在實時分析、在線機器學習、持續(xù)計算、分布式遠程調用和ETL等領域。

        Storm 采用主從架構,主要分為兩種組件Nimbus和Supervisor,這兩種組件都是快速失敗的,沒有狀態(tài),使利用 Zookeeper來協(xié)調狀態(tài)和保存集群運行的狀態(tài)信息,如圖1所示。

        Nimbus負責在集群里面發(fā)送代碼,分配工作給機器,并且監(jiān)控狀態(tài),全局只有一個。

        Supervisor會監(jiān)聽分配給它那臺機器的工作,根據(jù)需要啟動/關閉工作進程Worker。每一個要運行Storm的機器上都要部署一個,并且,按照機器的配置設定上面分配的槽位數(shù)。

        Zookeeper是Storm重點依賴的外部資源。Nimbus和Supervisor甚至實際運行的Worker都是把心跳保存在Zookeeper上的。Nimbus也是根據(jù)Zookeeper上的心跳和任務運行狀況,進行調度和任務分配的。

        Storm提交運行的程序稱為Topology。Topology處理的最小的消息單位是一個Tuple,也就是一個任意對象的數(shù)組。Topology由Spout和Bolt構成。Spout是發(fā)出Tuple的結點。Bolt可以隨意訂閱某個Spout或者Bolt發(fā)出的Tuple。Spout和Bolt都統(tǒng)稱為component。

        2 實驗與分析

        2.1 軟硬件環(huán)境參數(shù)設置

        硬件環(huán)境:CPU:酷睿i3主頻3.0GHz 內(nèi)存:8G 硬盤空間:1T

        軟件環(huán)境:jdk-8u161-linux-x64.tar 、apache-storm-1.1.3.tar、logstash-2.4.1.tar、kafka_2.11-0.9.0.0、zookeeper-3.4.5-cdh5.7.0.tar

        操作系統(tǒng):CentOS-6.5-x86_64-bin

        2.2 平臺架構及處理流程

        本平臺通過Logstash實時的將采集到的數(shù)據(jù)存儲到Kafka得broker集群中,Storm集群中的節(jié)點對Kafka中的數(shù)據(jù)進行處理,將處理后的數(shù)據(jù)輸出的數(shù)據(jù)庫DB中,將DB中的數(shù)據(jù)通過地圖的API上進行展示。其中Kafka集群和Storm集群的運行都依賴于Zookeeper。具體流程如圖2所示。

        (1)數(shù)據(jù)采集

        本系統(tǒng)可以依靠手機移動網(wǎng)絡信令來獲取用戶所在位置的經(jīng)緯度,從而收集獲取人流信息,通過對信令信息的相應字段進行分析、挖掘,并結合GIS技術實現(xiàn)自定義區(qū)域內(nèi)實時人流量的智能化統(tǒng)計分析。

        (2)搭建集群環(huán)境

        使用虛擬機VMWare構建有3個節(jié)點的集群環(huán)境,包括一個主節(jié)點master,和兩個從節(jié)點slave1和slave2。在集群環(huán)境搭建的過程中需要完成以下步驟:

        完成主機名的修改:編輯/etc/sysconfig/network文件,修改hostname的值為master。

        配置hosts文件,要用于確定結點的IP地址,方便后續(xù)對節(jié)點能快速查到并訪問。

        關閉防火墻:systemctl stop firewalld

        安裝JDK并完成環(huán)境變量的配置:在~/.bash_profile文件中設置JDK的環(huán)境變量 JAVA_HOME和PATH。

        搭建集群環(huán)境:對master節(jié)點進行克隆,克隆出slave1、slave2,重復上面的步驟,修改主機名、修改主機名與ip地址的映射的host文件。

        下載安裝并設置ntp,用來同步網(wǎng)絡中各個計算機的時間。

        配置SSH免密碼登錄,以提高節(jié)點之間的訪問效率。

        (3) Storm周邊環(huán)境的搭建

        從圖2種我們可以看到,Storm的周邊環(huán)境包括Zookeeper、logstash、Kafka。

        Zookeeper的安裝及配置:解壓Zookeeper的安裝包, 在~/.bash_profile文件中配置Zookeeper的環(huán)境變量,編輯zookeeper的配置文件zoo.cfg,添加zookeeper數(shù)據(jù)保存的路徑dataDir的參數(shù)值。

        Logstash的配置及使用:Logstash 是一個開源的數(shù)據(jù)收集引擎,它具有備實時數(shù)據(jù)傳輸能力。它可以統(tǒng)一過濾來自不同源的數(shù)據(jù),并按照開發(fā)者的制定的規(guī)范輸出到目的地。解壓Logstash的安裝包, 在~/.bash_profile文件中配置Logstash的環(huán)境變量后即可使用Logstash完成數(shù)據(jù)的輸入和輸出。

        Kafka的配置及使用:Kafka主要是為實時數(shù)據(jù)提供一個統(tǒng)一、高吞吐、低延遲的處理平臺。Kafka集群包含一個或多個服務器broker,每條發(fā)布到Kafka集群的消息都有一個類別,稱為Topic,每個Topic包含一個或多個Partition,Producer負責發(fā)布消息到Kafka broker,Consumer消息消費者,向Kafka broker讀取消息的客戶端。所以Kafka安裝配置后首先需要建立一個topic。

        (4)搭建Storm架構

        使用zkServer.sh start命令啟動Zookeeper集群服務。

        搭建storm的集群環(huán)境,首先解壓apache-storm,在~/.bash_profile文件中配置storm環(huán)境變量,然后編寫conf/storm-env.sh和conf/storm.yaml文件,最后就可以啟動集群的storm環(huán)境了。

        (5)Storm整合Kafka并存儲展示數(shù)據(jù)

        Storm整合對接Kafka,首先需要在maven的pow.xml中加載一個storm-kafka依賴,然后配置一個SpoutConfig的對象,此對象主要是配置kafka相關的環(huán)境、主題、重試策略、消費的初始偏移量等等參數(shù)。最后將處理好的數(shù)據(jù)即Storm的tuple數(shù)據(jù)寫入到MySql中。最后可以SpringBoot構建Web項目將統(tǒng)計的結果進行展示。

        3 結束語

        Storm 的計算架構處理海量人流位置數(shù)據(jù)的定位,通過與lodstash、Kafka 和mysql 結合對人流信息進行了實時性的分析和處理,通過地圖API實時顯示人流所在地理位置的展示,能夠準確并及時地分析人流信息,為出行者提供最優(yōu)質的交通引導服務,減少擁堵狀況。

        參考文獻:

        [1] 李團結,從新法,李光明. 日志綜合管理平臺基于Storm框架的實現(xiàn)[J].中國新通信,2017(3):41-46[

        [2] 2] 朱群. 基于Storm的交通信息實時處理系統(tǒng)的設計與實現(xiàn)[D]. 西安電子科技大學,2017.6

        [3] 蔡正義. 基于大數(shù)據(jù)的城市居民出行分析建模[D]. 浙江大學,2018.7

        猜你喜歡
        環(huán)境變量人流開源
        基于最大熵模型的云南思茅松潛在分布區(qū)
        從桌面右鍵菜單調用環(huán)境變量選項
        徹底弄懂Windows 10環(huán)境變量
        五毛錢能買多少頭牛
        多次人流可導致宮腔粘連致不孕
        無痛人流危害多,是保是流不要拖
        大家說:開源、人工智能及創(chuàng)新
        開源中國開源世界高峰論壇圓桌會議縱論開源與互聯(lián)網(wǎng)+創(chuàng)新2.0
        基于三階段DEA—Malmquist模型的中國省域城鎮(zhèn)化效率測度及其收斂分析
        開源計算機輔助翻譯工具研究
        蜜桃视频在线免费观看| 亚洲国产香蕉视频欧美| 谁有在线观看av中文| 亚洲国产区中文在线观看| 又大又长粗又爽又黄少妇视频| 中国丰满熟妇xxxx| 亚洲国模一区二区三区视频| 日韩精品午夜视频在线| 中文字幕av中文字无码亚| 又湿又黄裸乳漫画无遮挡网站| 99久久久无码国产精品动漫 | 中文字幕免费观看视频| 国内色精品视频在线网址| 人妖一区二区三区视频| 亚洲精品成人av在线| chinesefreexxxx国产麻豆| 色偷偷av一区二区三区人妖| 午夜国产精品视频在线观看| 国产精品久久777777| 色老头一区二区三区| 亚洲第一女人天堂av| 国产一区二区三区精品免费av| 全免费a级毛片免费看网站| 97在线视频免费| 国产色视频在线观看了| 老子影院午夜伦不卡| 亚洲综合色丁香婷婷六月图片| 久久熟女乱一区二区三区四区| 漂亮丰满人妻被中出中文字幕| 国产精品一区二区在线观看| 免费av在线国模| 亚洲一区二区av免费观看| 精品综合久久久久久888蜜芽| 少妇精品久久久一区二区三区| 视频女同久久久一区二区三区| 伊人久久大香线蕉av色婷婷色| 亚洲国产精品综合久久网各| 亚洲动漫成人一区二区| 深夜日韩在线观看视频| 中国人妻与老外黑人| 欧美中文字幕在线|