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

熱線電話:13121318867

登錄
首頁精彩閱讀大數(shù)據(jù)的多樣性和混雜性_數(shù)據(jù)分析師
大數(shù)據(jù)的多樣性和混雜性_數(shù)據(jù)分析師
2014-12-13
收藏


大數(shù)據(jù)的多樣性和混雜性_數(shù)據(jù)分析師


大數(shù)據(jù)是一種新的數(shù)據(jù)形態(tài)和實(shí)踐,它與當(dāng)前主流的數(shù)據(jù)應(yīng)用實(shí)踐并存,而非取代;大數(shù)據(jù)也是一種戰(zhàn)略、世界觀和習(xí)慣;“數(shù)據(jù)即價值”的價值觀早已存在,Value不是大數(shù)據(jù)專享的屬性,小數(shù)據(jù)照樣有大價值.

1. 大數(shù)據(jù)是一種新的數(shù)據(jù)形態(tài)和實(shí)踐,它與當(dāng)前主流的數(shù)據(jù)應(yīng)用實(shí)踐并存,而非取代。而且,它在相當(dāng)長的時間內(nèi)仍然是個新鮮事物,即使年復(fù)合增長率高達(dá)32%,到2016年全球大數(shù)據(jù)技術(shù)和服務(wù)市場總額也就是240億美金左右(IDC在2012年底的預(yù)測)。不切實(shí)際、一窩蜂地上大數(shù)據(jù)項(xiàng)目不應(yīng)鼓勵。明明不算大數(shù)據(jù),要裝成有,偏要削足適履上馬Hadoop和NoSQL,更不足取。
2. 大數(shù)據(jù)也是一種戰(zhàn)略、世界觀和習(xí)慣。即使今天沒有大體量的數(shù)據(jù),還是可以盡可能自覺、客觀、全面地測量世界,為未來的大數(shù)據(jù)實(shí)踐做準(zhǔn)備。對于一個企業(yè)或系統(tǒng)來說,挑戰(zhàn)在數(shù)據(jù)采集,而非存儲。微信在設(shè)計之初就把數(shù)據(jù)監(jiān)控精細(xì)化,并納入基礎(chǔ)框架,這是意識和實(shí)力的體現(xiàn)。有多少公司像彭博社那樣“如饑似渴”地采集數(shù)據(jù)?它能夠雇傭一個衛(wèi)星每周對位于俄克拉何馬的美國最大原油儲備庫拍照,根據(jù)油罐浮動頂?shù)年幱伴L度來判斷原油儲備量的變化。成功者有成功的必然性。
3. “數(shù)據(jù)即價值”的價值觀早已存在,Value不是大數(shù)據(jù)專享的屬性,小數(shù)據(jù)照樣有大價值。大數(shù)據(jù)的功勞在于喚醒大家的意識和覺悟。同樣,從數(shù)據(jù)中發(fā)現(xiàn)價值的實(shí)踐也由來已久,橫跨數(shù)據(jù)庫、統(tǒng)計學(xué)和機(jī)器學(xué)習(xí)交叉學(xué)科的數(shù)據(jù)分析是大數(shù)據(jù)分析的基礎(chǔ),但傳統(tǒng)的數(shù)據(jù)分析實(shí)踐是無法適應(yīng)大數(shù)據(jù)的發(fā)展的,這一點(diǎn)我會在分析這一部分中細(xì)談。
總之,不能神化大數(shù)據(jù)是萬靈藥,也不能矮化大數(shù)據(jù)就是包裝舊概念。對一部分人來說,大數(shù)據(jù)已經(jīng)是個客觀存在和競爭優(yōu)勢;對絕大多數(shù)人來說,大數(shù)據(jù)可以是一種“從現(xiàn)在做起”的世界觀,和未雨綢繆、決戰(zhàn)未來的戰(zhàn)略。本系列確有為大數(shù)據(jù)推波助瀾之意,但不會隨波逐流兜售概念;相反,我會剝開每一個概念,追溯它的源頭和發(fā)展過程,并給出個人的見解。
正文:
上回說到對大數(shù)據(jù)大體量的界定,只有少數(shù)產(chǎn)業(yè)和企業(yè)能夠?qū)Υ篌w量感同身受,對更多的憧憬者來說,大數(shù)據(jù)不是進(jìn)行時,而是未來時。這讓無數(shù)空有一身Hadoop技藝的架構(gòu)師和程序猿/媛扼腕太息。
且慢,聽聽微軟研究院這位老哥的吐槽:根據(jù)微軟和Yahoo的統(tǒng)計,所有Hadoop任務(wù)放一起一平均,輸入數(shù)據(jù)集的大小也就是十幾個GB;即使是Facebook,90%的任務(wù)數(shù)據(jù)集小于100GB。這這這?這又讓言必稱ZB的布道者們情何以堪?
說來說去還是要回到大數(shù)據(jù)的定義上來。上回說IDC為業(yè)界巨擘搖旗吶喊ZB時代,旋即又用100TB作為大數(shù)據(jù)的門檻。其實(shí),100TB不是故事的全部。這次好好擺一擺IDC對大數(shù)據(jù)的界定。IDC高手論道,一張圖搞定:

