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

熱線電話:13121318867

登錄
首頁精彩閱讀大數(shù)據(jù)分析技術(shù)的發(fā)展_數(shù)據(jù)分析師
大數(shù)據(jù)分析技術(shù)的發(fā)展_數(shù)據(jù)分析師
2015-06-11
收藏

大數(shù)據(jù)分析技術(shù)的發(fā)展_數(shù)據(jù)分析師


所謂的“大數(shù)據(jù)”并不只是數(shù)量上的“大”。簡單套用一下大數(shù)據(jù)的4V(Volume,Velocity,Variety,Value)定義: 1、 Volume:區(qū)域醫(yī)療數(shù)據(jù)通常是來自于擁有上百萬人口和上百家醫(yī)療機構(gòu)的區(qū)域,并且數(shù)據(jù)量持續(xù)增長。按照醫(yī)療行業(yè)的相關(guān)規(guī)定,一個患者的數(shù)據(jù)通常需要保留50年以上。我們可以想象這是多么巨大的數(shù)據(jù)量。

 2、 Velocity:醫(yī)療信息服務(wù)中可能包含大量在線或?qū)崟r數(shù)據(jù)分析處理的需求。例如:臨床決策支持中的診斷和用藥建議、流行病分析報表生成、健康指標(biāo)預(yù)警等。

 3、 Variety:醫(yī)療數(shù)據(jù)通常會包含各種結(jié)構(gòu)化數(shù)據(jù)表、非(半)結(jié)構(gòu)化文本文檔(XML和敘述文本)、醫(yī)療影像等多種多樣的數(shù)據(jù)存儲形式。 4、 Value:醫(yī)療數(shù)據(jù)的價值不必多說,它不僅與我們個人生活息息相關(guān),更可用于國家乃至全球的疾病防控、新藥研發(fā)和頑疾攻克。 近年來,在衛(wèi)生部的領(lǐng)導(dǎo)下和國家財政支出的支持下,絕大多數(shù)的三甲醫(yī)院和部分二級醫(yī)院已經(jīng)先后建立了先進的數(shù)字化信息系統(tǒng)和電子健康檔案系統(tǒng)。但至今為止,大部分系統(tǒng)和數(shù)據(jù)仍然只限于內(nèi)部使用。

據(jù)了解,2010年底,衛(wèi)生部完成了“十二五”衛(wèi)生信息化建設(shè)工程規(guī)劃編制工作,初步確定了我國衛(wèi)生信息化建設(shè)路線圖,簡稱“3521工程”,即建設(shè)國家級、省級和地市級三級衛(wèi)生信息平臺,加強公共衛(wèi)生、醫(yī)療服務(wù)、新農(nóng)合、基本藥物制度、綜合管理5項業(yè)務(wù)應(yīng)用,建設(shè)健康檔案和電子病歷2個基礎(chǔ)數(shù)據(jù)庫和1個專用網(wǎng)絡(luò)建設(shè)。由此可看出,今后的幾年,隨著云計算技術(shù)的成熟和實用化,大規(guī)模區(qū)域醫(yī)療信息系統(tǒng)和大型數(shù)據(jù)中心的建立將逐步展開。

然而,隨著海量醫(yī)療數(shù)據(jù)被保存下來,一個棘手的問題出現(xiàn)了:我們?nèi)绾瓮ㄟ^高效的分析這些數(shù)據(jù)來提供有價值的服務(wù)? 大數(shù)據(jù)分析技術(shù)最初起源于互聯(lián)網(wǎng)行業(yè)。網(wǎng)頁存檔、用戶點擊、商品信息、用戶關(guān)系等數(shù)據(jù)形成了持續(xù)增長的海量數(shù)據(jù)集。這些大數(shù)據(jù)中蘊藏著大量可以用于增強用戶體驗、提高服務(wù)質(zhì)量和開發(fā)新型應(yīng)用的知識,而如何高效和準(zhǔn)確的發(fā)現(xiàn)這些知識就基本決定了各大互聯(lián)網(wǎng)公司在激烈競爭環(huán)境中的位置。首先,以Google為首的技術(shù)型互聯(lián)網(wǎng)公司提出了MapReduce的技術(shù)框架,利用廉價的PC服務(wù)器集群,大規(guī)模并發(fā)處理批量事務(wù)。 利用文件系統(tǒng)存放非結(jié)構(gòu)化數(shù)據(jù),加上完善的備份和容災(zāi)策略,這套經(jīng)濟實惠的大數(shù)據(jù)解決方案與之前昂貴的企業(yè)小型機集群+商業(yè)數(shù)據(jù)庫方案相比,不僅沒有丟失性能,而且還贏在了可擴展性上。

