人云科技理吳朱華:中小企業Big Data解決之道
人云科技創始人兼總經理吳朱華
吳朱華表示海量數據呈現“4V + 1C”的特點。既Variety:一般包括結構化、半結構化和非結構化等多類數據,而且它們處理和分析方式有區別;Volume:通過各種設備產生了大量的數據,PB級別是常態;Velocity:要求快速處理,存在時效性;Vitality:分析和處理模型必須快速變化,因為需求在變;Complexity:處理和分析的難度非常大。互聯網企業、智能電網、車聯網、醫療行業和安全領域等都充分體現出海量數據的用途和價值。他認為中小企業面對大數據的解決之道應遵循采集、導入/處理、查詢、挖掘的流程。
***吳朱華向大家介紹了自家的YunTable。YunTable是在傳統的分布式數據庫和新的NoSQL技術的基礎上發展而來的新一代分布式數據庫。通過它能構建一個百臺級別的分布式集群來管理PB級別的海量數據。YunTable***的特色就是快,它能極快地導入海量的數據,并極快地進行相關的查詢;其次是TCO低,整體成本比提供類似性能的Oracle Exadata或者EMC GreenPlum等低很多,并且擴展能力更強。
以下為文字實錄
剛才有嘉賓說到審核,我們大多數群眾希望哪一天微博能夠自動審核,而不用人工審核。今天非常榮幸來到這里,海量數據是一個非常大的趨勢,不僅在座一些淘寶,騰訊,阿里巴巴這種公司有這類需求,我接觸很多公司都有這種類似需求,特別是一些中型物聯網跟互聯網公司我今天借這個機會和大家分享一下,我是如何幫助一些中小型企業實施一些海量數據相關解決方案。
在這里我首先做一下自我介紹,我叫吳朱華,是上海人云科技團隊創始人,之前是在IBM中國研究院從事云計算相關的研究工作。這是我的郵件地址,還有我的微博,還有我 網站地址,就是人云的意思。接著介紹一下我們團隊,是成立2010年底,主要都是來自于研究院和上海貝爾卡特等著名IT企業,我們現在離力推的產品是YunTable,還有今年年初我們出版一本書叫《云計算核心技術剖析》,這本書半年之內已經印刷上萬冊,具有非常好評。之前的一些書沒有專門針對程序員,我專門寫了這本書,雖然不是說什么大師之作,看了之后還是有所收獲。
首先給大家講一下在我眼中什么是海量數據?最近幾年由于物聯網,由于微博,智能手機,傳感器這種設備越來越多,通過電腦生成數據越來越多,而且量級化是過去無法想象的。在這些數據里面都有什么價值呢?談到這了,我跟大家做一個比喻,我覺得非常合適。如果我們拿出一個放大鏡,放大鏡指的是用于處理海量數據的一個工具,我們拿放大鏡照著這些冰冷的數據,我們就能發現有一些非常有價值,通過行業給大家講一下價值在哪些方面。
***個是互聯網企業,比如我們有用戶做網絡廣告監測,每天有幾百G技術,網絡點擊數據,他就會去分析這些點擊日志來分析,哪些用戶在哪些階段點擊廣告,從而幫助商戶們來判斷他投廣告是否有價值。第二是智能電網,我有客戶是做一些智能電網方面的解決方案。比如說,他們一個省有300個用電用戶,每隔幾分鐘會將他們大宗數據發送到后端集群當中,之后集群就會對這些數億條數據進行分析,來分析一下大概的用電模式,根據用電模式來生產電力,這樣能夠節省電力資源的浪費。
第三個方面是車聯網,我們有用戶是做這方面,他們有幾十萬個車載終端。他們車載終端,是每隔幾分鐘都會上傳一些數據到后端數據集群里面,***會分析這些數據,來判斷一下大致路況是什么情況,之后將有價值的路況信息給Push客戶端里面,能夠幫助客戶節省在路上時間。第四是醫療行業,每個人看病都有病例,如果我們把全國,幾千萬病例都匯總起來之后進行一些數據分析,數據處理,會找出大致的一些模式,通過這種模式非常容易的幫助醫生看病。
第五個是安全領域,比如美國比較火,中情局,他們有很多影視數據關于煽動的,還有本拉登一些照片,之后就分析一些哪些煽動助薩達姆,卡札菲,本拉登,除此之外還有一些通過海量分析文本數據從而形成一定程度的AI。
之后跟大家講一下,我總結數據有四個特點,4V+1C。***V是Variety,海量數據有不同格式,***種是結構化,我們常見的數據,還有半結據化網頁數據,還有非結構化視頻音頻數據。而且這些數據化他們處理方式是比較大的。第二點就是Volume,量比較大,我們有一些用戶化每秒就要進入很多數據,很多客戶內部都有幾批數據,還有下面淘寶都是幾PB數據,所以PB化將是比較常態的情況。
第三個是Velocity,因為數據化會存在時效性,需要快速處理,并得到結果出來。比如說,一些電商數據,今天的信息不處理沒有結果化,將會影響到今天捕獲很多商業決策。第四是Vitality,因為大家知道互聯網行業,各行業需求在變,所以說不像銀行業,金融業都是IBM大型機用了幾十年都沒有問題。所以,他們分析模型是不斷變化的,基于上個4個V,說明促成***一個C就是Complexity,使得海量數據分析非常復雜,使得過去靠單純易于關于數據庫BI已經不是太適合了。所以,可能需要新的創新。
***跟大家講一下海量數據如何從小做起?如何做企業化,離不開兩個東西,一個是流程,利用流程來幫助我們認清一個大致的步伐和節奏。第二就是方針,利用方針來指導我們如何走這個流程。跟大家講一下剛才說到方針和流程,先講一下流程,流程怎么分四步,我個人總結。***步是采集,第二步是導入和處理,第三步是查詢,第四步是挖掘,分別給大家解釋一下。
***步是采集,我們現在很多客戶端他們都會發數據給前端的數據庫,比如MySQL,MySQL把數據存下來,并且用戶會對這些數據進行查詢,比如說電商數據,我們現在做筆交易,馬上可以存到里面,用戶可以進行查詢訂單什么樣一個情況,是不是發到上海,我們家那邊了。在采集階段特點并發數非常高,每秒鐘有幾十萬次并發,或者是上次奧運會一樣,幾百萬次,幾千萬次并發。在這個階段比較常用的數據MySQL,Redis,MongoDB,還有用于一些工業場合實時數據庫。
第二階段是導入和處理,因為前端雖然很多小型數據庫,但是太分散很難進行統一分析。所以,我們需要將海量來自前端數據導入到一個集中數據庫進行集中處理,并在導入過程中進行一些數據清洗工作。在這個階段導入量非常大,需要每秒100兆,或者百萬行量級,如果太低會造成流程堵塞。
第三點是查詢,將很多數據導入集群里面,就可以對數據進行普通查詢和分類匯總,從而滿足一些大多數商業方面要求。在這邊查詢涉及到數據量非常大,查詢的請求特別多,被選工具有Hadoop,還有Hadoop比較好的一些東西,比如來自FaceBook的hive,還有來自雅虎,HBase等階段。我們走到第三階段挖掘,基于之前一些數據結果進行挖掘。一種是推介,第二種是分類,第三種是群集,三大類的數據挖掘算法。特點算法比較復雜,一般是看不懂,并且涉及到數據量跟計算量是非常大的。因為這塊我不是太熟只舉了一個產品,就是Hadoop Mahout,可以支持三大類算法,一推介,二分類,三集群。
對于現在的大數據環境而言,Hadoop絕對是現在最主流的平臺。不論IBM、微軟還是Oracle都選擇與她并存。還有一些小公司,也在做基于Hadoop的東西。
之后給大家講一下具體方針,***點要認識自己的不足,因為我們中小企業,無論是在資源,資金方面,是無法跟一些三巨頭相媲美,我們要認識自己的不足。第二點是明確分析自己的需求,比如說我們的海量數據是結構化的,還是非結構化的,還是半結構化的。比如說,我們數據大小是TB級別,還是PB級別,還是PB+級別的。還有我們瞬間讀寫量級是什么級別,出現讀寫100萬行,或者讀寫100兆,或者我們是讀為主,還是寫為主,還是同時建立并發數大概是多少,不是我們百萬并發還是千萬并發,還有一致性,我們是需要強一致性,還是***一致性,還有延遲度,***能夠容忍多慢延遲度,而不是一秒,10秒,或者1小時,還有算法復雜度。
第三點我們要靈活使用現有工具,比如一些開源,還有一些可以承受的商業軟件。我個人不是排斥自建,因為我們小公司,我們要找準點,希望那個點不是重新發明文字,而是能夠做到畫龍點睛。第四部分并不是所有公司都是亞馬遜,我們盡可能,就連Google也很難做平臺化路線,我們盡量不要往那方面走,因為平臺化本身有很多成本在上面,比如設計成本,我們盡可能以應用場景為先,先把我們商用場景,商用價值跑出來再說。
第五點比較通用的語言,我們要進行不斷測試迭代來進行驗證。通過不斷測試迭代我們就認清楚,哪些技術分析。之后還有通過迭代認清楚需求,并且通過迭代向老板證明我們做的事情是有價值的。還有你覺得流程,都比較復雜跑出來再說,可能通過這個過程就知道大致需要一些什么,如果實在不行就可以先跑跑試試看。
***跟大家介紹一下我們YunTable,在性能方面做很多優化。因為我們出去跟客戶談,為什么要用我們的東西,唯一的理由就是我們快。我們專注點在導入和查詢,能夠將數據非常快導入我們YunTable里面,并且能夠非常快的進行查詢。比如我們上周有個例子,我們用戶一個表大概50列,我們先試一個比較簡單的,現實一下兩億行的場景,我們起4個節點把兩億行導進來,每秒能導入20多萬行,大概20多分鐘能夠導入數據庫里面,之后在這個基礎上,平均在10秒以內完成大多數的查詢工作。
因為我們那邊性能方面已經做到***,我感覺是接近Oracle Exadata,但是成熟度都比我們強很多。***謝謝大家,我做兩個小廣告。書的廣告已經做了,第二點如果大家需要一些海量數據分析的解決方案,特別中小企業可以跟我聯系,我微博還有郵件都在上面,如果大家需要一個導入數據非常快進行導入,幾十萬條,幾億條都沒有問題,我們可以幫你試試看,***感謝大家。