它的三步界定法是這樣講的:
1. 三個數(shù)據(jù)源場景:數(shù)據(jù)要么不小于100TB,要么來自于超高速的數(shù)據(jù)流,或者年增速大于60%。這三者是OR的關(guān)系,滿足其一即可。這下好,很多中小企業(yè)可以進(jìn)入大數(shù)據(jù)的候選隊伍了。王侯將相,寧有種乎?數(shù)據(jù)少但速度可以快,基數(shù)小但增速可以大,只要秉持自覺、客觀、全面測量世界的大數(shù)據(jù)觀。
2. 無論你有哪種或哪幾種數(shù)據(jù),必須部署在可動態(tài)適應(yīng)的基礎(chǔ)設(shè)施(dynamically adaptable infrastructure)上。IDC專門強(qiáng)調(diào),此基礎(chǔ)設(shè)施并非一定要水平擴(kuò)展架構(gòu)(scale-out infrastructure),傳統(tǒng)的scale-up架構(gòu)也行。更重要的是,這個新名詞把基于云的基礎(chǔ)設(shè)施也包括了進(jìn)去。要做大數(shù)據(jù)并非一定要自己部署Hadoop或NoSQL,把基礎(chǔ)設(shè)施的事情留給云,自己專心從數(shù)據(jù)里提煉價值,不亦樂乎?有了Amazon AWS,四個人就可以做一個大數(shù)據(jù)初創(chuàng)企業(yè)Prismatic。
3. 第三步兩個數(shù)據(jù)部署場景:部署中必須有不少于兩個的數(shù)據(jù)格式或數(shù)據(jù)源,或者高速流數(shù)據(jù)源(如點(diǎn)擊流或機(jī)器產(chǎn)生的數(shù)據(jù)流)。
好吧,不用執(zhí)念于Volume了,我們接著這第三步講Variety。
自道哥(Doug Laney)開立“三V經(jīng)”伊始,Variety在大數(shù)據(jù)五個大V(前幾天某人又提了第六個V,Viability,以后再表)排名老三,為什么Variety拿到系列第二篇講呢?
在下不是百曉生,自然不敢亂排座次。雖然在下確實(shí)自賦過順口溜一句:“大(Volume)、雜(Variety)、快(Velocity)、真(Veracity)、值(Value)”(大雜膾真值),但這萬萬不是Variety排第二的理由。Variety能做老二的最大底氣來自于占大數(shù)據(jù)體量八成以上的非結(jié)構(gòu)化數(shù)據(jù)。天知道這“八成”是怎么算出來的,但既然美林從98年就開始在企業(yè)數(shù)據(jù)市場這么說,十幾年過去應(yīng)該有增無減。
Variety從本義來說是指數(shù)據(jù)種類的多樣性,我把數(shù)據(jù)質(zhì)量的多樣性即混雜性(舍恩伯格《大數(shù)據(jù)時代》中對messy的翻譯正好是“混雜”)也放入這一篇講。按理說混雜性也可以放在Veracity篇,但我感覺從方法論上多樣性和混雜性有更多的相通之處。
多樣性
如果一定要把數(shù)據(jù)分類,最簡單的方法是分兩類,結(jié)構(gòu)化與非結(jié)構(gòu)化。再深究下去,非結(jié)構(gòu)化事實(shí)上是未必成立的概念。信息里的“結(jié)構(gòu)”是永遠(yuǎn)存在的,只不過結(jié)構(gòu)尚未被發(fā)現(xiàn),或結(jié)構(gòu)變化無定(半結(jié)構(gòu)化或多結(jié)構(gòu)化),或者結(jié)構(gòu)存在但機(jī)器卻處理不了。就像最典型的非結(jié)構(gòu)化數(shù)據(jù)—文本,它有語言學(xué)意義上的結(jié)構(gòu)(語法和語義),又有敘事意義上的結(jié)構(gòu)(三段式、先破后立等),還具有結(jié)構(gòu)化的元數(shù)據(jù)(作者、標(biāo)題、發(fā)布時間等),但文本一直是非結(jié)構(gòu)化數(shù)據(jù)的典型。有老學(xué)究一本正經(jīng)說:非結(jié)構(gòu)化?此言差矣;應(yīng)該說非模型化(unmodeled),結(jié)構(gòu)本在,只是未建模而已。早期的非結(jié)構(gòu)化數(shù)據(jù),在企業(yè)數(shù)據(jù)的語境里主要是文本,如電子郵件,文檔,健康/醫(yī)療記錄。隨著互聯(lián)網(wǎng)和物聯(lián)網(wǎng)的發(fā)展,又?jǐn)U展到網(wǎng)頁、社交媒體、感知數(shù)據(jù),涵蓋音頻、圖片、視頻、模擬信號等等,真正詮釋了數(shù)據(jù)的多樣性。
從另一個維度上看,數(shù)據(jù)的多樣性又表現(xiàn)在數(shù)據(jù)來源和用途上。拿衛(wèi)生保健數(shù)據(jù)來講,大致有藥理學(xué)科研數(shù)據(jù),臨床數(shù)據(jù),個人行為和情感數(shù)據(jù),就診/索賠記錄和開銷數(shù)據(jù)四類。麥肯錫在《大數(shù)據(jù):創(chuàng)新、競爭和生產(chǎn)力的下一個前沿》里關(guān)于美國衛(wèi)生保健行業(yè)如何利用多樣化數(shù)據(jù)給出了精彩的建議,有興趣的可以去讀一讀。
又如交通領(lǐng)域。北京市交通智能化分析平臺數(shù)據(jù)源來自路網(wǎng)攝像頭/傳感器、地面公交、軌道交通、出租車以及省際客運(yùn)、旅游、化危運(yùn)輸、停車、租車等運(yùn)輸行業(yè),還有問卷調(diào)查和GIS數(shù)據(jù)。從數(shù)據(jù)體量和速度上也達(dá)到了大數(shù)據(jù)的規(guī)模:4萬輛浮動車每天產(chǎn)生2000萬條記錄;交通卡刷卡記錄每天1900萬條;手機(jī)定位數(shù)據(jù)每天1800萬條;出租車運(yùn)營數(shù)據(jù)每天100萬條;高速ETC數(shù)據(jù)每天50萬條;針對8萬戶家庭的定期調(diào)查,等等。發(fā)掘這些形態(tài)各異、快慢不一的數(shù)據(jù)流之間的相關(guān)性,是大數(shù)據(jù)做前人之未做、前人所不能的機(jī)會。更甚者,交通狀況與其它領(lǐng)域的數(shù)據(jù)都存在較強(qiáng)的關(guān)聯(lián)性:有研究發(fā)現(xiàn),可以從供水系統(tǒng)數(shù)據(jù)中發(fā)現(xiàn)晨洗的高峰時間,加上一個偏移量(通常是40-45分鐘)就是交通早高峰時間;同樣可以從電網(wǎng)數(shù)據(jù)中統(tǒng)計出傍晚辦公樓集中關(guān)燈的時間,加上偏移量來估計出晚上的堵車時點(diǎn)。國外的研究還發(fā)現(xiàn)了交通事故率與睡眠質(zhì)量的關(guān)聯(lián),不一而足。
有人說咖啡館的好處是“l(fā)et ideas have sex”,大數(shù)據(jù)產(chǎn)生價值的關(guān)鍵是“l(fā)et data have sex”。尤其是對不能坐擁大數(shù)據(jù)的企業(yè)來說,跳出自己的圈子,尋找新的相關(guān)數(shù)據(jù)源(如社交媒體,上下游企業(yè)或廣告、應(yīng)用聯(lián)盟,數(shù)據(jù)市場)是出奇制勝的策略。即使牛如Apple,它也要雜湊Google、Wolfram Alpha、Wikipedia、Yelp等不同的外部數(shù)據(jù)源來讓Siri足夠聰明。
混雜性
我把混雜性作為數(shù)據(jù)質(zhì)量的一個考量(數(shù)據(jù)質(zhì)量的問題,在漫談第五個V即Veracity的時候,還要涉及),即數(shù)據(jù)里混有雜質(zhì)的特性。數(shù)據(jù)的混雜性是不可避免的,既可能有數(shù)據(jù)產(chǎn)生主體的問題,又可能有采集手段、存儲方式的問題。
有人說這不是個新問題,我們很早以前就搞數(shù)據(jù)清洗。話是沒錯,只是在大數(shù)據(jù)時代,我們完全可以用一種更輕松的心態(tài)看待混雜性,并接受它帶來的精確性的問題。
試想,如果雜質(zhì)是偶然的,它一定會被更多的正確的數(shù)據(jù)淹沒掉;如果噪音存在規(guī)律,足夠多的數(shù)據(jù)可以發(fā)現(xiàn)這個規(guī)律,從而把噪音過濾;如果誤差是內(nèi)在的必然性,更多樣化的數(shù)據(jù)采集和信息融合也必然能糾正誤差。
拿幾個我在Intel做過的項(xiàng)目作為例子:
1. 定位:GPS有幾十米的誤差,但加上了地圖數(shù)據(jù)可以保證你導(dǎo)航無虞;GPS信號在城市環(huán)境里時斷時續(xù),基于慣性導(dǎo)航的系統(tǒng)可以維持導(dǎo)航系統(tǒng)的工作;基于運(yùn)動傳感器的室內(nèi)慣性導(dǎo)航有累積誤差,而且辦公室環(huán)境里磁傳感器受干擾嚴(yán)重,辦法是跟基于Wifi的室內(nèi)定位和地圖匹配結(jié)合起來;通過SLAM(Simultaneous Localization and Mapping)構(gòu)建室內(nèi)地圖同樣受慣性導(dǎo)航傳感器精度的限制,但如果有Wifi的幫忙,或者有大量路徑軌跡,完全可以把誤差糾正,等等。
2. 智慧城市里的視覺分析:基于單個攝像頭的車牌抓取和識別可能受光照條件、空氣能見度、車輛運(yùn)行速度和遮擋情況的影響,但獲得的部分信息(不完整車牌和車輛特征)可以跟其它攝像頭獲取的信息進(jìn)行對照和相互印證。
3. PM2.5的檢測儀太貴,5000美刀,很準(zhǔn)很穩(wěn)定。買個灰塵傳感器,幾十塊人民幣,不準(zhǔn)不穩(wěn)定。那兩個傳感器放一起呢,平均、平滑過的數(shù)據(jù)穩(wěn)定了很多。再把這個數(shù)據(jù)跟官方的數(shù)據(jù)做關(guān)聯(lián),跟開放遙感數(shù)據(jù)(MODIS)推測的PM2.5值做關(guān)聯(lián),跟區(qū)域溫濕度、氣壓和風(fēng)向做關(guān)聯(lián),也許你就有了個200塊人民幣的個人PM2.5檢測儀。
類似數(shù)據(jù)融合的例子有很多,涉及連續(xù)時/空軸的同質(zhì)數(shù)據(jù)和同一時/空點(diǎn)的異構(gòu)數(shù)據(jù)。時空關(guān)系是最典型的一種上下文語境(context)。在數(shù)據(jù)全集前提下,通過上下文語境來組織、過濾和呈現(xiàn)具有相關(guān)性的數(shù)據(jù)集/數(shù)據(jù)流是提升管理和分析效率的一種重要方式。大數(shù)據(jù)采集和存儲盡量要全集,而管理和分析未必是多多益善(以后在分析篇中詳述),抓住context很關(guān)鍵。在數(shù)據(jù)管理上,geocoded data或time series數(shù)據(jù)庫就是利用時空語境來組織和優(yōu)化多源數(shù)據(jù)的例子。
對于數(shù)據(jù)擁有者而言,數(shù)據(jù)的多樣性和混雜性具有多重含義:
1. 原始數(shù)據(jù)層面,多樣性是不因意志轉(zhuǎn)移的事實(shí),必須準(zhǔn)備好多種采集和存儲手段,保留這種多樣性。
首先是采集。彭博社近乎偏執(zhí)地采集數(shù)據(jù),從用戶使用彭博終端的每一次按鍵,到每一個員工的即時位置,從公司創(chuàng)始人每一次訪問家族基金的記錄,到前文所述石油庫存的照片,甚至發(fā)展到丑聞。對絕大多數(shù)企業(yè)來說,除了前面所說的外部數(shù)據(jù)源,仔細(xì)研究一下IT系統(tǒng)的日志和歸檔功能,也許無需大動干戈就有意外的收獲。
對于個人來說,基督教有諺云“凡走過必留下痕跡”。大可不必像MIT Geek Deb Roy那樣把自家過日子的分分秒秒都錄下來,也不用像Bell定律的提出者Gordon Bell那樣把生活工作的點(diǎn)滴事無巨細(xì)記錄到MyLifeBits里,“Total Recall”(電影《全面記憶》,Bell在2009年寫的一篇文章以此為標(biāo)題)還太遙遠(yuǎn),但有了手機(jī),我們真的可以更好地記錄自己、量化自我。Small data是Big data的一個有趣側(cè)面,以后也許還會述及。
其次是存儲。對于非結(jié)構(gòu)化數(shù)據(jù),文件系統(tǒng)是主流的存儲選擇,但是在存取、索引以及元數(shù)據(jù)管理上不是最優(yōu)。而結(jié)構(gòu)化數(shù)據(jù)主要依靠關(guān)系型數(shù)據(jù)庫,主要問題是結(jié)構(gòu)變化時太折騰,當(dāng)數(shù)據(jù)在TB級是也太慢。NoSQL數(shù)據(jù)庫應(yīng)時而生,一是能支持靈活的結(jié)構(gòu)(schema)和非結(jié)構(gòu)化數(shù)據(jù),二是針對大數(shù)據(jù)體量可擴(kuò)展性更好。同時,文件系統(tǒng)也得到了發(fā)展,與對象存儲相映生輝,不僅在效率上提升(如Facebook Haystack對小圖片文件),也能更好地支持管理和分析(如支持SQL-like語言來操作)。由于NoSQL數(shù)據(jù)庫和文件/對象存儲不能很好地支持?jǐn)?shù)據(jù)庫事務(wù)(ACID),不但關(guān)系型數(shù)據(jù)庫還有用武之地,NewSQL數(shù)據(jù)庫也因此脫穎而出。
2. 數(shù)據(jù)準(zhǔn)備層面,怎么對多樣化的數(shù)據(jù)建模,怎么在把多樣化的原始數(shù)據(jù)轉(zhuǎn)換為元數(shù)據(jù),怎么在元數(shù)據(jù)里保留數(shù)據(jù)多樣性、又能夠保證數(shù)據(jù)處理手段的統(tǒng)一性。
這是一個很大的課題。數(shù)據(jù)處理前會有大量的時間做數(shù)據(jù)準(zhǔn)備(到達(dá)80%),涉及到抽取、清洗、轉(zhuǎn)換和集成,做得不好就只能是悲慘的“garbage in, garbage out”了。對于非結(jié)構(gòu)化數(shù)據(jù)而言,最大的問題是究竟抽取什么出來,是一些特定的低階特征、還是具有高階語義的標(biāo)記或元數(shù)據(jù)?到頭來,非結(jié)構(gòu)化數(shù)據(jù)的“結(jié)構(gòu)”很容易受到主觀假設(shè)的影響。
多樣化數(shù)據(jù)的存儲有幾個問題,一個是多類數(shù)據(jù)放一起還是分開存,二是元數(shù)據(jù)怎么存儲、與源數(shù)據(jù)如何關(guān)聯(lián),還有就是怎么能夠最好地支持未來的分析。Booz Allen的Data Lake是把幾方面做得比較好的。對于非結(jié)構(gòu)化數(shù)據(jù)來說,Apache UIMA(Unstructured Information Management Architecture)是不錯的選擇,IBM的Watson主機(jī)在《Jeopardy》里戰(zhàn)勝人類,軍功章里有UIMA的一份。
3. 數(shù)據(jù)處理層面,主要是怎么在處理中利用好數(shù)據(jù)的多樣性。這個在數(shù)據(jù)分析篇再談。
4. 多樣化數(shù)據(jù)信息密度不同,處理的代價不同,需要保存的時間也不一樣,既要全局重視,也要區(qū)別對待,在一個統(tǒng)一的大數(shù)據(jù)架構(gòu)里允許差異化的數(shù)據(jù)存儲、管理和處理,是低成本和高靈活性的關(guān)鍵。
舉個例子說,現(xiàn)在的平安城市、智能交通有大量的視頻數(shù)據(jù),一般需要保持30-60天。如果用HDFS的缺省配置來存,3份拷貝在成本上吃不消。而從視頻里提取出來的圖片保持時間較長,元數(shù)據(jù)就更長了,因此對于數(shù)據(jù)持久性上要給予不同的對待。考慮到數(shù)據(jù)搬移的代價,這些不同的數(shù)據(jù)可能還要存在不同的地方,視頻可能在靠近它產(chǎn)生的地方即邊緣區(qū)域,元數(shù)據(jù)在中央。這樣,需要把計算發(fā)送到數(shù)據(jù)保存的地方。文章來源:CDA數(shù)據(jù)分析師培訓(xùn)官網(wǎng)

數(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(), // 加隨機(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)的第一個參數(shù)驗(yàn)證碼對象,之后可以使用它調(diào)用相應(yīng)的接口 initGeetest({ // 以下 4 個配置參數(shù)為必須,不能缺少 gt: data.gt, challenge: data.challenge, offline: !data.success, // 表示用戶后臺檢測極驗(yàn)服務(wù)器是否宕機(jī) new_captcha: data.new_captcha, // 用于宕機(jī)時表示是新驗(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){ //倒計時完成 $(".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); }