8.雲計算原理與技術
8.1雲計算概述
對一般使用者而言:雲計算是指通過網路以按需、易擴充套件的方式獲得所需的服務。即隨時隨地只要能上網就能使用各種各樣的服務,如同錢莊、銀行、發電廠等。這種服務可以是it和軟體、網際網路相關的,也可以是任意其他的服務。
對專業人員而言:是分布式處理、並行處理和網格計算的發展,或者說是這些電腦科學概念的商業實現。是指基於網際網路的超級計算模式–即把原本儲存於個人電腦、移動裝置等個人裝置上的大量資訊集中在一起,在強大的伺服器端協同工作。它是一種新興的共享計算資源的方法,能夠將巨大的系統連線在一起,以提供各種計算服務。
雲計算包含的分布式計算特徵:
(1)通過資源排程和組合滿足使用者的資源請求
(2)對外提供統一的、單一的介面
8.2雲計算關鍵技術
體系結構
資料儲存
計算模型
資源排程
虛擬化技術
雲計算核心服務通常可以分為3 個子層:基礎設施即服務層(iaas, infrastructure as a service)、平台即服務層(paas, platform as a service)、軟體即服務層(saas, software as a service)
mapreduce計算模型
雲計算的計算模型是一種可程式設計的平行計算框架,需要高擴充套件性和容錯性支援。mapreduce 是google 提出的並行程式程式設計模型,執行於gfs 之上。它的設計思想在於將問題分而治之,首先將使用者的原始資料源進行分塊,然後分別交給不同的map任務去處理。
雲計算資源排程
資源排程是雲計算核心技術之一,它為雲計算平台提供資源分配、任務排程等資源管理功能。通常雲計算資源排程包括兩個層面:乙個是物理主機到虛擬機器層面的資源分配(對映);另乙個是任務到虛擬機器層面的排程(對映)。
8.3google雲計算原理
google雲計算關鍵技術
google雲計算平台的幾個關鍵技術
檔案儲存,google file system,gfs
並行資料處理mapreduce
結構化資料表bigtable
分布式鎖chubby
bigtable設計動機與目標
需要儲存的資料種類繁多:google目前向公眾開放的服務很多,需要處理的資料型別也非常多。包括url、網頁內容、使用者的個性化設定在內的資料都是google需要經常處理的
海量的服務請求:google執行著目前世界上最繁忙的系統,它每時每刻處理的客戶服務請求數量是普通的系統根本無法承受的
商用資料庫無法滿足google的需求:一方面現有商用資料庫設計著眼點在於通用性,根本無法滿足google的苛刻服務要求;另一方面對於底層系統的完全掌控會給後期的系統維護、公升級帶來極大的便利
8.4亞馬遜雲服務
亞馬遜雲平台儲存架構
aws提供一系列雲計算服務,無疑要建立在乙個強壯的基礎儲存架構之上,dynamo是amazon提供的一款高可用的分布式key-value儲存系統,具備去中心化,高可用性,高擴充套件性的特點
dynamo採用一致性雜湊來完成資料分割槽。在一致性雜湊中,雜湊函式的輸出範圍為乙個圓環,系統中每個節點對映到環中某個位置,而key也被hash到環中某個位置,key從其被對映的位置開始沿順時針方向找到第乙個位置比其大的節點作為其儲存節點
亞馬遜提供的雲計算服務
彈性計算雲ec2
簡單儲存服務s3
簡單資料庫服務****** db
簡單佇列服務sqs
彈性mapreduce服務
內容推送服務cloudfront
aws匯入/匯出
關聯式資料庫服務
簡單資料庫服務****** db
******db是經過優化的非關係型資料儲存,它可以消除繁重的資料庫管理員工作。web服務方式的資料項儲存和查詢請求,該服務自動建立和管理多份資料以確保資料的高可用率和穩定性。
**:新使用者可以每月免費獲得25機時(machine hour)和1gb儲存。之後的花費其參閱官網。
簡單佇列服務sqs
****** queue service(sqs,簡單佇列服務)是託管佇列,它增加了不同任務應用在分布式元件之間的工作流。sqs允許開發者移動資料,而不丟失資訊,每個請求的元件通常都保持可用狀態。
**:新使用者每月可獲得10萬sqs排隊請求。之後,使用者每1萬請求收取0.01美元。資料傳輸花費根據需求變化。
簡單佇列服務sqs
目標:解決低耦合系統間的通訊問題,支援分布式計算機系統之間的工作流
特點:簡單、無處不在
——「在網際網路的所有計算機不用安裝任何軟體或特殊防火牆配置就可以增加或讀訊息」
處理端:ec2上的ami
彈性mapreduce服務
elastic mapreduce(彈性mapreduce)允許企業和開發者或是其他人士處理大規模資料。使用執行在amazon ec2和s3的託管hadoop框架,使用者可以即刻利用隨心定製的計算力來完成資料密集型任務,諸如資料探勘或是科學**。
**:每小時0.015美元起,另外還需附加標準amazon ec2和amazon s3**。
雲計算與大資料 第八章
是分布式處理 並行處理和網格計算的發展,或者說是這些電腦科學概念的商業實現。是指基於網際網路的超級計算模式 即把原本儲存於個人電腦 移動裝置等個人裝置上的大量資訊集中在一起,在強大的伺服器端協同工作。它是一種新興的共享計算資源的方法,能夠將巨大的系統連線在一起,以提供各種計算服務。infrastru...
第八章 指標 第八章 指標
1 什麼是位址 include using namespace std int main 11 在堆中建立對像 我們既然可以在堆中儲存變數,那麼也就可以儲存對像,我們可以將對像儲存堆中,然後通過指標來訪問它 include using namespace std class human 14 在建構...
第八章 排序技術
排序共分為5大類,插入 交換 選擇 歸併 分配。他們的穩定性及平均時間效能如下圖 這是幾種排序演算法的簡單思想 1.直接插入排序 每一趟將乙個待排序的記錄,按其關鍵字的大小插入到已經排好序的一組記錄的適當位置上,直到所有待排序記錄全部插入為止。2.希爾排序 先取乙個小於n的整數d1作為第乙個增量,把...