之前,我們在設(shè)計一個數(shù)據(jù)中心解決方案的前期,就要考慮到方案實施后的可擴展性。通常的方法是預(yù)估今后一段時期內(nèi)的業(yè)務(wù)量和數(shù)據(jù)量,加入多余的計算單元(CPU)和存儲,以備不時只需。 這樣的方式直接導(dǎo)致了前期一次性投資的巨大,并且即使這樣也依然無法保證計算需求和存儲超出設(shè)計量時的系統(tǒng)性能。而一旦需要擴容,問題就會接踵而來。首先是商業(yè)并行數(shù)據(jù)庫通常需要各節(jié)點物理同構(gòu),也就是具有近似的計算和存儲能力。而隨著硬件的更新,我們通常加入的新硬件都會強于已有的硬件。

這樣,舊硬件就成為了系統(tǒng)的瓶頸。為了保證系統(tǒng)性能,我們不得不把舊硬件逐步替換掉,經(jīng)濟成本損失巨大。其次,即使是當(dāng)前最強的商業(yè)并行數(shù)據(jù)庫,其所能管理的數(shù)據(jù)節(jié)點也只是在幾十或上百這個數(shù)量級,這主要是由于架構(gòu)上的設(shè)計問題,所以其可擴展性必然有限。 而MapReduce+GFS框架,不受上述問題的困擾。需要擴容了,只需增加個機柜,加入適當(dāng)?shù)挠嬎銌卧痛鎯?,集群系統(tǒng)會自動分配和調(diào)度這些資源,絲毫不影響現(xiàn)有系統(tǒng)的運行。如今,我們用得更多的是Google MapReduce的開源實現(xiàn),即Hadoop。

除了計算模型的發(fā)展,與此同時,人們也在關(guān)注著數(shù)據(jù)存儲模型。傳統(tǒng)的關(guān)系型數(shù)據(jù)庫由于其規(guī)范的設(shè)計、友好的查詢語言、高效的數(shù)據(jù)處理在線事務(wù)的能力,長時間地占據(jù)了市場的主導(dǎo)地位。 然而,其嚴格的設(shè)計定式、為保證強一致性而放棄性能、可擴展性差等問題在大數(shù)據(jù)分析中被逐漸暴露。隨之而來,NoSQL數(shù)據(jù)存儲模型開始風(fēng)行。NoSQL,也有人理解為Not Only SQL,并不是一種特定的數(shù)據(jù)存儲模型,它是一類非關(guān)系型數(shù)據(jù)庫的統(tǒng)稱。其特點是:沒有固定的數(shù)據(jù)表模式、可以分布式和水平擴展。NoSQL并不是單純的反對關(guān)系型數(shù)據(jù)庫,而是針對其缺點的一種補充和擴展。典型的NoSQL數(shù)據(jù)存儲模型有文檔存儲、鍵-值存儲、圖存儲、對象數(shù)據(jù)庫、列存儲等。而比較流行的,不得不提到Google提出的Bigtable。 Bigtable是一種用于管理海量結(jié)構(gòu)化數(shù)據(jù)的分布式存儲系統(tǒng),其數(shù)據(jù)通常可以跨成千個節(jié)點進行分布式存儲,總數(shù)據(jù)量可達PB級(10的15次方字節(jié),106GB)。HBase是其開源實現(xiàn)。

如今,在開源社區(qū),圍繞Google MapReduce框架,成長出了一批優(yōu)秀的開源項目。這些項目在技術(shù)和實現(xiàn)上相互支持和依托,逐漸形成了一個特有的生態(tài)系統(tǒng)。這里借用Cloudera所描繪的架構(gòu)圖來展現(xiàn)Hadoop生態(tài)系統(tǒng)。這個系統(tǒng)為我們實現(xiàn)優(yōu)質(zhì)廉價的大數(shù)據(jù)分析提供了堅實的技術(shù)基礎(chǔ)。 綜上所述,面對大數(shù)據(jù)分析的挑戰(zhàn),不管是計算模型還是存儲模型技術(shù)都有了超前的進步。然而,僅憑借當(dāng)前的技術(shù),我們準(zhǔn)備好面對健康云上的大數(shù)據(jù)分析的挑戰(zhàn)了嗎?下一節(jié),我們將重點分析醫(yī)療數(shù)據(jù)的特有性質(zhì)為大數(shù)據(jù)分析帶來的挑戰(zhàn)。

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

若不方便掃碼,搜微信號: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(), // 加隨機數(shù)防止緩存 type: "get", dataType: "json", success: function (data) { $('#text').hide(); $('#wait').show(); // 調(diào)用 initGeetest 進行初始化 // 參數(shù)1:配置參數(shù) // 參數(shù)2:回調(diào),回調(diào)的第一個參數(shù)驗證碼對象,之后可以使用它調(diào)用相應(yīng)的接口 initGeetest({ // 以下 4 個配置參數(shù)為必須,不能缺少 gt: data.gt, challenge: data.challenge, offline: !data.success, // 表示用戶后臺檢測極驗服務(wù)器是否宕機 new_captcha: data.new_captcha, // 用于宕機時表示是新驗證碼的宕機 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){ //倒計時完成 $(".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); }