大資料聽著很牛,實際上也很牛嗎?我們經常看到大資料工程師月入兩萬三萬五萬,那麼大資料到底值錢在哪裡呢?
就是收集很多使用者資料,用機器進行處理嘛,幹嘛整天吵得這麼high。傳統行業的資料,收集和分析慢,網際網路時代特別是移動網際網路時代,資料收集和分析都變得更快更智慧,僅此而已吧。
真的是這樣嗎?今天我們來看看兩位業內人士的深入分析。
01 大資料的商業價值
大資料是近年來新出熱門詞彙,人們對於大資料的理解還不夠全面,甚至存在一些誤區,認為資料量大就是大資料,或者認為裡面數字大也是大資料,實際上這些只屬於統計的範疇,和大資料是沒有關係的。
所謂大資料,其實是有兩部分組成的。一部分是海量運算儲存能力,一部分是資料建模演算法。
認為大資料是更快更智慧的處理技術的人,只是認識到了大資料海量運算儲存能力,而這部分只是量變,卻沒有認識到質變。
如果針對消費者市場,大資料的目標是對每個消費者有清楚的認知和跟蹤。
你的年齡、身高、家庭背景、收入水平、信用水平等等這些表面的客觀的資訊自不必說,你此刻在哪裡、喜歡什麼顏色、喜歡什麼風格、想要什麼東西,都能夠收集分析出來。之後便會在你正在看的視訊網站、正刷的APP,所有這些介面上呈現資訊,引導你關注。
隨著這項技術的進步,甚至可以提前預知你想要購買的東西,提前一步給你送達。可以想象一下,你想買一個東西下單二十分鐘就到你家門口了,因為早就預測到你什麼時候想要什麼了,所以幾天前預測到就提前發貨到你小區的提貨點了。
這樣的精準的服務,以後對消費者而言當然是習慣了就不再記得它有多偉大。就像過去的工業革命,只有經歷那個時代的當事人那個時代的締造者們才會對那些創造充滿激情,而我們對隨手可得的電和各種電器還會有什麼驚喜嗎?
傳統的資料行業,一沒有足夠強的資料獲取能力,二沒有足夠強的資料加工能力。包括以前靠預測總統大選起家的那家公司,他們的取樣是侷限的,比如寄調查問卷,調查問卷這種取樣是難以重現真實的,且基於傳統的小樣本統計方法。另外,資料處理能力也很有限。
同時,資料取樣是覆蓋幾億人口全天候的。這是大資料的第二個“大”,數量大。相對傳統的抽樣小樣本集而言,大資料可以稱之為全樣本。正是這兩個“大”,就能夠帶來資料的質變。
再看資料加工。傳統的加工,恐怕多數人靠Excel吧!我們採一天的資料就能撐爆幾萬臺你們家裡的電腦硬碟。至於計算,可以想像一下,對這個數量級的資料矩陣做個最簡單的矩陣分解要怎麼實現。這是機器的能力。
人的方面,現在很多傳統的搞這些的統計方向的人經常會說,“唉,現在都搞演算法去了”。沒錯,演算法就是人與機器協作的溝通方式,只有和機器深度合作,才能得到更高的生產力。
這一切,在消費者的眼裡,也許也不是那麼的了不起,不就是一下單馬上就到嘛,不就是各種方便嘛,怎樣還不是一樣的活。但是這對商業而言卻是驚天動地的。
過去你賣衣服的,你的週轉庫存和滯銷庫存恐怕吃掉了你一半的利潤都不止;一旦有了大資料支撐,你的庫存幾乎可以忽略了。過去你搞設計的,你耗盡心力設計出來的作品很可能在市場上得不到認可;有了這個精準大殺器,消費者的資料會告訴你他們要什麼,你設計師錦上添花就好,真正的設計者其實是消費者自己。
過去你搞營銷的,投入一大筆錢搞個營銷方案,結果收效甚微;一旦有了這個精準大殺器,營銷的投入風險就低多了。
大資料帶來的精準對商業的影響是方方面面的。這是新時代對舊時代的淘汰。除了商業,還有大量別的用處,都將深刻地改變世界。比如個人徵信、醫療行業、能源行業、公路交通等等。太多太多,這些都會深刻地改變世界的運作方式
02 技術角度分析大資料
我有20個整數,一把全裝進記憶體,呼叫個sort,完事了。
我有2GB那麼多的整數,一把全裝進記憶體……恩恩,如果機器不那麼破,勉強也完事吧。
我有20GB那麼多的整數,對,往你家PC裡多插幾條8GB的記憶體條試試?
那我現在有200GB那麼多的整數……看你丫的怎麼裝記憶體,哈哈哈哈哈哈
嚇尿了吧!?寫外排序?你寫啊!It's ONLY the beginning!很多人可是連記憶體裡的快排都寫不出的哦~
200GB算個啥大資料啊,蒼老師的合集都不止咳咳……
OK,顯然我們已經意識到1臺機器裝不下了。咋辦?多找幾臺機器唄。多找幾臺機器意味著啥啊?分散式計算懂不懂,連分散式都不懂說個毛大資料啊!!!
好,現在有200GB的整數,排個序吧……呃,給你10臺機器吧。
1)這200GB的整數,如何分配?
2)這10臺機器之間如何通訊?沒錯,我不止坑了你去寫外排序,我還得坑你去玩網路程式設計。
3)假設每一臺機器上的資料都已經完全排好,如何多快好省地把各自排序好的結果merge在一起?
4)如何設計有效的merge邏輯減少10臺機器之間的網路IO。
5)別以為10臺機器不需要維護,萬一在排序的時候其中一臺機器掛了,怎麼辦?具體包括但不限於:他在掛之前有響應其他機器發給他的request嗎?他在掛之前自身的任務完成了多少了?假設這臺機器在掛的時候正在跟隔壁的機器互相傳輸資料腫麼辦?
6)誰去監聽這10臺機器的健康?或者是其他機器怎麼知道某臺機器掛了?如果是連線超時,怎麼知道是網路阻塞還是目標機真的掛了?
7)如果某臺機器真的掛了無法恢復,又或者由於隔壁的黃大牛要打魔獸了劫走了一臺(叢集升級,叢集中的節點被臨時撤走的事常有哦),如何把那臺機器上那20GB的資料分給其餘的9臺?
如果資料不是200GB,而是2TB,2PB……
1)這麼大的資料,這麼大的叢集,同一時間掛掉的機器數量可能會很多。如果這個叢集用來做儲存(例如百度雲),怎麼保證使用者的資料不丟失?
2)如果這個叢集用來做離線計算,怎麼設計排程程式提高每臺機器的資源利用率,減少叢集內的網路IO和儘可能地提高每臺機器的響應速度?
3)我希望叢集是可擴充套件的,最好架構能支援我只要簡單地增加機器數目就能擴充叢集的計算和儲存能力,這個架構要怎麼設計?
建議題主有空去了解下mapreduce,hadoop,yarn,mpi,vfs等等內容。
“傳統行業的資料,收集和分析慢,網際網路時代特別是移動網際網路時代,資料收集和分析都變得更快更智慧,僅此而已吧。”
只所以題主會這麼說,是因為題主作為局外人,能看到的就只有這些表面的最直觀的現象。一句簡單的“資料分析變得智慧了更快了”的背後,實際上是無數人付出的勤奮、創造力、勇敢還有艱辛!
馬雲爸爸說,未來是DT時代,大資料是最重要的資產。
未來三至五年,中國需要180萬資料人才,但目前只有約30萬人。到2020年,企業基於大資料計算分析儲存、資料探勘、資料分析等資料產業的發展,中國需要更多的資料人才。
IT行業、網際網路、開發語言(Java、前端HTML5、Python、UI/UE、雲端計算、自動化測試、大資料、人工智慧、物聯網、遊戲開發、網路安全、GO語言、PHP)相關資訊,大連千鋒會第一時間送到大家身邊,也可以關注微信公眾號【dalianqianfengjiaoyu】了解相關行業資訊。