分散式系統與雲端計算之概述
一、內容
-
- 分散式系統基礎
- 分散式系統特徵
- 系統模型
- 程序間通訊
- 間接通訊
- 分散式系統基礎
……
-
- 分散式系統泛型
- 分散式檔案系統
- 分散式計算系統
- 虛擬化與雲端計算
- 雲端計算
- 分散式系統泛型
二、分散式系統的目標
資源共享resource sharing
協同計算collaborative computing
三、什麼是分散式系統
A distributed system is defined as one in which components at networked computers communicate and coordinate(協作) their actions only by passing messages.
四、其他計算形式
1、平行計算
時間或空間並行,針對計算量的科學計算問題。
2、分散式計算
問題分解為若干小問題,分配給各個計算機再綜合起來
3、網格計算
是分散式計算的一種,強調資源共享。
4、雲端計算
是分散式計算、平行計算和網格計算的發展和商業實現。雲端計算不但包括分散式計算還包括分散式儲存和分散式快取。分散式儲存又包括分散式檔案儲存和分散式資料儲存。
5、普適計算(pervasice computing)
6、志願計算
五、分散式系統簡介
1、定義
一個其硬體或軟體元件分佈在連網的計算機上,元件之間通過訊息進行通訊或動作協調的系統
2、特點
·分佈性
·併發性(concurrence)
ACID(資料庫事務正確執行的四個基本要素的縮寫)
ACID,指資料庫事務正確執行的四個基本要素的縮寫。包含:原子性(Atomicity)、一致性(Consistency)、隔離性(Isolation)、永續性(Durability)。一個支援事務(Transaction)的資料庫,必須要具有這四種特性,否則在事務過程(Transaction processing)當中無法保證資料的正確性,交易過程極可能達不到交易方的要求。
·原子性:要麼全部完成,要麼全部不完成,執行錯誤會rollback
·一致性:如果事務是併發多個,系統也必須如同序列事務一樣操作。
·隔離性:這種屬性有時稱為序列化,為了防止事務操作間的混淆,必須序列化或序列化請求,使得在同一時間僅有一個請求用於同一資料。
·永續性:在事務完成以後,該事務對資料庫所作的更改便持久的儲存在資料庫之中,並不會被回滾。
CAP
指的是在一個分散式系統中,Consistency(一致性)、 Availability(可用性)、Partition tolerance(分割槽容錯性),三者不可兼得
·異構性
中介軟體、虛擬機器
·對等性
·沒有全域性時鐘(global clock)
·故障獨立性(independent failure)
·容錯性
冗餘配置(資訊冗餘、時間冗餘、物理冗餘)
3、目標goals
·resource sharing
·transparency透明度
·openness
·scalability可擴充套件
4、
SISD - Single Instruction, Single Data 單指令單資料
SIMD - Single Instruction, Multiple Data
MISD - Multiple Instruction, Single Data
MIMD - Multiple Instruction, Multiple Data
單指令流多資料流是一種採用一個控制器來控制多個處理器,同時對一組資料(又稱“資料向量”)中的每一個分別執行相同的操作從而實現空間上的並行性的技術。
5、
DOS:Distributed Operating Systems 分散式作業系統
inter-process communication(IPC)程序間通訊
NOS:Network Operating System 網路作業系統
Middleware System 中介軟體作業系統
3 types of middleware:
transaction oriented (for distributed database applications)面相事務
message oriented (for reliable asynchronous communication)面向訊息
remote procedure calls (RPC) – the original OO middleware遠端過程呼叫
Item |
Distributed OS |
|
Network OS |
Middleware-based OS |
|
Multiproc. |
Multicomp. |
|
|
Degree of transparency |
Very High |
High |
Low |
High |
Same OS on all nodes |
Yes |
Yes |
No |
No |
Number of copies of OS |
1 |
N |
N |
N |
Basis for communication |
Shared memory |
Messages |
Files |
Model specific |
Resource management |
Global, central |
Global, distributed |
Per node |
Per node |
Scalability |
No |
Moderately |
Yes |
Varies |
Openness |
Closed |
Closed |
Open |
Open |
6、type of communication
7、Model
·client-server
·Multi-tiered (client-server) Architectures (多層cs構架)
·……
六、分散式系統分類
-
- Distributed Computing Systems
- Cluster Computing Systems
- Grid Computing Systems
- Cloud Computing Systems
- Distributed Information Systems
- Transaction Processing Systems(交易處理系統)
- Enterprise Application Integration
- Distributed Pervasive Systems(分散式普適系統)
- Home Systems
- Electronic Health Care Systems
- Sensor Networks
- Distributed Computing Systems
1、Cluster Computing System
2、Grid Computing System
3、Cloud Computing System