国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院

首頁 > 專題 > 云計算 > 正文

云計算用1.5KB內存為十億對象計數方法

2020-05-27 13:47:31
字體:
來源:轉載
供稿:網友

  為了更好地理解已經明確基數的大數據集的挑戰,我們假設你的日志文件包含16個字符的ID,并且你想統計不同ID的數量.例如:

  4f67bfc603106cb2

  這16個字符需要用128位來表示。6萬5千個ID將需要1MB的空間。我們每天收到30多億條事件記錄,每條記錄都有一個ID。這些ID需要3840億位或45GB的存儲。而這僅僅是ID字段需要的空間。我們采取一種簡單的方法獲取日常事件記錄中以ID為基數的數據。最簡單的辦法就是使用哈希集合且存放到內存中,其中哈希集包含唯一ID的列表(即輸入文件中可能會有多條記錄的id是相同,但在哈希集中只存放一條)。即使我們假設只有1/3的條記錄ID是唯一的(即2/3的記錄ID是重復的),哈希集仍需要119GB的RAM,這其中不包括Java需要在內存中存儲對象的開銷。你需要一臺配備幾百GB內存的機器來計算不同的元素,并且這只是計算一天內日志事件記錄的唯一ID的內存消耗。如果我們想要統計數周或數月的數據,這問題只會變得更加困難。我們身邊當然不會有一臺配備幾百GB內存的空閑機器,所以我們需要一個更好的解決方案。

  解決這一問題的常見辦法是使用位圖(博客:海量數據處理算法—Bit-Map)。位圖可以快速、準確地獲取一個給定輸入的基數。位圖的基本思想是使用哈希函數把數據集映射到一個bit位,每個輸入元素與bit位是一一對應。這樣Hash將沒有產生碰撞沖突,并減少需要計算每個元素映射到1個bit的空間。雖然Bit-map大大節省了存儲空間,但當統計很高的基數或非常大的不同的數據集,它們仍然有問題。例如,如果我們想要使用Bit-map計數十億,你將需要Bit-map位,或需要每個約120 MB的計數器。稀疏的位圖可以被壓縮,以獲得更多的空間效率,但也并不總是有幫助的。

  幸運的是,基數估計是一個熱門的研究領域。我們已經利用這項研究提供了一個開源實現的基數估計、集合元素檢測和top-k算法。

  基數估計算法就是使用準確性換取空間。為了說明這一點,我們用三種不同的計算方法統計所有莎士比亞作品中不同單詞的數量。請注意,我們的輸入數據集增加了額外的數據以致比問題的參考基數更高。這三種技術是:Java HashSet、Linear Probabilistic Counter以及一個Hyper LogLog Counter。結果如下:

  該表顯示,我們統計這些單詞只用了512 bytes,而誤差在3%以內。相比之下,HashMap的計數準確度最高,但需要近10MB的空間,你可以很容易地看到為什么基數估計是有用的。在實際應用中準確性并不是很重要的,這是事實,在大多數網絡規模和網絡計算的情況下,用概率計數器會節省巨大的空間。

  線性概率計數器

  線性概率計數器是高效的使用空間,并且允許實現者指定所需的精度水平。該算法在注重空間效率時是很有用的,但你需要能夠控制結果的誤差。該算法分兩步運行:第一步,首先在內存中分配一個初始化為都為0的Bit-map,然后使用哈希函數對輸入數據中的每個條目進行hash計算,哈希函數運算的結果是將每條記錄(或者是元素)映射到Bit-map的一個Bit位上,該Bit位被置為1;第二步,算法計算空的bit位數量,并使用這個數輸入到下面的公式來進行估算:

  n=-m ln Vn

  在公式中,m是 Bit-map的大小,Vn是空bit位和map的大小的比率。需要重點注意的是原始Bit-map的大小,可以遠小于預期的最大基數。到底小多少取決于你可以承受誤差的大小。因為Bit-map的大小m小于不同元素的總數將會產生碰撞。雖然碰撞可以節省空間,但同時也造成了估算結果出現誤差。所以通過控制原始map的大小,我們可以估算碰撞的次數,以致我們將在最終結果中看到誤差有多大。

  Hyper LogLog

  顧名思義,Hyper LogLog計數器就是估算Nmax為基數的數據集僅需使用loglog(Nmax)+O(1) bits就可以。如線性計數器的Hyper LogLog計數器允許設計人員指定所需的精度值,在Hyper LogLog的情況下,這是通過定義所需的相對標準差和預期要計數的最大基數。大部分計數器通過一個輸入數據流M,并應用一個哈希函數設置h(M)來工作。這將產生一個S = h(M) of {0,1}^∞字符串的可觀測結果。通過分割哈希輸入流成m個子字符串,并對每個子輸入流保持m的值可觀測 ,這就是相當一個新Hyper LogLog(一個子m就是一個新的Hyper LogLog)。利用額外的觀測值的平均值,產生一個計數器,其精度隨著m的增長而提高,這只需要對輸入集合中的每個元素執行幾步操作就可以完成。其結果是,這個計數器可以僅使用1.5 kb的空間計算精度為2%的十億個不同的數據元素。與執行 HashSet所需的120 兆字節進行比較,這種算法的效率很明顯。

  合并分布式計數器

  我們已經證明了使用上面描述的計數器我們可以估算大集合的基數。但是,如果你的原始輸入數據集不適合于單臺機器,將怎么做呢?這正是我們在Clearspring所面臨的問題。我們的數據分散在數百臺服務器上,并且每個服務器只包含整個數據集子集的一部分。這事實上我們能合并一組分布式計數器的內容是至關重要的。這個想法有點令人費解,但如果你花費一些時間去思考這個問題,就會發現其與基本的基數估計值相比并沒有太大的不同。因為這個計數器表示映射中的位作為基數,我們可以采取兩個兼容計數器并將他們bit位合并到單一的map上。這個算法已經處理碰撞,所以我們可以得到一個基數估計所需的精密,即使我們從來沒有把所有的輸入數據到一臺機器。這是非常有用的,節省了我們在網絡中移動數據的大量時間和精力。

  Next Steps

  希望這篇文章能幫助你更好地理解這個概念和概率計數器的應用。如果估算大集合的基數是一個問題,而你又碰巧使用一個基于JVM的語言,那么你應該使用stream-lib項目——它提供了其他幾個流處理工具以及上文所述的算法的實現。

