大資料演算法

來源:互聯網
上載者:User

標籤:不能   載入   ip地址   strong   最大的   記錄   資料   size   頻率   

1.海量日誌資料,提取出某日訪問百度次數最多的那個IP。

  首先是這一天,並且是訪問百度的日誌中的IP取出來,逐個寫入到一個大檔案中。注意到ip是32位的,最多有個2^32個ip。同樣可以採用映射的方法,比如模1000,把整個大檔案對應為1000個小檔案,在找出每個小檔案中出現頻率最大的ip(可以採用hash_map進行頻率統計,然後再找出頻率最大的幾個)及相應的頻率。然後再在這1000個最大的ip中,找出那個頻率最大的ip,即為所求。

 

演算法思想:分而治之+Hash

1.IP地址最多有2^32=4G種取值情況,所以不能完全載入到記憶體中處理;

2.按照IP地址的hash(ip)%1024(相同的ip一定會被分到同一個檔案中),把海量IP日誌分別儲存到1024個小檔案中。這樣,每個小檔案最多包含4MB個IP地址;

3.對於每個小檔案,可以構建一個ip為key,出現次數為value的Hash map,同時記錄當前出現次數最多的那個ip地址;

4.可以得到1024個小檔案中的出現次數最多的ip,再依出現次數排序得到總體上出現次數最多的ip;

大資料演算法

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.