談虛擬化和云計算
虛擬化是業務系統和IT硬件設備間的一次重要解耦,通過虛擬化后業務系統和虛擬資源映射,虛擬資源再和實際物理資源映射,實際的物理資源對業務系統變成黑盒,以在邏輯層形成標準化的虛擬資源池。虛擬化是云計算的基石,一方面是通過虛擬化可以解決數據中心資源的整合問題,在整合過程中對計算,存儲等各種資源進行標準化;另一方面是通過虛擬化將資源切割為更小的可以更好調度的資源單位,以達到調度過程中充分利用硬件資源的能力。
虛擬化只是形成標準化的虛擬資源池,而我們說的云計算一個重要核心就是虛擬資源池中資源的動態調度,通過動態的資源調度實現了業務系統到資源池的進一步解耦,虛擬資源和業務系統之間弱綁定,弱綁定的意思就是今天虛擬資源1可以給業務系統A,明天也可以后天給業務系統B使用,具體如何使用完全基于云平臺的調度策略進行動態調度,這個在傳統的負載均衡下是很難實現的。
云動態調度的一個重點是首先是要隔離業務系統軟件到在真實物理機的部署,部署應該由統一的平臺進行管控和自動部署,這是調度的一個基礎,這樣才能夠做到按需要啟動新的虛擬資源并自動部署應用;其次是對物理資源+虛擬資源池虛擬資源的性能分析和監控,資源動態調度必須要基于對已有資源的性能監控和分析,性能數據+調度策略同時作用進行調度執行操作。
在云計算下,關系型數據庫是很難部署和實施云計算的,Oracle RAC 是一個具有共享緩存體系結構的集群數據庫,可以作為數據庫層面的替代解決方案。但是由于關系型數據庫對于存儲單元和數據庫級的計算都無法進行細粒度劃分和動態擴展,這是很難實施云計算的關鍵。而現在NoSql這種鍵值對的非關系型數據庫是云計算下數據庫應用的一個趨勢,但是在NoSql下需要數據是高度面向文件的,開發是高度面向對象的,否則對于關系型查詢很難高效解決。NoSql本身可以很好的和MapReduce和HDFS分布式文件系統等集成進行分布式計算和存儲,以獲取無限伸縮能力。
對于SaaS軟件是我們常見的云計算應用場景,由于原有在桌面端的計算和存儲能力移動到了SaaS平臺端,從這個意義上講算做云計算。如果再看深一步,應該分析SaaS軟件運營商是否基于IaaS服務提供商,或者自己的數據中心是否有無限伸縮和擴展能力,這是衡量是否是一個真正云計算的重要標準。

