多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國(guó)內(nèi)最全I(xiàn)T社區(qū)平臺(tái) 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當(dāng)前位置:首頁 > 互聯(lián)網(wǎng) > 用hadoop計(jì)算PI值

用hadoop計(jì)算PI值

來源:程序員人生   發(fā)布時(shí)間:2014-08-31 17:02:33 閱讀次數(shù):3212次
      摘要:最近研究hadoop的一個(gè)例子,計(jì)算PI值,本以為hadoop不適合這種密集型的計(jì)算,卻發(fā)現(xiàn)了在hadoop自帶的examples里,竟然有PiEstimator這個(gè)例子,于是深入研究一下,首先感謝博主http://thinkinginhadoop.iteye.com/blog/710847。

 

一、計(jì)算PI值的方式與原理

      百度一下,計(jì)算PI的方法還真不少。但在hadoop examples代碼中的注釋寫的是:是采用 Quasi-Monte Carlo 算法來估算PI的值。 

      維基百科中對(duì)Quasi-Monte Carlo的描述比較理論,好多難懂的公式。 

      好在google了一把,找到了斯坦福大學(xué)網(wǎng)站上的一篇文章:《通過扔飛鏢也能得出PI的值?》,文章很短,圖文并茂,而且很好理解。 

      我這里將那篇文章的重要部分截了個(gè)圖: 



      對(duì)上面的圖再稍微解釋一下: 
      1、Figure2是Figure1的右上角的部分。 
      2、向Figure2中投擲飛鏢若干次(一個(gè)很大的數(shù)目),并且每次都仍在不同的點(diǎn)上。 
      3、如果投擲的次數(shù)非常多,F(xiàn)igure2將被刺得“千瘡百孔”。 
      4、這時(shí),“投擲在圓里的次數(shù)”除以“總投擲次數(shù)”,再乘以4,就是PI的值!(具體的推導(dǎo)過程參見原文) 


      在這個(gè)算法中,很重要的一點(diǎn)是:如何做到“隨機(jī)地向Figure2投擲”,就是說如何做到Figure2上的每個(gè)點(diǎn)被投中的概率相等。 

      hadoop examples代碼中,使用了Halton sequence保證這一點(diǎn),關(guān)于Halton sequence,大家可以參考維基百科

      我這里再總結(jié)一下Halton sequence的作用: 在1乘1的正方形中,產(chǎn)生不重復(fù),并且均勻的點(diǎn)。每個(gè)點(diǎn)的橫坐標(biāo)和縱坐標(biāo)的值都在0和1之間。 

正是這樣,保證了能夠做到“隨機(jī)地向Figure2投擲”。

      有人總結(jié)了一下,這個(gè)實(shí)際上叫做蒙特卡洛算法,我們?nèi)∫粋€(gè)單位的正方形(1×1) 里面做一個(gè)內(nèi)切圓(單位圓),則 單位正方形面積 : 內(nèi)切單位圓面積 = 單位正方形內(nèi)的飛鏢數(shù) : 內(nèi)切單位圓內(nèi)的飛鏢數(shù) ,通過計(jì)算飛鏢個(gè)數(shù)就可以把單位圓面積算出來, 通過面積,在把圓周率計(jì)算出來。 
注意 ,精度和你投擲的飛鏢次數(shù)成正比。

 

二,運(yùn)行hadoop估算PI的命令

<span style="white-space:pre"> </span>hadoop jar $HADOOP_HOME/hadoop-*-examples.jar pi 100 100000000

     后面2個(gè)數(shù)字參數(shù)的含義: 
     第1個(gè)100指的是要運(yùn)行100次map任務(wù) 
     第2個(gè)數(shù)字指的是每個(gè)map任務(wù),要投擲多少次 

     2個(gè)參數(shù)的乘積就是總的投擲次數(shù)。 

     我運(yùn)行的結(jié)果: 
Screenshot from 2014-08-30 10_04_15

三,總結(jié)

      hadoop的examples中的計(jì)算PI的方法屬于是采用大量采樣的統(tǒng)計(jì)學(xué)方法,還是屬于數(shù)據(jù)密集型的工作。 

      轉(zhuǎn)載請(qǐng)注明出處: http://www.ming-yue.cn/hadoop-pi/

生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對(duì)您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈(zèng)
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關(guān)閉
程序員人生
主站蜘蛛池模板: 国内精品不卡一区二区三区 | 福利国产片 | 忘忧草wyc.apk| 久久精品国产亚洲片 | 日韩男人的天堂 | 爱爱小视频在线看免费 | 最近中文免费字幕在线播放 | 伊人久久婷婷 | 国产一级做a爱免费视频 | 秋霞免费一级毛片 | 另类专区国产在线视频 | 日韩精品一区二区三区视频网 | 日本中文字幕在线观看视频 | 欧美韩日国产 | 在线精品日韩一区二区三区 | 爱爱综合 | 亚洲综合久久综合激情久久 | 亚洲第二页 | 国产精品冒白浆免费视频 | 亚洲 春色 另类小说 | h网站在线看 | 性色免费视频 | 亚洲欧美自拍视频 | 一本久草 | 亚州中文 | 一级毛片在线免费视频 | 精品亚洲欧美中文字幕在线看 | 国产福利视频一区二区三区四区 | 日本在线一本 | 午夜在线影院 | 国产亚洲欧美另类专区 | 羞羞视频免费入口 | 羞羞免费网站 | 叼嘿视频在线观看免费 | 国产一区欧美二区 | 国产免费一区2区3区4区 | 欧美猛交 | 久久成人性色生活片 | 精品国产一级毛片 | 另类小说区 | 欧美一级毛片激情 |