資源檔案:
求使用者訪問量的top5
分析:1、將檔案的資料切割 —> map(lambda x:x.split("\t"))
2、拿到使用者,並轉換成(使用者,1)格式 —> map(lambda x:(x[5],1))
2、訪問量求和 —> reducebykey(lambda a,b:a+b)
2、反轉排序再反轉,取前五 —> map(lambda x:(x[1],x[0])).sortbykey(false).map(lambda x:(x[1],x[0])).take(5)
sc.
textfile
("/opt/bigdatas/page_views.dat").
map(lambda x:x.
split
("\t"))
.map
(lambda x:
(x[5],
1)).
reducebykey
(lambda a,b:a+b)
.map
(lambda x:
(x[1
],x[0]
)).sortbykey
(false)
.map
(lambda x:
(x[1
],x[0]
)).take(5
)
import sys
from pyspark import sparkcontext
from pyspark import sparkconf
"""topn 統計
"""if __name__ ==
'__main__':if
len(sys.ar**)!=2
:print
("統計topn "
,file=sys.stderr)
sys.
exit(-
1)conf =
sparkconf()
.setmaster
("local[2]").
("spark03"
) sc =
sparkcontext
(conf=conf)
counts = sc.
textfile
(sys.ar**[1]
).map(lambda x:x.
split
("\t"))\
.map(lambda x:
(x[5],
1)).
reducebykey
(lambda a,b:a+b)\
.map(lambda x:
(x[1
],x[0]
)).sortbykey
(false)
.map
(lambda x:
(x[1
],x[0]
)).take(5
)for
(word, count) in counts:
print
("%s : %i"
%(word, count)
) sc.
stop
()
Redis 如何統計獨立使用者訪問量?
1.hash 雜湊是 redis 的一種基礎資料結構,redis 底層維護的是乙個開雜湊,會把不同的 key 對映到雜湊表上,如果是遇到關鍵字衝突,那麼就會拉出乙個鍊錶出來。當乙個使用者訪問的時候,如果使用者登入過,那麼我們就是用使用者的 id,如果使用者沒有登入過,那麼我們也能夠前端頁面隨機生成乙...
Python 刷訪問量
ip通過 獲取,我使用的的是https 協議的 根據自己需求選擇http或者https 協議的頁面。廢話不多說,直接上 coding utf 8 from urllib import request import requests import random import time import r...
NGINX訪問量統計
1.根據訪問ip統計uv awk access.log sort uniq c wc l 2.統計訪問url統計pv awk access.log wc l 3.查詢訪問最頻繁的url awk access.log sort uniq c sort n k 1 r more 4.查詢訪問最頻繁的ip...