99999久久久久久亚洲,欧美人与禽猛交狂配,高清日韩av在线影院,一个人在线高清免费观看,啦啦啦在线视频免费观看www

熱線電話:13121318867

登錄
首頁精彩閱讀Delaware教授高光榮:大數(shù)據(jù)核心技術(shù)(2)_數(shù)據(jù)分析師
Delaware教授高光榮:大數(shù)據(jù)核心技術(shù)(2)_數(shù)據(jù)分析師
2014-12-14
收藏

Delaware教授高光榮:大數(shù)據(jù)核心技術(shù)(2)_數(shù)據(jù)分析師

有了這個(gè)作為基礎(chǔ)我們可以開始談引擎核心結(jié)構(gòu)的演變。我覺得大數(shù)據(jù)引擎的分析技術(shù)有三項(xiàng)。一項(xiàng)是執(zhí)行模型和結(jié)構(gòu)的技術(shù)。第二個(gè)系統(tǒng)軟件的技術(shù)。第三是引擎的編程模型和優(yōu)化技術(shù),這三項(xiàng)相輔相成缺一不可的,做HPC的這群人都有過痛苦的經(jīng)驗(yàn)和深刻的教訓(xùn),這三方向的發(fā)展,在大數(shù)據(jù)引擎上面這三項(xiàng)也是非常重要的。我今天主要的是Execution Model,執(zhí)行模型定義的一個(gè)API,叫做Execution Model API,然后你發(fā)展使得這個(gè)模型的定義雙方有一個(gè)無縫連接,使得它能夠達(dá)到你所需要的目的。最新的觀點(diǎn)在這個(gè)上面,是這個(gè)Execution Model不僅僅影響這一層API,它同時(shí)也影響其他層之間的關(guān)系。所以這個(gè)事情非常重要,什么是Execution Model?比如說1948年總結(jié)的,那個(gè)Execution Model活這么多年,所有我們的接口,所有我們串型運(yùn)算的接口在軟件方面硬件方面這么長,我們一直試圖整個(gè)的領(lǐng)域把成功經(jīng)驗(yàn)用到并行操作和并行系統(tǒng)的執(zhí)行模型,很可惜到今天仍沒有成功。它的data不僅是程序自身產(chǎn)生的和程序自身確定的靜態(tài)確定的這些數(shù)據(jù),而是需要有動(dòng)態(tài)的數(shù)據(jù),什么叫做動(dòng)態(tài)數(shù)據(jù)?比如所有傳感器來的數(shù)據(jù)。你把問題表現(xiàn)成數(shù)學(xué)模型化然后編程而是要考慮這些大量隨機(jī)的事務(wù),Execution Model接入的數(shù)據(jù),使這兩種數(shù)據(jù)都可以使你系統(tǒng)里面無縫的結(jié)合起來。數(shù)據(jù)流的Execution Model沒有這個(gè)舊年,數(shù)據(jù)里面甭管是可抗性的還是不可抗性,沒有想象有一個(gè)溫度的不可抗性,這個(gè)依賴關(guān)系沒有辦法表述。原來1970,1971年,1972年,1980年,這里面證明了Execution Model一致性完整性所有這些都需要重新的考驗(yàn)。我的意思就是說這個(gè)事情不能忘記,我們做大規(guī)模的處理歷史經(jīng)驗(yàn)非常重要。

    什么叫做創(chuàng)新?創(chuàng)新意味著人類積累起來的知識(shí)不要忘記,在新環(huán)境下怎么讓它適應(yīng)Execution Model這是很重要一部分的創(chuàng)新。我們計(jì)算機(jī)系統(tǒng)領(lǐng)域有很大矛盾,我們常常非常容易的忘記過去,不是故意的,是事太多了,每年都在追,看看明年有什么,我趕快追,沒有這個(gè)時(shí)間。

    下面我用一個(gè)動(dòng)畫說明下Execution Model,在執(zhí)行實(shí)現(xiàn)的時(shí)候誤區(qū)在哪?這個(gè)誤區(qū)就是把OS的作用給誤解了,我的老師就是OS發(fā)起人之一很有名,他去年得最大的獎(jiǎng),他兩個(gè)貢獻(xiàn),數(shù)據(jù)流是第二項(xiàng),第一項(xiàng)是他在操作系統(tǒng)上做的貢獻(xiàn)。這個(gè)動(dòng)畫就是Mechine Runtime Syelem。這個(gè)不是那個(gè)Runtime Syelem,這個(gè)有很多機(jī)器模型實(shí)現(xiàn)它,硬件跟Execution Model之間總會(huì)有一些坑坑洼洼不齊的地方。比如說你要求某一項(xiàng)操作在你Execution Model上,但是它硬件上,它的指令系統(tǒng)上,或者它系統(tǒng)結(jié)構(gòu)沒有直接反饋它,這時(shí)候你要做一層軟件,它的任務(wù)就是補(bǔ)漏洞。這一層軟件跟OS沒有關(guān)系,最大的錯(cuò)誤就是讓OS執(zhí)行這套軟件。如果你注意最近這三年,美國主要的研究,都是強(qiáng)調(diào)Runtime Syelem和OS的關(guān)系,Runtime Syelem就是Execution Model跟OS的關(guān)系。并不是說OS沒有用,但是它的任務(wù)是跟Runtime的分工。

    系統(tǒng)軟件上面并行多核,打破了傳統(tǒng)OS控制打破了OS控制一體現(xiàn)象,支持高性能高擴(kuò)展低能耗,彈性,面臨空間的根本性的挑戰(zhàn)。第三項(xiàng)有了這個(gè)系統(tǒng),有了結(jié)構(gòu),當(dāng)然你有編程模型和優(yōu)化技術(shù),我只想強(qiáng)調(diào)當(dāng)前優(yōu)化技術(shù)集中在靜態(tài)優(yōu)化方法,我們編程模型和優(yōu)化技術(shù)都是假定,所有的都要用芯片來做,優(yōu)化也是在這上面做。包括我自己的Execution Model做的一些工作都是假定硬件上有芯片,但是都是很小的規(guī)模,現(xiàn)在就是最重要的就是有動(dòng)態(tài)調(diào)度,有并發(fā)多元管理在RUNTIME這里。李永輝教授今天上午的講話,他第一條我聽清楚了就是說即使在英特網(wǎng)上細(xì)顆粒度的監(jiān)控,使得整體的計(jì)劃變成動(dòng)態(tài)的虛擬化,這個(gè)實(shí)際上跟那個(gè)是一回事,自調(diào)整都是建立在這個(gè)基礎(chǔ)上,程序自己監(jiān)控自己。

