標籤:
第一章 基礎概述
1.1 基於現狀的一些思考
在過去十幾年裡,隨著互連網產業的普及和高速發展,各種格式的互連網資料也呈現爆炸性增長之勢。與此同時,在資料應用的另一個重要領域:商業和科學計算,在各種新興技術和產業需求的推動下,對資料存放區和計算要求也日益提高,並且對計算資料的準確性和精度也遠高於互連網資料。而在這些現象的背後,當前的資料計算早已經突破MB量級,GB成為常態,TB變得流行,正在向PB邁進的時候,面對如此龐大的資料量,如果管理和使用它們,滿足各種計算需求,發現和篩選其中有價值的資訊,通常以提高晶片效能,增加記憶體、磁碟的做法,已經變得越來越難以為繼,甚至不可行。在這種背景下,以網路和網路通訊技術為基礎,將分散在不同地理位置的電腦串連起來,組成空間上分散、邏輯上統一的電腦叢集,就成為實施大規模資料處理的必需選擇。
電腦叢集的優勢在於:它強調整體的處理能力,每台電腦做為一個節點參與處理過程,承擔其中一部分處理任務,處理能力的強弱由全部節點來共同決定。這種工作模式極大地發揮出集體的力量,使得單台電腦的處理效能變得不再重要。並且因為網路的串連,每台電腦隨時可以加入或者撤離計算過程。這種類似隨身碟“熱插拔”的功能,使得電腦叢集在運行過程中可以動態地調整自己的計算能力,賦與了叢集計算近乎無限增長的可能,這是傳統的集中式計算無法比擬的。同時因為不再追求單台電腦的處理效能,在採購硬體裝置時,可以根據實際需要酌情考量,為節約成本提供了選擇的空間。
但是必須看到,正如硬幣的兩面一樣,叢集計算在提供了前所未有的處理能力的同時,也有它與生俱來的許多問題。
首先由於串連的節點眾多且分散,叢集的組織圖變得十分龐大。個體硬體品質良莠不一,網路線路、通訊裝置、電腦之間的串連和通訊過程存在著大量的不確定性,硬體裝置本身、裝置與裝置、裝置與外界環境,彼此互相交叉影響。在這樣的條件下,保證每台裝置完全穩定運行已無可能,解決電腦叢集在不安定狀態下的穩定儲存和計算成為首要要求。
另外,與單台電腦的資料處理根本區別是,叢集的資料處理是一個分散的計算過程。它在前端受理大量的請求任務,然後將這些任務分配到後端眾多的電腦上去執行。一個高效並且合理的分布計算演算法成為必須。這個演算法需要解決的問題包括:任務分配、過程調度、故障容錯、資料篩選、資料平衡、資料匯總等諸多環節的工作,最終形成與集中計算一樣的資料處理結果。這個過程十分複雜。
資料管理益變得重要。在成批量平行處理的資料隊列中,要保證完全正確的處理結果,任何單點上的資料都不能遺漏。這需要感知每個資料的存在,確定資料的物理位置,驗證資料的可用性和正確性,即使在故障狀態下,仍然需要保證計算過程的正常進行。這是資料處理的基本要求。
但是,隨著資料儲量的不斷增加,另一個現象開始凸顯出來,並且已經不容忽視:當前的各種資料已經越來越超越數字內容本身,逐漸演變成一種資產,其中蘊藏和可能產生的價值有時候往往不可估量。如何保護好這些資料只被資料所有人擁有,而不會受到外來的侵犯,成為必須要解決的問題。
更重要的一項來自使用者體驗。沒有人會喜歡一個複雜、繁瑣、難以維護的系統。相反,一個人機介面友好、容易操作和管理的產品更容易受到使用者青睞。這需要在產品設計階段做很多工作,綜合考量產品的應用範圍、處理效率、運營成本,以及使用者的使用行為和習慣,做出必要的取捨,輔以技術實現,才能獲得良好的使用者體驗。
當能夠提供的硬體基礎設施已經固定,各種應用需求還在不斷髮展和變化中,如何適應這種變革的趨勢,貼近使用者的使用需求,開發出使用者滿意的產品,以上種種,都是大資料軟體設計者們需要思考的問題。
Laxcus大資料管理系統(2)- 第一章 基礎概述 1.1 基於現狀的一些思考