五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網 會員登陸 & 注冊

案例 | 通過PySpark實現城市熱點大數據統計

2023-02-22 14:00 作者:ingemar-  | 我要投稿

1 需求分析


在互聯網中,我們經常會見到城市熱點圖這樣的報表數據,例如在百度統計中,會統計今年的熱門旅游城市、熱門報考學校等,會將這樣的信息顯示在熱點圖中。我們根據每個用戶的IP地址,與我們的IP地址段進行比較,確認每個IP落在哪一個IP端內,獲取經緯度,然后繪制熱力圖。

因此,我們需要通過日志信息(運行商或者網站自己生成)和城市ip段信息來判斷用戶的ip段,統計熱點經緯度。


2 技術調研


因為我們的需求是完成一張報表信息,所以對程序的實時性沒有要求,所以可以選擇內存計算spark來實現上述功能。


3 數據準備


ip日志信息

城市ip段信息


4 代碼開發(fā)


整體步驟:

1、加載城市ip段信息,獲取ip起始數字和結束數字,經度,維度

2、加載日志數據,獲取ip信息,然后轉換為數字,和ip段比較

3、比較的時候采用二分法查找,找到對應的經度和維度

4、然后對經度和維度做單詞計數

完整代碼:

整體步驟


5 廣播變量的使用


要統計Ip所對應的經緯度, 每一條數據都會去查詢ip表

每一個task 都需要這一個ip表, 默認情況下, 所有task都會去復制ip表

實際上 每一個Worker上會有多個task, 數據也是只需要進行查詢操作的, 所以這份數據可以共享,沒必要每個task復制一份

可以通過廣播變量, 通知當前worker上所有的task, 來共享這個數據,避免數據的多次復制,可以大大降低內存的開銷

sparkContext.broadcast(要共享的數據)


案例 | 通過PySpark實現城市熱點大數據統計的評論 (共 條)

分享到微博請遵守國家法律
巧家县| 丹凤县| 新兴县| 宜川县| 奈曼旗| 军事| 澳门| 苍溪县| 防城港市| 凌源市| 沾益县| 双牌县| 达拉特旗| 启东市| 泰顺县| 泾阳县| 合肥市| 阿巴嘎旗| 台州市| 定西市| 台东市| 辽宁省| 桑日县| 阿荣旗| 涿鹿县| 吉林市| 峨边| 新源县| 星座| 饶河县| 舞阳县| 扶绥县| 宁化县| 江陵县| 湄潭县| 离岛区| 密云县| 南乐县| 孝义市| 高唐县| 兴义市|