數(shù)據(jù)分析咨詢請掃描二維碼

若不方便掃碼,搜微信號(hào):CDAshujufenxi

數(shù)據(jù)分析師資訊
更多

OK
客服在線
立即咨詢
客服在線
立即咨詢
') } function initGt() { var handler = function (captchaObj) { captchaObj.appendTo('#captcha'); captchaObj.onReady(function () { $("#wait").hide(); }).onSuccess(function(){ $('.getcheckcode').removeClass('dis'); $('.getcheckcode').trigger('click'); }); window.captchaObj = captchaObj; }; $('#captcha').show(); $.ajax({ url: "/login/gtstart?t=" + (new Date()).getTime(), // 加隨機(jī)數(shù)防止緩存 type: "get", dataType: "json", success: function (data) { $('#text').hide(); $('#wait').show(); // 調(diào)用 initGeetest 進(jìn)行初始化 // 參數(shù)1:配置參數(shù) // 參數(shù)2:回調(diào),回調(diào)的第一個(gè)參數(shù)驗(yàn)證碼對(duì)象,之后可以使用它調(diào)用相應(yīng)的接口 initGeetest({ // 以下 4 個(gè)配置參數(shù)為必須,不能缺少 gt: data.gt, challenge: data.challenge, offline: !data.success, // 表示用戶后臺(tái)檢測極驗(yàn)服務(wù)器是否宕機(jī) new_captcha: data.new_captcha, // 用于宕機(jī)時(shí)表示是新驗(yàn)證碼的宕機(jī) product: "float", // 產(chǎn)品形式,包括:float,popup width: "280px", https: true // 更多配置參數(shù)說明請參見:http://docs.geetest.com/install/client/web-front/ }, handler); } }); } function codeCutdown() { if(_wait == 0){ //倒計(jì)時(shí)完成 $(".getcheckcode").removeClass('dis').html("重新獲取"); }else{ $(".getcheckcode").addClass('dis').html("重新獲取("+_wait+"s)"); _wait--; setTimeout(function () { codeCutdown(); },1000); } } function inputValidate(ele,telInput) { var oInput = ele; var inputVal = oInput.val(); var oType = ele.attr('data-type'); var oEtag = $('#etag').val(); var oErr = oInput.closest('.form_box').next('.err_txt'); var empTxt = '請輸入'+oInput.attr('placeholder')+'!'; var errTxt = '請輸入正確的'+oInput.attr('placeholder')+'!'; var pattern; if(inputVal==""){ if(!telInput){ errFun(oErr,empTxt); } return false; }else { switch (oType){ case 'login_mobile': pattern = /^1[3456789]\d{9}$/; if(inputVal.length==11) { $.ajax({ url: '/login/checkmobile', type: "post", dataType: "json", data: { mobile: inputVal, etag: oEtag, page_ur: window.location.href, page_referer: document.referrer }, success: function (data) { } }); } break; case 'login_yzm': pattern = /^\d{6}$/; break; } if(oType=='login_mobile'){ } if(!!validateFun(pattern,inputVal)){ errFun(oErr,'') if(telInput){ $('.getcheckcode').removeClass('dis'); } }else { if(!telInput) { errFun(oErr, errTxt); }else { $('.getcheckcode').addClass('dis'); } return false; } } return true; } function errFun(obj,msg) { obj.html(msg); if(msg==''){ $('.login_submit').removeClass('dis'); }else { $('.login_submit').addClass('dis'); } } function validateFun(pat,val) { return pat.test(val); }