關于大數據的定義
對于大數據,有三個重要的事實。首先,它并不是新趨勢。亞馬遜、微軟和谷歌自上世紀90年代就開始進行大數據工作。事實上,幾十年來,很多公司都一直在挖掘數據。可能由于當時只有資金雄厚的大型公司才能夠進行大數據研究,但大數據確實早已存在。現在,基于廉價的計算和存儲能力以及新工具和技術,幾乎每個人都可以使用高級數據挖掘技術和算法了。
很多人認為大數據只是商業智能(BI)的新名稱,雖然這兩者有相似之處,但大數據超出了BI的范疇。
第二個事實:“大”是相對的。現在各行業各組織確實正面對創紀錄水平的數據增長。據IDC稱,我們每秒創造超過58TB數據,到2020年,將擁有超過35ZB的存儲數據。然而,大數據并不一定是巨大的,大數據并不在于其規模,而在于你需要如何處理它。擁有100TB的小公司可能也存在大數據問題,因為他們需要提取、分析數據,并作出決策。
第三,大數據處理中使用的數據的定義是廣泛的,它可以包含結構化和非結構化數據。對于一些公司來說,最重要的是大數據的元數據,或者關于數據的數據。
麥肯錫將大數據定義為“其規模超出傳統數據庫軟件的捕捉、存儲、管理和分析能力的數據集”,筆者補充了這一點:“這些數據集需要大量運行在數百甚至數千臺服務器(云)的并行軟件(系統)來處理。”
大數據成功的7個步驟
第1步:承認存在問題。這往往是最難的一步。10年前,我們拒絕承認我們的網絡已不再受防火墻和代理服務器設置的保護,而我們不得不為員工遠程訪問開放基礎設施并擁抱互聯網。對于大數據,IT領導者需要評估其數據情況:
● 你的數據集讓你不堪重負嗎?
● 你不知道所有數據的位置?
● 你(或者企業領導者)沒有從你的數據中得到所需的信息?
● 企業領導沒有基于數據來做決策?
● 有可能提高IT在企業政策和戰略決策中的相關性嗎?
如果你像大多數公司一樣,部分或者所有這些問題的答案都是肯定的,那么是時候控制你的數據,并從中挖掘出情報以提供給領導層做決定。
第2步:認識到大數據帶來的大機會。我們總是被告知要緊密聯系業務,“業務技術”這一說法已存在多年,但我們總是很難看到最新的軟件和流程如何直接影響收入或者全球經濟增長。而大數據卻可以。為什么?因為信息就是力量,企業領導需要數據中挖掘出的信息來幫助企業競爭和發展。員工、客戶和市場產生的大量數據讓整個企業(從銷售到營銷部門)都不堪重負。而大數據能夠為你提供簡潔且實時的價值信息,幫助增加收入。
第3步:制定大數據計劃。與任何計劃一樣,你開始就應該想到結果。企業需要知道什么?他們需要回答的問題是什么?在你開始使用Hadoop前,解決這些問題,并簽訂聯合協議。然后按照下列步驟操作(每個步驟可能需要數周或者數月):
1、隔離屬于“大數據”的部分數據
2、分離“產品”大數據和“公司”大數據,例如人力資源分析需要的員工數據和電子商務平臺的客戶或產品搜索數據需要分離
3、認識和了解你的數據的波峰和波谷
4、了解哪些技術允許實時(或接近實時)大數據處理
5、確定關鍵的解決方案/供應商
6、從小事做起,評估與發展—先做一個項目,讓你可以快速展示成果和ROI,然后轉移到下一個大數據項目
7、繼續分析、調整和輸入—大數據是靈活的,需要隨著數據、情報和企業要求的變化進行調整
第4步:利用分布式系統。大數據要求我們轉換對系統和基礎設施的想法。正如虛擬化從根本上改變了我們利用服務器和應用程序的方式,分布式系統和處理使我們能夠管理大數據,因為分布式架構允許我們將問題分解成很多小任務,然后將這些任務分配到多個系統。好消息是,我們擁有了越來越多的攻擊和架構框架可以利用,包括Cassandra、Hadoop、VMware、Red Hat等。分布式系統并不新鮮,但大數據將其帶入到全新的水平,分布式方法包括:
● 多租戶架構
● 分布式數據庫
● 虛擬化
● 多線程
● 多核心CPU
● 并行處理
● 分布式文件系統
● 分布式負載平衡
● RAID算法
第5步:從分布式到分散式。對大多數公司來說,這是真正的范式轉變,這也是大數據和云計算結合的地方,鑒于互聯網是世界上最大的分布式和分散的系統,我們應該更加充分地利用互聯網來實現大數據。
我們很喜歡分布式實例或者計算處理,但分散式往往有種失去控制的感覺。這有必要嗎?對于大數據,采用分散式做法是必要的,因為由于過度和孤立的服務,所有未使用的實例和存儲容量都將浪費。
更重要的是,單靠分布式組件無法讓我們跟上數據增長的步伐。IDC估計,到2020年,產生的數據和數據中心容量之間的差距將達到60%。
然而,部分原因在于我們沒有充分利用我們已經擁有的容量。Gartner估計,大多數計算機、服務器和網絡只運行了30%的容量以準備好應對峰值或者未來增長。雖然我們可能永遠不會以90%或者100%的容量運行,但我們可以更好地利用現有的容量,節省數百萬美元,提高現有基礎設施的總體擁有成本(TCO)。
分散式方法的主要特點:
● 沒有中央瓶頸
● 大量的能力
● 有機的,需求推動容量增長
● 充分利用現有的基礎設施和邊緣設備
● 信息共享
● 假定每個人/每一個節點是“不可信任的”
● 地理分布:
○ 所有權和參與
○ 成本
○ 管理開銷
○ 風險
分散式方法存在很多很好的例子,其中最知名的就是開源運動。
分散式方法還有兩個新例子,筆者定義為分散式云系統:CloudStack和OpenStack。我們仍然位于分散式方法的早期階段,但隨著數據繼續增長,這將是未來幾年的重要趨勢。
第6步:雇傭/培養合適的人才和技能。云計算并不意味著更少的IT工作,但云計算和大數據的出現卻是意味著我們需要發展我們的技能和培養人才。在大數據世界,數據庫管理員等現有崗位變得更加重要。你還需要培養和招聘的其他職位包括:
● 數據科學家
● 架構師
● 隨機理論師(算法)
● 業務分析師
● UX/UI專家
其中一些職位似乎是合乎邏輯的,但對于業務分析師和UX/UI專家,傳統上不屬于IT部門,你可以將這些人員安排在生產管理中,而在大數據解決方案中,他們需要攜手開發和運營團隊。這是因為你不能直接將大數據信息交給業務方面,使用圖表和易于理解的分析是關鍵。
此外,如果你還沒有整合開發/運營團隊來更好地管理云計算部署,那么現在可以這樣做了。這兩個團隊必須攜手合作來實現任何云計算或者大數據戰略。
第7步:通過大數據來利用數據。正如IT職位可能開始更傾向于業務,IT需要改變其度量的方式。你的團隊中的每個人都應該熱衷于追蹤和記錄關鍵性能指標(KPI),這些應該符合業務指標,而不只是及時發布和交付高質量代碼。技術團隊的每個人都應該有明確的指標,并努力尋找新方法來提高指標結果。
大數據可能不是我們所有人想要的答案,但它確實給IT創造了幫助企業提高收入的機會。