大數據是當今許多企業IT運營的一個重要組成部分。據知名調研公司IDC預測,到2019年,大數據市場產值將達到1870億美元。大數據是數據分析的一個關鍵部分,而分析又是機器和人類商業智能及決策的基礎。因為很明顯,要是沒有某種基礎設施,你無法獲得各種數據:大數據、小數據或完全正確的數據,所以有必要看一看有助于構建成功大數據架構的幾個因素。
其中,一些因素可能看起來很明顯,另一些則比較微妙。實際上,所有因素共同對你的大數據系統將支持的分析和行動帶來巨大的影響。
當然,不是說只有這七個因素才會對大數據基礎設施的工作方式帶來影響。大數據系統牽涉好多部分,但這七個因素值得你考慮,因為它們是許多其他部分和流程的基礎。
眼下,你可能在使用大數據,即便你是在一家小公司工作。這要拜現有的基礎設施部分所賜――其中許多部分連最小的IT部門也能訪問。
伴隨這種可訪問性而來的是,那些本身并不擁有數據科學專長的小公司員工可能感到困惑和沮喪。如果你處于這種情形,本文不會消除你的所有困惑,但是讓你可以開始向潛在的服務提供商和供應商提一些針對性的問題。
大數據遠不止Hadoop
在平常的談話中,大數據和Hadoop常常被人換著使用。這樣的結果讓人遺憾,因為大數據遠不止Hadoop。 Hadoop是一種文件系統(而不是數據庫),旨在跨數百或數千個處理節點傳送數據。它用于許多大數據應用,原因是作為一種文件系統,它擅長處理非結構化數據,這類數據甚至不像其周圍的數據。當然,一些大數據是結構化的,為此你需要一個數據庫。但數據庫是本文介紹的一個不同因素。
Hive和Impala將數據庫引入到Hadoop
這里說的是面向大數據世界中結構化數據的數據庫。如果你想讓Hadoop數據平臺井然有序,那么Hive可能正是你需要的。這種基礎設施工具讓你可以針對非常不像SQL的Hadoop處理類似SQL的操作。
如果你有一部分數據很容易放在結構化數據庫中,那么Impala是旨在駐留在Hadoop里面的數據庫,它還可以使用你從Hadoop轉換到SQL過程中開發的Hive命令。所有這三個(Hadoop、Hive和Impala)都是Apache項目,所以它們都是開源的。
Spark用于處理大數據
到目前為止,我們一直在談論存儲和組織數據。但是,如果你想實際處理數據又怎么樣?這時候,你就需要一種像Spark這樣的分析和處理引擎。Spark是另一個Apache項目,它包括一批開源和商業產品,拿來你添加到數據湖、倉庫和數據庫的數據后,對數據做一些有用的操作。
由于它可以訪問你能想象的任何數據的庫,Spark可用于處理存儲在各種地方的各種數據。它同樣是開源的,所以你可以隨意修改它。
你可以對大數據執行SQL操作
許多人知道如何構建SQL數據庫和編寫SQL查詢。面對大數據時,這種專長沒有必要浪費。Presto是一種開源SQL查詢引擎,它讓數據科學家可以使用SQL查詢,查詢駐留在從Hive到專有商業數據庫管理系統的任何環境的數據庫。它被Facebook之類的大公司用于交互式查詢,而交互式查詢這個短語是關鍵。Presto就好比是一種對龐大數據集執行即席交互式查詢的工具。
在線存儲有一席之地
一些大數據任務需要用到不斷變化的數據。有時候,這是定期添加的數據,有時是通過分析而更改的數據。不管在什么情況下,如果你的數據寫入與讀取一樣頻繁,那么你就需要該數據存儲在本地、聯機。如果你支付得起成本,還希望數據存儲在固態存儲介質上,因為這會大大加快速度――如果你在零售或交易場地的人員焦急地等待結果返回,這是個重要的考慮因素。
云存儲也有一席之地
如果在更龐大的聚合數據庫上進行分析,那么云是完美的平臺。聚合數據并傳輸到云,運行分析,然后拆掉實例。這正是云最擅長的那種彈性需求響應。操作不會受到互聯網可能帶來的任何延遲問題的顯著影響。如果你把在專用本地系統上進行的實時分析與云端運行的深度分析結合起來,那么離充分發揮大數據基礎設施的潛力近在咫尺。
別忘了可視化
分析大數據是一回事,以一種對大多數人有意義的方式來顯示分析結果又是另一回事。圖形對于整個“解讀”工作大有幫助,所以應該將數據可視化視作是大數據基礎設施的一個關鍵部分。
幸好,有許多方法可以實現可視化,從JavaScript庫、商業可視化軟件包到在線服務,不一而足。最重要的是什么?從中選擇一小部分,試一試,并且讓你的用戶嘗試一下。你會發現,可靠的可視化是讓你的大數據分析盡可能出成果的最佳方式。
以上就是你在企業處理大數據時應知道并牢記的七個關鍵。