接上篇介紹
大數據是如何一步一步融入雲計算的呢?
1、數據不大也包含智慧
一開始這個大數據並不大,你想象原來才有多少數據?現在大家都去看電子書,上網看新聞了,在80到90年代,信息量沒有那麼大,也就看看書,看看報,一個星期的報紙加起來才有多少字啊,如果你不在一個大城市,一個普通的學校的圖書館加起來也沒幾個書架,是後來隨著信息化的到來,信息才會越來越多。
首先我們來看一下大數據裡面的數據,就分三種類型,一種叫結構化的數據,一種叫非結構化的數據,還有一種叫半結構化的數據。結構化數據有固定格式和有限長度的數據。例如填的表格就是結構化的數據,國籍:中華人民共和國,民族:漢,性別:男,這都叫結構化數據。現在越來越多的是非結構化的數據,就是不定長,無固定格式的數據,例如網頁,有時候非常長,有時候幾句話就沒了,例如語音,視頻都是非結構化的數據。半結構化數據是一些xml或者html的格式的,不從事技術的可能不瞭解,但也沒有關係。
數據怎麼樣才能對人有用呢?其實數據本身不是有用的,必須要經過一定的處理。例如你每天跑步帶個手環收集的也是數據,網上這麼多網頁也是數據,我們稱為Data,數據本身沒有什麼用處,但是數據裡面包含一個很重要的東西,叫做信息Information,數據十分雜亂,經過梳理和清洗,才能夠稱為信息。信息會包含很多規律,我們需要從信息中將規律總結出來,稱為知識。信息是很多的,但是有人看到了信息相當於白看,但是有人就從信息中看到了電商的未來,有人看到了直播的未來,所以人家就牛了,如果我們沒有從信息中提取出知識,天天看朋友圈,也只能在互聯網滾滾大潮中做個看客。有了知識,然後利用這些知識去應用於實戰,有些人會做得非常好,這個東西叫做智慧。有知識並不一定有智慧,例如我們對已經發生的事情可以從各個角度分析的頭頭是道,但一到實幹就會覺得力不存心,並不能轉化成為智慧。所以我們應當將獲得的知識應用於實踐,實踐是檢驗整理的唯一標準。
所以數據的應用分這四個步驟:數據,信息,知識,智慧。這是現階段我們都想要的,我們收集了這麼多的數據,能不能基於這些數據來做下一步的決策,改善產品,例如讓用戶看視頻的時候旁邊彈出廣告,正好是他想買的東西,再如讓用戶聽音樂的時候,另外推薦一些他非常想聽的其他音樂。用戶在我們的應用或者網站上隨便點點鼠標,輸入文字對我們來說都是數據,我們就是要將其中某些東西提取出來,指導實踐,形成智慧,讓用戶陷入到我到的應用裡面不可自拔,上了我們的網就不想離開,手不停的點,不停的買,很多人說雙十一我都想斷網了,我老婆在上面不斷的買買買,買了A又推薦B,老婆大人說,“哎呀,B也是我喜歡的啊,老公我要買”。你說這個程序怎麼這麼牛,這麼有智慧,比我還了解我老婆,這件事情是怎麼做到的呢?
2、數據如何昇華為智慧
數據的處理分幾個步驟,完成了才最後會有智慧。
第二個步驟是數據的傳輸。一般會通過隊列方式進行,因為數據量實在是太大了,數據必須經過處理才會有用,可是系統處理不過來,只好排好隊,慢慢的處理。
第三個步驟是數據的存儲。現在數據就是金錢,掌握了數據就相當於掌握了錢。要不然網站怎麼知道你想買什麼呢?就是因為它有你歷史的交易的數據,這個信息可不能給別人,十分寶貴,所以需要存儲下來。
第四個步驟是數據的處理和分析。上面存儲的數據是原始數據,原始數據多是雜亂無章的,有很多垃圾數據在裡面,因而需要清洗和過濾,得到一些高質量的數據。對於高質量的數據,就可以進行分析,從而對數據進行分類,或者發現數據之間的相互關係,得到知識。比如盛傳的沃爾瑪超市的啤酒和尿布的故事,就是通過對人們的購買數據進行分析,發現了男人一般買尿布的時候,會同時購買啤酒,這樣就發現了啤酒和尿布之間的相互關係,獲得知識,然後應用到實踐中,將啤酒和尿布的櫃檯弄的很近,就獲得了智慧。
3、大數據時代,眾人拾柴火焰高
當數據量很小的時候,很少的幾臺機器就能解決。慢慢的當數據量越來越大,最牛的服務器都解決不了問題的時候,就想怎麼辦呢?要聚合多臺機器的力量,大家齊心協力一起把這個事搞定,眾人拾柴火焰高。
對於數據的收集,外面部署這成千上萬的檢測設備,將大量的溫度,適度,監控,電力等等數據統統收集上來,對於互聯網網頁的搜索引擎來講,需要將整個互聯網所有的網頁都下載下來,這顯然一臺機器做不到,需要多臺機器組成網絡爬蟲系統,每臺機器下載一部分,同時工作,才能在有限的時間內,將海量的網頁下載完畢。
對於數據的傳輸,一個內存裡面的隊列肯定會被大量的數據擠爆掉,於是就產生了基於硬盤的分佈式隊列,這樣隊列可以多臺機器同時傳輸,隨你數據量多大,只要我的隊列足夠多,管道足夠粗,就能夠撐得住。
對於數據的存儲,一臺機器的文件系統肯定是放不下了,所以需要一個很大的分佈式文件系統來做這件事情,把多臺機器的硬盤打成一塊大的文件系統。
再如數據的分析,可能需要對大量的數據做分解,統計,彙總,一臺機器肯定搞不定,處理到猴年馬月也分析不完,於是就有分佈式計算的方法,將大量的數據分成小份,每臺機器處理一小份,多臺機器並行處理,很快就能算完。例如著名的Terasort對1個TB的數據排序,相當於1024G,如果單機處理,怎麼也要幾個小時,但是並行處理209秒就完成了。
所以說大數據平臺,什麼叫做大數據,說白了就是一臺機器幹不完,大家一起幹。隨著數據量越來越大,很多不大的公司都需要處理相當多的數據,這些小公司沒有這麼多機器可怎麼辦呢?
4、大數據需要雲計算,雲計算需要大數據
說到這裡,大家想起雲計算了吧。當想要幹這些活的時候,需要好多好多的機器一塊做,真的是想什麼時候要,想要多少就要多少。例如大數據分析公司的財務情況,可能一週分析一次,如果要把這一百臺機器或者一千臺機器都在那放著,一週用一次對吧,非常浪費。那能不能需要計算的時候,把這一千臺機器拿出來,然後不算的時候,這一千臺機器可以去幹別的事情。誰能做這個事兒呢?只有雲計算,可以為大數據的運算提供資源層的靈活性。而云計算也會部署大數據放到它的PaaS平臺上,作為一個非常非常重要的通用應用。因為大數據平臺能夠使得多臺機器一起幹一個事兒,這個東西不是一般人能開發出來的,也不是一般人玩得轉的,怎麼也得僱個幾十上百號人才能把這個玩起來,所以說就像數據庫一樣,其實還是需要有一幫專業的人來玩這個東西。現在公有云上基本上都會有大數據的解決方案了,一個小公司我需要大數據平臺的時候,不需要採購一千臺機器,只要到公有云上一點,這一千臺機器都出來了,並且上面已經部署好了的大數據平臺,只要把數據放進去算就可以了。
雲計算需要大數據,大數據需要雲計算,兩個人就這樣結合了,先和大家分享到這裡,後續會繼續更新人工智能的部分,如果大家感興趣,可以關注哦!
閱讀更多 冷貓工作室 的文章