上一篇:云計算的安全問題

下一篇:返回列表

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院
尤物在线精品视频| 天天操中文字幕视频| 永久av在线| 久久99精品久久久久久野外| 国产精品视频一区麻豆| 亚洲精品一线| 99re热在线观看| av网站在线播放| 欧美婷婷久久五月精品三区| 国产www网站| 九九热在线观看视频| 日本成人免费网站| 好吊日视频在线观看| 日本18视频网站| 亚洲精品成人a| 国产麻豆精品一区二区三区v视界| 人成在线免费视频| 天天操夜夜操天天射| 成人精品福利| 最近中文av字幕在线中文| 国产精品入口麻豆免费观看| 91青青在线视频| 在线观看的av| 国产视频福利在线| 国产中文第一页| 中文字幕av高清| 国产美女av| 亚色视频在线观看| 中文字幕久热在线精品| www.av在线| 在线色视频观看| 国产私人影院| 毛片视频免费观看| 香蕉视频网站在线观看| 国产福利资源| 国产三级在线免费观看| 超碰97在线免费观看| 伊人av免费在线观看| 国产三级在线| 国产素人视频在线观看| 国产中文字幕av| av文字幕在线观看| 国产夫妻视频| 精品视频二区| 国产黄色片在线观看| 国产一级激情| 国产美女视频一区二区二三区| 日本精品一区二区三区在线播放| 精品一区二区在线欧美| 国产区在线看| 国产成人精品自线拍| 国产日本韩国在线播放| 国产偷窥老熟盗摄视频| 国产精品久久久高清免费 | 最新国产在线| 国产精品自产拍在线网站| 黄色av网站在线| 日本中文字幕在线2020| 国产区视频在线观看| 91精品专区| gogo在线观看| 国产免费黄网站| 中文字幕麻豆| 在线视频福利| 国产美女免费观看| 国产黄色片大全| a级片国产精品自在拍在线播放| 欧美性猛交xxxx免费看蜜桃| 国产在线二区| 1区2区3区在线| 一本大道香蕉8中文在线视频| 天堂在线国产| 国产三级香港三韩国三级| 亚洲精品一区中文字幕电影| 国产在线更新| 在线观看中文字幕| 国产精品第八页| 日本久久网站| 精品乱码一区二区三四区视频| 日本在线天堂| 国产福利在线免费观看| 欧美精品小视频| 92国产在线视频| 国产视频一二三区| eeuss影院在线观看第一页| 国产视频三级在线观看播放| 九九热在线观看视频| 亚洲第一成年免费网站| 国产网友自拍视频导航网站在线观看| www.91av| www.夜夜操| 色欧美在线观看| 四虎国产精品永久| 9色在线视频网站| 国产精品777一区二区| 天天操天天射天天色| 国产在线www| 就爱干草视频| www中文字幕在线观看| 国产日韩网站| 国产视频中文字幕| 国产黄色av免费看| 国产黄色网页| 亚洲尤物在线视频| www.操.com| 国产在线你懂得| 国产一二在线观看| 国产精品入口麻豆完整版| 国产精品666| 国产福利视频在线| 在线观看wwww| 麻豆网站在线免费观看| 国产在线你懂得| 中文字幕成人乱码在线电影| 国产女王在线**视频| 国产欧美黑人| 在线视频观看亚洲| 欧洲亚洲精品视频| 狠狠色丁香婷婷| 国产娇喘精品一区二区三区图片| 国产三级在线免费观看| 一级黄色av| 国产老肥熟xxxx在线观看| 最近中文字幕大全中文字幕免费| 国产三级视频在线播放线观看| 精品国产白色丝袜高跟鞋| av免费在线观看网站| 久久99亚洲网美利坚合众国| 国产三级视频在线看| 99在线免费观看| 超碰在线国产| 91亚洲精选| 好男人免费精品视频| 精品网站www| 国产免费麻豆视频| 亚洲字幕成人中文在线观看| 国产美女av在线| www.操操操| 中文字幕av高清| 国产一级黄色| 国产69精品久久久久孕妇国产69久久| 中文字幕一区免费| 美女永久在线网站| 亚洲一区免费在线| 国产精品日日爱| 成在在线免费视频| h网站久久久| 69久久久久| 国产精品69xx| 国产天堂视频| 中文字幕免费中文| 狠狠操狠狠色| 日本aⅴ写真网站免费| 亚洲精品影院在线| 在线观看精品视频一区二区三区 | 日本三级视频网站| 国产精品久久久久白浆| 二人午夜免费观看在线视频| 亚洲人av在线| 亚洲www色| 四虎成人免费| 欧美色第一页| 黄网站app在线观看下载视频大全官网| 影音先锋在线中文字幕| 97视频在线观看网站| 在线观看免费观看在线91| 在线āv视频| 青青草原国产在线| 狠狠干天天爱| 国产天堂视频| 精品国产丝袜高跟鞋| 992tv在线观看在线播放| 国产福利在线视频| 中文资源在线网| 热99re久久精品精品免费| 浪潮av一区| 国产精品久久久久白浆| 国产超级va在线视频| japanese色国产在线看视频| 欧美精品另类| 国产精品入口免费麻豆| 四虎成人精品在永久免费| 成人免费一区二区三区牛牛 | 在线中文资源天堂| 欧美性猛交xxxx免费看久久| 国内自拍视频在线观看| 国产黄色av免费看| а√最新版在线天堂| 国产视频xxxx| 任你操在线观看| 国产视频在线播放| 久久五月精品| 伊人精品影院| 国产视频1区| 国产在线激情视频| av手机免费观看| 国产精品入口麻豆免费看| 欧美日韩在线资源| 国产叼嘿网站免费观看不用充会员| 精品福利影院|