1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài toán lập lịch phân bổ tài nguyên trong môi trường điện toán đám mây

87 514 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 87
Dung lượng 1,92 MB

Nội dung

Để đạt được hiệu quả tính toán và chi phí hiệu quả lập lịch công việc task và dữ liệu của ứng d ng trong điện toán đám mây, bộ lập lịch phải có các chiến lược thay đổi theo các hàm m c t

Trang 1

- NGUYỄN THỊ THÙY LIÊN

BÀI TOÁN LẬP LỊCH PHÂN BỔ TÀI NGUYÊN TRONG MÔI TRƯỜNG

ĐIỆN TOÁN ĐÁM MÂY

Chuyên ngành : Công nghệ thông tin

LUẬN VĂN THẠC SĨ KỸ THUẬT CÔNG NGHỆ THÔNG TIN

NGƯỜI HƯỚNG DẪN KHOA HỌC : PGS.TS Nguyễn Đức Nghĩa

Hà Nội – Năm 2014

Trang 2

LỜI CẢM ƠN

Trước tiên, em xin gửi lời cảm ơn sâu sắc đến PGS.TS Nguyễn Đức Nghĩa, người thầy đã giảng dạy và hướng dẫn em hoàn thành luận văn này Em xin bày tỏ lòng biết ơn sâu sắc đối với những chỉ bảo, định hướng nghiên cứu, hỗ trợ của thầy trong suốt quá trình em học tập và thực hiện đề tài

Em xin chân thành cảm ơn các thầy cô trong viện Công nghệ thông tin và truyền thông, Đại học Bách Khoa Hà Nội, đã nhiệt tình giảng dạy giúp em mở rộng kiến thức và đã tạo điều kiện tốt nhất cho em trong suốt quá trình học tập, nghiên cứu tại trường

Em xin chân thành cảm ơn TS Nguyễn Thế Lộc, thầy đã tạo điều kiện cho

em về thời gian nghiên cứu, làm việc ở bộ môn KTMT & Mạng – Khoa CNTT – ĐHSPHN để em tập trung học tập

Mặc dù đã hết sức nỗ lực và cố gắng, nhưng luận văn chắc chắn không tránh khỏi những thiếu sót, em mong nhận được sự thông cảm, góp ý và tận tình chỉ bảo của quý thầy cô và các bạn Một lần nữa xin gửi đến tất cả mọi người lời cảm ơn chân thành nhất!

Hà Nội, ngày 16 tháng 09 năm 2014

Nguyễn Thị Thùy Liên

Trang 3

MỤC LỤC

LỜI CẢM ƠN 2

MỤC LỤC 3

LỜI CAM ĐOAN 5

DANH MỤC THUẬT NGỮ - VIẾT TẮT 6

DANH MỤC HÌNH VẼ 7

DANH MỤC BẢNG 8

MỞ ĐẦU 9

CHƯƠNG I CÁC IẾN TH C CƠ BẢN 12

1.1 Đ thị 12

1.1.1 Định nghĩa 12

1.1.2 Phân loại 12

1.1.3 Đường đi và chu trình 13

1.1.4 Biểu điễn đ thị trên máy tính 14

1.2 Điện toán đám mây: 17

1.2.1 Khái niệm chung về điện toán đám mây 17

1.2.2 Kiến tr c hệ thống 19

1.2.3 Mô hình phát triển 20

1.2.4 Dịch v đám mây 21

1.2.5 Đặc điểm của điện toán đám mây 25

1.3 L thuyết về lập lịch 28

1.3.1 Giới thiệu về lập lịch 28

1.3.2 Lu ng công việc (Workflow) 30

1.3.3 Lập lịch cho lu ng công việc 36

CHƯƠNG BÀI TOÁN LẬP LỊCH VÀ PHÂN BỔ TÀI NGUYÊN TRONG MÔI TRƯỜNG ĐIỆN TOÁN ĐÁM MÂY 38

2.1 Vấn đề lập lịch và phân bổ tài nguyên đám mây 38

2.1.1 Lập lịch cho lu ng công việc trên đám mây 38

2.1.2 Phân bổ tài nguyên trong môi trường điện toán đám mây 41

Trang 4

2.2 Phát biểu bài toán lập lịch và phân bổ tài nguyên trong môi trường điện toán đám

mây (SRAP) 42

2.2.1 Phát biểu bài toán 42

2.2.2 Mô hình toán học 43

CHƯƠNG TỔNG QUAN VỀ CÁC THUẬT TOÁN GIẢI BÀI TOÁN 50

3.1 Thuật toán Random 50

3.2 Thuật toán Round Rubin 52

3.3 Thuật toán Minimum Completion Time 54

CHƯƠNG GIẢI THUẬT ĐỀ UẤT 57

4.1 Sơ đ tổng quát thuật toán tối ưu bầy đàn (Partical Swarm Optimizatio–PSO) 57

4.2 Giải thuật PSO giải bài toán lập lịch và phân bổ tài nguyên trên môi trường điện toán đám mây 61

4.2.1 Mã hóa cá thể 61

4.2.2 Khởi tạo quần thể 62

4.2.3 Hàm đo độ thích nghi 62

4.2.4 Hàm vận tốc 62

4.2.5 Cập nhật vị trí tốt nhất của cá thể và quần thể 63

4.2.6 Cập nhật vị trí của các cá thể theo từng vòng lặp 64

4.2.7 Giải thuật Heuristic dựa Particle Swarm Optimization (HPSO) 65

4.2.8 Giải thuật lập lịch Heuristic Particle Swarm Optimization* (HPSO*) 67

CHƯƠNG 5 CÀI ĐẶT VÀ THỬ NGHIỆM THUẬT TOÁN ĐỀ UẤT 69

5.1 Lựa chọn môi trường phát triển hệ thống – công c CloudSim 69

5.2 Dữ liệu thử nghiệm 76

5.3 Kết quả thử nghiệm 79

5.4 Đánh giá kết quả thử nghiệm 81

ẾT LUẬN 84

TÀI LIỆU THAM HẢO 85

Trang 5

LỜI CAM ĐOAN

Tôi xin cam đoan rằng luận văn Thạc sĩ “Bài toán lập lịch phân bổ tài nguyên trong môi trường điện toán đám mây”, chuyên ngành Công nghệ thông tin là công trình của cá nhân tôi

Nội dung trong luận văn là tổng hợp của quá trình nghiên cứu từ nhiều ngu n tài liệu đã được tôi đọc hiểu và trình bày lại, những tài liệu được sử d ng đã được ghi rõ xuất xứ ngu n trích dẫn Số liệu kết quả nghiên cứu trong luận văn này là trung thực

Tôi xin hoàn toàn chịu trách nhiệm và chịu hình thức kỷ luật theo quy định cho lời cam đoan này

Ngày 16 tháng 9 năm 2014

Tác giả luận văn

Nguyễn Thị Thùy Liên

Trang 6

DANH MỤC THUẬT NGỮ - VIẾT TẮT

1 DAG Directed Acyclic Graph Đ thị không chứa chu

trình

2 SaaS Software as a Service

3 PaaS Platform as a Service

4 IaaS Infrastructure as a Service

5 PSO Partical Swarm Optimization Tối ưu bầy đàn

6 SRAP Scheduling and Resource

Allocation Problem

7 HPSO Heuristic based Particle

Swarm Optimization

Lập lịch động dựa trên tối ưu bầy đàn

8 MI Million Instructions

9 MIPS Million Instructions Per

Second

10 BPEL4WS Business Process Execution

Language for Web Services

11 WSFL Web Services Flow

Trang 7

DANH MỤC HÌNH VẼ

Hình 1: Ví d phân loại đ thị 13

Hình 2: Ví d về đường đi và chu trình 13

Hình 3: Biểu diễn đ thị theo ma trận kề 14

Hình 4: Biểu diễn đ thị theo danh sách cạnh 15

Hình 5: Biểu diễn đ thị theo danh sách móc nối 17

Hình 6: Mô hình cơ bản về điện toán đám mây 19

Hình 7: Kiến tr c hệ thống[4] 19

Hình 8: Các mô hình phát triển điện toán đám mây 21

Hình 9: Phân loại các dịch v đám mây 22

Hình 10: Phân loại dịch v đám mây[4] 24

Hình 11: NIST Visual Model of Cloud Computing Definition[6] 26

Hình 12: Nhiều khách hàng dùng chung tài nguyên 27

Hình 13: Mô hình lu ng công việc[8] 30

Hình 14: Mô hình lu ng công việc sử d ng đ thị DAG - Workflow 31

Hình 15: Chuyển đổi cho một lu ng công việc đơn giản 32

Hình 16: Loại bỏ vòng lặp cho lu ng công việc 32

Hình 17: Lu ng công việc với bốn cấp độ 33

Hình 18: Ví d về lu ng công việc với kích thước tác v kèm theo 33

Hình 19: Lu ng công việc 1[18] 46

Hình 20: Thuật toán Random 51

Hình 21: Thuật toán Round Rubin 53

Hình 22: Thuật toán Minimum Completion Time 55

Hình 23: Sơ đ di chuyển của một cá thể i trong PSO, di chuyển teo hướng tốt nhất toàn c c Gbest và tốt nhất hiện nay Pbesti cho mỗi cá thể i 58

Hình 24: Giải thuật PSO 59

Hình 25: Lưu đ giải thuật PSO 60

Hình 26: Giải thuật Scheduling heuristic 65

Hình 27: Giải thuật PSO 66

Hình 28: Giải thuật PSO* 67

Hình 29: Kiến tr c CloudSim theo tầng[19] 72

Hình 30: Thiết kế sơ đ lớp của CloudSim[19] 73

Hình 31: Lu ng công việc 2 77

Hình 32: Nội dung dữ liệu đơợc lưu trữ của tệp inputtask.txt cho lu ng công việc 2 77

Hình 33: Nội dung dữ liệu lưu trữ của tệp inputhost.txt cho lu ng công việc 2 78

Hình 34: Nội d ng dữ liệu lưu trữ của tệp tin communication_cost.txt cho lu ng công việc 2 79

Hình 35: So sánh tổng chi phí giữa các giải thuật PSO, HPSO và HPSO* 83

Trang 8

DANH MỤC BẢNG

Bảng 1: Một số phương án khả thi cho lu ng công việc 1 48 Bảng 2: Bảng chuyển đổi từ giá trị liên t c sang giá trị rời rạc theo quy tắc làm tròn

số 64 Bảng 3: Tổng hợp kết quả thử nghiệm trên các bộ dữ liệu 80 Bảng 4: Bảng so sánh chi phí thử nghiệm giữa các giải thuật HPSO so với PSO, HPSO* so với PSO và HPSO* so với HPSO trên các bộ dữ liệu (đơn vị %) 82

Trang 9

MỞ ĐẦU

Ngày nay, các ứng d ng được xây dựng để quản lý và xử lý dữ liệu lớn trên các tài nguyên phân tán ngày càng phức tạp, điều này đòi hỏi phải giải quyết và thực hiện các lu ng công việc phức tạp hơn Những lu ng công việc này thường phải xử lý dữ liệu lớn và các hoạt động tính toán chuyên sâu, hệ thống quản lý cần được che dấu các chi tiết khi thực hiện thực thi lu ng công việc trên các tài nguyên phân tán

Điện toán đám mây (cloud computing) là mô hình mới cho lĩnh vực tính toán phân tán, cung cấp hạ tầng, nền tảng và các ứng d ng như là các dịch v Các dịch

v được tạo sẵn và ph c v khách hàng theo phương thức trả phí cho những gì khách hàng sử d ng Ngoài ra mô hình đám mây gi p cung cấp linh hoạt tài nguyên tính toán dựa theo yêu cầu, lựa chọn vị trí lưu trữ dữ liệu trên toàn cầu Để đạt được hiệu quả tính toán và chi phí hiệu quả lập lịch công việc (task) và dữ liệu của ứng

d ng trong điện toán đám mây, bộ lập lịch phải có các chiến lược thay đổi theo các hàm m c tiêu khác nhau: tối thiểu tổng thời gian thực thi, tối thiểu tổng chi phí thực

thi, cân bằng tải trên các tài nguyên … Vì vậy tác giả đã lựa chọn đề tài “Bài toán

lập lịch phân bổ tài nguyên trong môi trường điện toán đám mây” để nghiên cứu

trong luận văn này

Luận văn tập trung vào chiến lược giảm thiểu hóa tổng chi phí thực thi của ứng d ng trên các tài nguyên được cung cấp bởi nhà cung cấp dịch v đám mây như Amazon và GoGrid bằng cách sử d ng thuật toán lập lịch động dựa trên giải thuật tối ưu bầy đàn (Partical Swarm Optimization –PSO)

Tối ưu bầy đàn (PSO) là một kỹ thuật tối ưu dựa theo mô hình hành vi xã hội

ở động vật hoặc côn trùng được giới thiệu vào năm 1995 tại một hội nghị của IEEE bởi James Kenedy và kỹ sư Russell C.Eberhart[2] Thuật toán bầy đàn có thể có một số điểm tương đ ng với giải thuật di truyền và giải thuật đàn kiến nhưng không

có sự tổ hợp lại các tác nhân trong quần thể mà dựa trên ứng xử xã hội của quần thể

Trang 10

Trong mỗi thế hệ, mỗi cá thể tự điều chỉnh quỹ đạo dựa trên vị trí tốt nhất của nó và

vị trí tốt nhất của quần thể Qua đó làm tăng tính tự nhiên của các cá thể và nhanh chóng đạt tới giá trị tối ưu toàn c c với phương án tối ưu

Những kết quả chính của luận văn là:

 Xây dựng một mô hình phân bổ công việc (task) trên tập tài nguyên (resource) tức là phân bổ các công việc với các tài nguyên tính toán để

xử lý sao cho chi phí thực thi là tối thiểu

 Đề xuất một giải thuật lập lịch heuristic dựa trên PSO và biến thể để giải quyết vấn đề phân bổ công việc – tài nguyên dựa trên mô hình đề xuất

 Tiến hành kiểm chứng thuật toán đề xuất bằng thực nghiệm

Luận văn có cấu trúc g m 5 chương như sau:

 Chương 1: Các kiến thức cơ bản : Trình bày tổng quan các kiến thức cơ bản

về đ thị, kiến trúc mô hình hình phát triển của điện toán đám mây và lý thuyết về lập lịch

 Chương 2: Bài toán lập lịch và phân bổ tài nguyên trong môi trường điện toán đám mây(SRAP): Trình bày tổng quan vấn đề lập lịch và phân bổ tài nguyên trong môi trường điện toán đám mây từ đó phát biểu bài toán SRAP

 Chương 3: Tổng quan về các thuật toán giải bài toán : Trình bày một số thuật toán đã và đang được ứng d ng để giải quyết bài toán lập lịch và phân bổ tài nguyên trong môi trường điện toán đám mây

 Chương 4: Giải thuật đề xuất: Trình bày các khái niệm và tổng quan về phương pháp tối ưu bầy đàn PSO và cách thức xây dựng giải thuật PSO, giải thuật lập lịch động dựa PSO để giải bài toán lập lịch và phân bổ tài nguyên trong môi trường điện toán đám mây

Trang 11

 Chương 5: Cài đặt và thử nghiệm thuật toán đề xuất: Trình bày môi trường cài đặt quá trình tiến hành và bảng số liệu thử nghiệm cùng với phân tích tổng kết kết quả thử nghiệm

Trang 12

CHƯƠNG I CÁC IẾN TH C CƠ BẢN

Trang 13

Hình 2: Ví dụ về đường đi và chu trình

 Chu trình: Đường đi có đỉnh đầu và đỉnh cuối trùng nhau được gọi là chu trình

Trang 14

Đường đi (hay chu trình) được gọi là đơn nếu nó không đi qua một cạnh nào quá 1 lần

Ví d : trong hình trên chu trình (1,2,6,3,1) là chu trình đơn (2,6,4,3,6,2) không phải là chu trình đơn

1.1.4 Biểu điễn đ thị trên máy tính

Một số cách để biểu diễn đ thị trên máy tính:

 Ma trận liền kề (ma trận kề)

Giả sử G = (V, E) là một đơn đ thị có số đỉnh (ký hiệu |V|) là n, Không mất tính tổng quát cóthể coi các đỉnh được đánh số 1, 2, , n Khi đó ta có thể biểu diễn đ thị bằng một ma trận vuông

A = [aij] cấp n Trong đó:

• aij = 1 nếu (i, j) ∈ E

• aij = 0 nếu (i, j) ∉ E

• Quy ước aii = 0 với ∀i;

Hình 3: Biểu diễn đồ thị theo ma trận kề

Trang 15

 Danh sách cạnh

Trong trường hợp đ thị có n đỉnh, m cạnh, ta có thể biểu diễn đ thị dưới dạng danh sách cạnh,trong cách biểu diễn này, người ta liệt kê tất cả các cạnh của đ thị trong một danh sách, mỗi phầntử của danh sách là một cặp (u, v) tương ứng với một cạnh của đ thị (Trong trường hợp đ thị cóhướng thì mỗi cặp (u, v) tương ứng với một cung, u là đỉnh đầu và v là đỉnh cuối của cung) Danhsách được lưu trong bộ nhớ dưới dạng mảng hoặc danh sách móc nối Ví d với đ thị dưới đây:

Hình 4 : Biểu diễn đồ thị theo danh sách cạnh

Ưu điểm của danh sách cạnh:

• Trong trường hợp đ thị thưa (có số cạnh tương đối nhỏ: chẳng hạn m<6n), cách biểu diễnbằng danh sách cạnh sẽ tiết kiệm được không gian lưu trữ, bởi nó chỉ cần 2m ô nhớ để lưu danhsách cạnh

• Trong một số trường hợp, ta phải xét tất cả các cạnh của đ thị thì cài đặt trên danh sách cạnhlàm cho việc duyệt các cạnh dễ dàng hơn (Thuật toán Kruskal chẳng hạn)

Nhược điểm của danh sách cạnh:

• Nhược điểm cơ bản của danh sách cạnh là khi ta cần duyệt tất cả các đỉnh

kề với đỉnh v nào đócủa đ thị, thì chẳng có cách nào khác là phải duyệt tất

Trang 16

cả các cạnh, lọc ra những cạnh có chứađỉnh v và xét đỉnh còn lại Điều đó khá tốn thời gian trong trường hợp đ thị dày (nhiều cạnh)

 Danh sách kề

Để khắc ph c nhược điểm của các phương pháp ma trận kề và danh sách cạnh, người ta đề xuấtphương pháp biểu diễn đ thị bằng danh sách kề Trong cách biểu diễn này, với mỗi đỉnh v của đ thị, ta cho tương ứng với nó một danh sách các đỉnh

kề với v.Với đ thị G = (V, E) V g m n đỉnh và E g m m cạnh Có hai cách cài đặt danh sách kề phổ biến:

 Cách 1: (Forward Star) Dùng một mảng các đỉnh, mảng đó chia làm n đoạn, đoạn thứ i trong mảnglưu danh sách các đỉnh kề với đỉnh i: Ví d với đ thị sau, danh sách kề sẽ là một mảng A g m 12phần tử:

Để biết một đoạn nằm từ chỉ số nào đến chỉ số nào, ta có một mảng lưu vị trí riêng Ta gọi mảng lưuvị trí đó là mảng Head Head[i] sẽ bằng chỉ số đứng liền trước đoạn thứ i Quy ước Head[n + 1] sẽbằng m Với đ thị bên thì mảng VT[1 6] sẽ là: (0, 3, 5, 8, 10, 12)Như vậy đoạn từ vị trí Head[i] + 1 đến Head[i + 1] trong mảng A sẽ chứa các đỉnh kề với đỉnh i.Lưu rằng với đ thị có hướng g m m cung thì cấu trúc Forward Star cần phải

đủ chứa m phần tử,với đ thị vô hướng m cạnh thì cấu trúc Forward Star cần phải đủ chứa 2m phần tử

Trang 17

 Cách 2: Dùng các danh sách móc nối: Với mỗi đỉnh i của đ thị, ta cho tương ứng với nó một danhsách móc nối các đỉnh kề với i, có nghĩa là tương ứng với một đỉnh i, ta phải lưu lại List[i] là chốtcủa một danh sách móc nối Ví d với đ thị trên, danh sách móc nối sẽ là:

Hình 5: Biểu diễn đồ thị theo danh sách móc nối

Ưu điểm của danh sách kề:

• Đối với danh sách kề, việc duyệt tất cả các đỉnh kề với một đỉnh v cho trước là hết sức dễ dàng,cái tên "danh sách kề" đã cho thấy rõ điều này Việc duyệt tất cả các cạnh cũng đơn giản vì mộtcạnh thực ra

là nối một đỉnh với một đỉnh khác kề nó

Nhược điểm của danh sách kề

• Về lý thuyết, so với hai phương pháp biểu diễn trên, danh sách kề tốt hơn hẳn Chỉ có điều,trong trường hợp c thể mà ma trận kề hay danh sách cạnh không thể hiện nhược điểm thì tanên dùng ma trận kề (hay danh sách cạnh) bởi cài đặt danh sách kề có phần dài dòng hơn

1.2 Điện n đ y:

1.2.1 i niệ c ung về điện n đ y

Từ năm 2007, khái niệm Đám mây (cloud) trở nên là một trong những từ khóa được nhắc đến nhiều nhất trong lĩnh vực công nghệ thông tin Rất nhiều nghiên cứu đã cố gắng định nghĩa Điện toán đám mây (Cloud computing) nhưng không có một định nghĩa nào được coi là chính xác nhất Dưới đây là một số định

nghĩa [4]:

Trang 18

o I.Foster [2]: “A large-scale distributed computing paradigm that is driven

by economies of scale, in which a pool of abstracted virtualized, dynamically-scalable, managed computing power, storage, platform, and

services are delivered on demand to external customers over Internet”- Một

mô hình điện toán phân tán với quy mô lớn được chi phối bởi quy mô kinh

tế với vùng dùng chung được ảo hóa, khả năng tự động, quản lý công suất tính toán, lưu trữ, nên tảng và các dịch vụ được cung cấp theo yêu cầu của

người dùng qua Internet

o Gartner[1]: “A style of computing where scalable and elastic It capabilities are provided as a service to multiple external customers using Internet

technologies” – Một hình thức tính toán mà có khả năng mở rộng và co giãn được cung cấp như một dịch vụ cho nhiều khác hàng bên ngoài thông qua

sử dụng công nghệ Internet

o NIST[3]: “cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resouces (e.g network, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service

provider interaction” – Điện toán đám mây là mô hình cho phép truy cập theo nhu cầu, thuận tiện, chi sẻ tài nguyên tính toán được thiêt lập (ví dụ như mạng, máy chủ, lưu trữ dữ liệu, các ứng dụng và dịch vụ) có thể được cung cấp và đáp ứng với sự cố gắng giảm thiểu quản lý hoặc sự tương tác

với nhà cung cấp dịch vụ

Có thể hiểu điện toán đám mây là mô hình sử d ng các tài nguyên tính toán dựa trên internet để cung cấp theo nhu cầu có khả năng thay đổi cho người sử d ng Người sử d ng chỉ phải trả chi phí cho mức độ sử d ng của mình qua đó nhà cung cấp tận d ng được tối đa tài nguyên hiện có đ ng thời tiết kiệm chi phí đầu tư cơ sở

hạ tầng ban đầu cho người sử d ng, ngoài ra người sử d ng còn có thể linh hoạt hơn khi mở rộng hay thu hẹp phạm vi hoạt động, tập trung vào m c đích chính là các hoạt động sản xuất kinh doanh

Trang 19

Ví d đơn giản về điện toán đám mây chính là các ứng d ng web như Gmail, Google Calender, Hotmail, SaleForce, Dropbox và Google Docs đều dựa trên Cloud computing bởi vì khi kết nối tới các dịch v đó người dùng đã được truy cập vào những c m máy chủ đ sộ thống nhất trên internet

Hình 6: Mô hình cơ bản về điện toán đám mây

1.2.2 iến r c ệ ống

Đám mây thường được đề cập đến như là một hệ thống lớn kết hợp giữa tài nguyên lưu trữ và tính toán cho phép truy cập thông qua giao thức chu n với một giao diện trừu tượng (abstract interface) [4] Kiến tr c hệ thống với 4 tầng của điện toán đám mây như hình 7 :

Application Layer

Platform Layer Unified Resource Layer Fabric Layer

Trang 20

a ric Lay r – Tầng ạ ầng chứa các tài nguyên phần cứng như các máy

tính, thiết bị lưu trữ, và các thiết bị mạng

Uni i R urc Lay r – Tầng ài nguy n đ ng n ấ Tại tầng này các tài

nguyên được ảo hóa gi p tương tác với các tầng trên và người dùng cuối như

là các tài nguyên tích hợp

P a r Lay r –Tầng nền: chứa các công c đặc biệt, middleware và dịch

v cho các tầng trên, thống nhất tài nguyên để cung cấp nền tảng phát triển

 Application Laeyer – Tầng ứng dụng: chứa các ứng d ng sẽ chạy trên đám mây

1.2.3 M ìn riển

Môi trường điện toán đám mây được xây dựng dựa trên các mô hình[4]:

o Public cloud: Đám mây công cộng là mô hình điện toán đám mây tiêu chu n

(truyền thống), trong đó một nhà cung cấp dịch v cung cấp các tài nguyên trên Internet, chẳng hạn như các ứng d ng và lưu trữ Các nhà cung cấp sẽ tính phí dịch v theo mô hình pay-per-use Một số ví d public cloud: Amazon Elastic Compute Cloud (EC2), IBM Blue Cloud, Sun Cloud, Google AppEngine và Window Azure Services Platform

o Private Cloud: Đám mây riêng mô tả một kiến tr c máy tính độc quyền

cung cấp dịch v cho một số lượng hạn chế người sử d ng trên mạng nội bộ

Mô hình này phù hợp với các tổ chức cần kiểm soát chính xác dữ liệu nhưng lại có khả năng mở rộng lớn và khắc ph c được nhược điểm của mô hình đám mây công cộng về lưu lượng, an ninh với một khoản chi phí định kỳ phải trả cho nhà cung cấp dịch v Cả eBay và HP CloudStart đều phát triển dựa trên private cloud

o Hybrid Cloud (or Virtual Cloud): Đám mây lai sử d ng kết hợp giữa đám

mây công cộng và đám mây riêng và cơ sở hạ tầng mạng, đây là mô hình điển hình cho nhiều nhà cung cấp dịch v

Trang 21

Hình 8: Các mô hình phát triển điện toán đám mây

o Community Cloud: Đám mây cộng đồng (khá giống với Lưới – Grid) Đây

là mô hình một số tổ chức trong một cơ sở hạ tầng cộng đ ng liên kết với nhau chia s đám mây riêng Các tổ chức này thường có cùng mối quan tâm

về nhiện v , yêu cầu an ninh, chính sách và các cân nhắc cần phải tuân thủ Các đám mây cộng đ ng có thể tiếp thực tích hợp với đám mây công cộng để xây dựng một cấu tr c cross-boundary (cấu tr c vượt qua biên)

1.2.4 Dịc vụ đ y

Điện toán đám mây là việc phân phối sự tính toán như là một dịch v hơn là một sản ph m, theo đó các tài nguyên được chia s , phần mềm và thông tin được cung cấp cho người sử d ng qua mạng Những nhà cung cấp dịch v điện toán đám mây cung cấp ứng d ng thông qua internet, các ứng d ng được truy cập từ trình duyệt web, trong khi các phần mềm kinh doanh và dữ liệu được lưu trữ trên các máy chủ tại một địa điểm từ xa

Điện toán đám mây cung cấp các dịch v cơ bản với 3 cấp độ: phần mềm, nền tảng và cơ sở hạ tầng:

Trang 22

Hình 9: Phân loại các dịch vụ đám mây

o Software as a Service (SaaS): Software as a Service [4] là một mô hình cung

cấp phần mềm cho phép các ứng d ng truy cập qua mạng thông qua các giao thức đơn giản như các trình duyệt web Người sử d ng không cần quan tâm đến các cơ sở hạ tầng bên dưới như mạng, máy chủ, hệ điều hành, thiết bị lưu trữ, thiết bị nền…Mô hình này cũng gi p loại bỏ nhu cầu cài đặt và chạy các ứng

d ng trên các máy tính cá nhân

Thuật ngữ SaaS được phổ biến rộng rãi bởi Salesforce.com Một trong những ứng d ng nổi tiếng nhất được biết đến sử d ng dịch v này là Quản l quan hệ khách hàng CRM Ngày nay SaaS đã trở thành mô hình phổ biến cho hầu hết các ứng d ng kinh doanh, kế toán, quản l …Các ứng d ng như mạng xã hội, phần mềm văn phòng, các trò chơi trực tuyến sử d ng dịch v dựa trên SaaS như: web Mail, Google Docs, NetSuit, Game MMOS, Facebook…

o Platform as a Service (PaaS): Platform as a Service[4] là một mô hình cung

cấp môi trường tích hợp cao cấp cho phép xây dựng, thử nghiệm, triển khai và cho phép khách hàng tự tạo máy chủ hoặc mua lại các ứng d ng Khách hàng của PaaS không quản l cơ sở hạ tầng bên dưới nhưng kiểm soát các ứng d ng

Trang 23

triển khai và cấu hình môi trường host của mình PaaS chủ yếu nhằm m c đích tạo điều kiện thuận lợi phát triển ứng d ng và các vấn đề quản l liên quan Một

số được dự định cung cấp môi trường phát triển tổng quát còn một số cung cấp dịch v mức độ lưu trữ như an ninh bảo mật và khả năng mở rộng theo nhu cầu

Ví d Google AppEngine, Window Azure, Engine Yard…

o Infrastructure as a Service (IaaS): Infrastructure as a Service[4] cung cấp

năng lực xử l , lưu trữ, thiết bị mạng và các tài nguyên máy tính cơ bản khác cho người sử d ng Người sử d ng IaaS có thể triển khai các ứng d ng, phần mềm, hệ điều hành tùy trên cơ sở hạ tầng với khả năng mở rộng hoặc thu hẹp quy mô một cách tự động Người sử d ng IaaS gửi các chương trình và dữ liệu

có liên quan, trong khi các máy tính của nhà cung cấp thực hiện công việc xử l tính toán và trả về kết quả Cơ sở hạ tầng được ảo hóa, linh hoạt, có khả năng

mở rộng và quản l để đáp ứng nhu cầu của người sử d ng Ví d : amazon EC2, VPC, IBM Blue Cloud…

Dịch v dữ liệu cho phép người sử d ng truy cập dữ liệu từ xa dưới nhiều định dạng khác nhau và nhiều ngu n khác nhau Những dữ liệu từ xa này vẫn hoạt động giống như trên một đĩa cứng Amazon S3, SimpleDB, SQS và mircosoft SQL là những sản ph m dịch v dữ liệu dạng này

Hình 10 cho thấy mối quan hệ giữa người sử d ng đám mây, các dịch v đám mây và nhà cung cấp dịch v đám mây

Khách hàng được trang bị với các thiết bị cơ bản: Internet và trình duyệt web có thể trực tiếp sử d ng các tài nguyên phần mềm, nền tảng, lưu trữ và năng lực tính toán Dịch v đám mây có thể chia s bất kỳ một trong các lớp dịch v khi một giao thức kết nối Internet được thiết lập Ví d PaaS sử d ng dịch v IaaS cung cấp và

đ ng thời cung cấp dịch v cho SaaS Ở phía dưới, trung tâm dữ liệu bao g m phần cứng máy tính, các sản ph m phần mềm như hệ điều hành đặc biệt dành cho đám mây, bộ vi xử l đa l i, mạng, đĩa cứng…

Trang 24

Hình 10: Phân loại dịch vụ đám mây[4]

Điện toán đám mây (cloud computing) đề cập đến sự phát triển dựa trên Internet và sử d ng công nghệ máy tính, và do đó, điện toán đám mây có thể được

mô tả như là một mô hình tính toán dựa trên Internet Trên thực tế, nó là một cách thức gi p cho khả năng tự mở rộng (và chủ yếu là ảo hóa) các ngu n lực được cung cấp như là một dịch v trên Internet Khái niệm đằng sau điện toán đám mây kết hợp Software-as-a-Service(SaaS), Platform-as-a-Service(PaaS) and Infrastructure-as-a-Service(IaaS) Ngày nay vượt qua thách thức về kinh tế, việc hướng tới giảm chi phí hoạt động, lợi thế máy tính xanh, cùng với sự tin cậy cao hơn, linh hoạt và khả năng mở rộng các dịch v ứng d ng làm điện toán đám may trở thành một công nghệ được săn đón Điện toán đám mây được định nghĩa bởi tổ chức tiêu chu n

Trang 25

công nghệ quốc tế như sau: “Điện toán đám mây là một mô hình cho phép thuận tiện chi s tài nghuyên cấu hình máy tính qua truy cập mạng (ví d như : mạng, máy chủ, lưu trữ, các ứng d ng và dịch v ) có thể nhanh chóng cung cấp và phát hành với nỗ lực quản l hoặc dịch v tối thiểu nhà cung cấp dịch v tương tác.”

Trong thực tế quản l hoạt động và lập kế hoạch các khả năng tình huống, những gì làm việc trong một trung tâm dữ liệu IT không làm việc trong môi trường đám mây Trong khi các trung tâm dữ liệu IT tập trung vào CPU, bộ nhớ, vào ra, và ứng d ng mạng và các dữ liệu, sự phân tán, môi trường đám mây luôn thay đổi phán ánh khả năng cô lập các số liệu “vấn đề khả năng và hiệu suất” là gần như không thể Đối số thực hiện là sự tập trung vào các giao dịch ứng d ng kinh doanh (các nhiệm v của doanh nghiệp) là cách duy nhất để thực thiện định lượng hiệu suất hoạt động (hoặc thiết lập một đường hiệu suất) trong môi trường điện toán đám mây Việc tập trung vào các giao dịch kinh doanh và xa hơn cho phép đánh giá khả năng mở rộng của cài đặt ứng d ng Việc truy vết các giao dịch kinh doanh thiết lập đường mã code mà các ứng d ng đang dùng thông qua môi trường tài nguyên đám mây Các dấu vết có thể tiếp t c được sử d ng để thiết lập cấu hình khối lượng công việc và được sử d ng để hiệu chỉnh và xác nhận bất kỳ mô hình ứng d ng điện toán đám mây tiềm năng Hơn nữa, chuyển nhượng ngân sách hiệu suất thực thế cho các doanh nghiệp cá nhân cho phép xác định số lượng cá yêu cầu hiệu suất ứng d ng tổng hợp (QoS) và xác định (tiềm năng) thực hiện chung trongkhi chạy trong môi trường điện toán đám mây được thiết lập

1.2.5 Đặc điểm của điện n đ y

Cloud Computing có năm tính chất nổi bật so với mô hình truyền thống[6]

o Tự phục vụ theo nhu cầu (On-demand self-service)

Mỗi khi có nhu cầu, người dùng chỉ cần gửi yêu cầu thông qua trang web cung cấp dịch v , hệ thống của nhà cung cấp sẽ đáp ứng yêu cầu của người dùng Người dùng có thể tự ph c v yêu cầu của mình như tăng thời gian sử d ng server,

Trang 26

tăng dung lượng lưu trữ… mà không cần phải tương tác trực tiếp với nhà cung cấp dịch v , mọi nhu cầu về dịch v đều được xử l trên môi trường web (internet)

Hình 11: NIST Visual Model of Cloud Computing Definition[6]

o Truy xuất diện rộng (Broad network access)

Cloud Computing cung cấp các dịch v thông qua môi trường internet Do

đó, người dùng có kết nối internet là có thể sử d ng dịch v Hơn nữa, Cloud Computing ở dạng dịch v nên không đòi hỏi khả năng xử lý cao ở phía client, vì vậy người dùng có thể truy xuất bằng các thiết bị di dộng như điện thoại, PDA, laptop… Với Cloud Computing người dùng không còn bị ph thuộc vị trí nữa, họ

có thể truy xuất dịch v từ bất kỳ nơi nào, vào bất kỳ lúc nào có kết nối internet

o Dùng chung tài nguyên (Resource pooling)

Tài nguyên của nhà cung cấp dịch v được dùng chung, ph c v cho nhiều người dùng dựa trên mô hình “multi-tenancy” Trong mô hình “multi-tenancy”, tài nguyên sẽ được phân phát động tùy theo nhu cầu của người dùng Khi nhu cầu của một khách hàng giảm xuống, thì phần tài nguyên dư thừa sẽ được tận d ng để ph c

v cho một khách hàng khác Ví d như khách hàng A thuê 10 CPU mỗi ngày từ 7

Trang 27

giờ đến 11 giờ, một khách hàng B thuê 10 CPU tương tự mỗi ngày từ 13 giờ đến 17 giờ thì hai khách hàng này có thể dùng chung 10 CPU đó

Hình 12: Nhiều khách hàng dùng chung tài nguyên

Cloud Computing dựa trên công nghệ ảo hóa, nên các tài nguyên da phần là tài nguyên ảo Các tài nguyên ảo này sẽ được cấp phát động theo sự thay đổi nhu cầu của từng khách hàng khác nhau Nhờ đó nhà cung cấp dịch v có thể ph c v nhiều khách hàng hơn so với cách cấp phát tài nguyên tĩnh truyền thống

o Khả năng c giãn (Rapid elasticity)

Đây là tích chất đặc biệt nhất, nổi bật nhất và quan trọng nhất của Cloud Computing Đó là khả năng tự động mở rộng hoặc thu nhỏ hệ thống tùy theo nhu cầu của người dùng Khi nhu cầu tăng cao, hệ thống sẽ tự mở rộng bằng cách thêm tài nguyên vào Khi nhu cầu giảm xuống, hệ thống sẽ tự giảm bớt tài nguyên

Ví d : khách hàng thuê một Server g m 10 CPU Thông thường do có ít truy cập nên chỉ cần 5 CPU là đủ, khi đó hệ thống quản lý của nhà cung cấp dịch v sẽ

Trang 28

tự ngắt bớt 5 CPU dư thừa, khách hàng không phải trả phí cho những CPU dư thừa này (những CPU này sẽ được cấp phát cho các khách hàng khác có nhu cầu) Khi lượng truy cập tăng cao, nhu cầu tăng lên thì hệ thống quản lý của nhà cung cấp dịch v sẽ tự “gắn” thêm CPU vào, nếu nhu cầu tăng vượt quá 10 CPU thì khách hàng phải trả phí cho phần vượt mức theo thỏa thuận với nhà cung cấp

Khả năng co giãn gi p cho nhà cung cấp sử d ng tài nguyên hiệu quả, tận

d ng triệt để tài nguyên dư thừa, ph c v được nhiều khách hàng Đối với người sử

d ng dịch v , khả năng co giãn gi p họ giảm chi phí do họ chỉ trả phí cho những tài nguyên thực sự dùng

o Điều tiết dịch vụ (Measured service)

Hệ thống Cloud Computing tự động kiểm soát và tối ưu hóa việc sử d ng tài nguyên (dung lượng lưu trữ, đơn vị xử l , băng thông…) Lượng tài nguyên sử

d ng có thể được theo dõi, kiểm soát và báo cáo một cách minh bạch cho cả hai phía nhà cung cấp dịch v và người sử d ng

1.3 Lý thuyết về ậ ịc

1.3.1 Giới thiệu về lập lịch

Lập lịch (scheduling) là vấn đề phát sinh trong rất nhiều lĩnh vực[4] Vấn đề lập lịch có thể hiểu là xác định một tập hợp các hoạt động để chia s tài nguyên có giới hạn và cần được xử lý với nhiều hạn chế (chủ yếu là thời gian và ngu n lực)

Theo các định nghĩa của Fox(1994) thì lập lịch là việc “phân chia các ngu n tài nguyên cho mỗi hoạt động, để các tác v tuân theo những hạn chế về thời gian

và giới hạn của tập tài nguyên được chia s ”

Những nghiên cứu đầu tiên về bài toán lập lịch được thực hiện vào giữa nhưng năm 50 Từ đó hàng ngàn bài viết khác nhau về vấn đề lập lịch đã xuất hiện Phần lớn các bài này thuộc loại giả định thời gian (chi phí) hoặc một phần của thời gian xử lý công việc (chi phí) là không đáng kể Việc giả định này đơn giản hóa việc phân tích và phản ánh một số ứng d ng nhất định vì thế nó ảnh hưởng xấu đến

Trang 29

chất lượng giải pháp của nhiều ứng d ng lập lịch Từ đó đòi hỏi một phương pháp nghiên cứu rõ ràng về thời gian cài đặt

Thực tế thì có thể không t n tại một giải pháp lịch biểu đáp ứng tất cả các hạn chế về thời gian và ngu n lực, nhất là khi việc sử d ng tài nguyên lại gắn liền với nhiều yêu cầu ràng buộc khác nhau Bên cạnh đó, nhiều ứng d ng lập lịch được thực hiện một cách thủ công, việc tự động sẽ tăng tốc độ lập lịch và cải thiện chất lượng của phương án lịch biểu Ví d một lịch biểu đã được tạo cho một khách hàng nhưng sau đó khách hàng này lại thay đổi một số yêu cầu so với ban đầu Lúc này một công c lập lịch tự động sẽ đưa ra giải pháp nhanh chóng hơn lập lịch bằng tay

Khi giải quyết bất cứ một vấn đề lập lịch nào đều cần phải trả lời hai câu hỏi: yêu cầu tiến độ của việc lập lịch, thời gian bắt đầu và tài nguyên dành cho chúng Sự cần thiết phải lập lịch tự động trở nên cần thiết áp d ng cho những vấn đề như: lập lịch vệ tinh, lập lịch kính viễn vọng, lập lịch chuyến bay mô phỏng… Xây dựng một chương trình lập lịch tự động là một nhiệm v đầy thử thách

Vấn đề lập lịch quan tâm đến thời gian xử l cài đặt (chi phí) được bắt đầu vào giữa những năm 60 Một số nghiên cứu được viết bởi Allahverdi và cộng sự(1999), Yang và Liao tập trung vào các vấn đề lập lịch tĩnh và xác định Cheng và cộng sự (2000) đã xem xét vấn đề lập lịch của cửa hàng…

Một số công trình nghiên cứu về bài toán lập lịch đã được ứng d ng trong thực tế:

• Laguna(1999)[10] với ứng d ng một cơ sở sản xuất cung cấp cho máy photocopy và máy in laser

• Schaller và cộng sự(2000)[11] giải quyết cácvấn đề của sản xuất bo mạch in trên một máy chèn tự động

• Ngành công nghiệp dệt may có nghiên cứu của Gendreau và cộng sự (2001) [12] Nghiên cứu về các loại vải được giao cho khung dệt được trang bị dây chuyền bọc Khi các loại vải được thay đổi trên máy tính, dây chuyền bọc phải được thay thế và thời gianph thuộc vào hiện tại và các loại vải trước đó

Trang 30

1.3.2 Lu ng công việc (Workflow)

Theo Ravneet[8] một lu ng công việc hay một quy trình nghiệp v (business process) là thứ tự các bước, tác v , sự kiện hoặc tương tác làm nên một quy trình để thực hiện một công việc nào đó

Một quy trình nghiệp v bao g m: có m c đích (goal), có dữ liệu đầu vào c thể (event), có dữ liệu đầu ra xác định (event), sử d ng tài nguyên, có các hoạt động được thực thi theo một thứ tự định trước theo mô hình sau:

Hình 13: Mô hình luồng công việc[8]

a Biểu diễn luồng công việc

Mỗi lu ng công việc cho phép cấu trúc hóa các ứng d ng trong một đ thị không có chu trình (Directed Acyclic Graph – DAG) với mỗi n t (node) đại diện cho một công việc và mỗi cạnh (edge) biểu diễn sự ph thuộc giữa các công việc cung như các dữ liệu đầu vào, dữ liệu đầu ra của các công việc, của ứng d ng Có thể mô hình lu ng công việc bằng các phương pháp khác như sử d ng ngôn ngữ mô

tả BPEL4WS, WSFL, AGWL… Tuy nhiên, mô hình DAG là một kỹ thuật phổ biến

đã và đang được nghiên cứu Mỗi nút trong một DAG đại điện cho một tác v và liên kết có hướng cho thấy sự ph thuộc giữa các tác v

Một DAG có thể chia thành nhiều cấp độ khác nhau (level) theo sự ph thuộc giữa các công việc trong lu ng công việc đó Mỗi cấp độ tiếp theo ph thuộc vào các công việc ở cấp độ trên nó và bất kỳ cấp độ nào ở phía trước[8]

Trang 31

Hình vẽ 14 sau đây mô tả về một lu ng công việc trong đó sự ph thuộc giữa các tác v được biểu diễn thông qua đ thị DAG:

Hình 14 : Mô hình luồng công việc sử dụng đồ thị DAG - Workflow

Lu ng công việc trên bao g m 6 tác v trong đó tác v đầu tiên T1 không có parent Các tác v T2, T3 và T4 là các tác v child của T1 vì chúng chỉ có thể được thực hiện khi tác v T1 đã hoàn thành, tương tự T5 chỉ có thể được thực hiện khi T2

và T3 hoàn thành Tác v T6 sẽ bắt đầu khi T5 và T4 đã hoàn thành và trả ra kết quả của lu ng công việc

Lu ng công việc chỉ có một parent cho mỗi child và có thể được biến đổi để mỗi child chỉ có một parent để đơn giản hóa cấu trúc của nó Chuyển đổi lu ng công việc tạo ra trường hợp một tác v child có một parent, do đó, kết quả trong một mối quan hệ parent-child là duy nhất

Trang 32

Hình 15: Chuyển đổi cho một luồng công việc đơn giản

Ngoài ra, còn có lu ng công việc có chứa vòng lặp Loại vòng lặp thường xuất hiện trong DAG là vòng lặp mở Hình 16 là một ví d về việc khử vòng lặp, trong ví d này, một công việc C lặp đi lặp lại đơn giản ba lần do đó có chứa một vòng lặp Vòng lặp này sẽ được loại bỏ bằng cách tạo ra các tác v C1, C2, C3 đại diện cho tác v C

Mỗi tác v trong lu ng có thể có các tác v anh em (sibling) khi chúng cùng

có chung một parent Các tác v anh em có thể được thực hiện song song với nhau

để tiết kiệm thời gian

Hình 16 : Loại bỏ vòng lặp cho luồng công việc

Một tác v được gọi là sẵn sàng để thực hiện nếu như:

Trang 33

- Parent của nó đã hoàn thành, hoặc

- Parent và tất cả các tác v anh em của parent đó đã hoàn thành

Định nghĩa thứ hai hạn chế hơn vì khó thỏa mãn hơn

Hình 17 : Luồng công việc với bốn cấp độ

b Kích thước:

Kích thước của lu ng công việc được đo là tổng của tất cả các độ dài tác v của

nó Một chiều dài tác v cho thấy số lượng đơn vị để hoàn thành việc thực hiện một tác v Một lu ng công việc đơn giản với ba tác v có độ dài 15, 20, và 25 thì có kích thước là 60

Hình 18 : Ví dụ về luồng công việc với kích thước tác vụ kèm theo

c Độ sâu

Trang 34

Độ sâu của một lu ng công việc là số lượng các tác v dọc theo con đường thực hiện dài nhất bắt đầu từ tác v gốc Một con đường thực hiện một chuỗi các tác v liên kết với nhau theo thứ tự ph thuộc của chúng

d Chiều rộng

Chiều rộng là con số lớn nhất các tác v trong một lu ng công việc đòi hỏi phải thực hiện song song Việc đo chiều rộng là việc làm hữu ích vì nó xác định số lượng các dịch v cho lu ng công việc Chiều rộng của lu ng công việc có thể khác nhau tùy thuộc vào các khó khăn được đặt vào tác v

e Quản lý luồng công việc

Theo Ravneet [8], quản lý lu ng công việc là một kỹ thuật phát triển nhanh chóng mà ngày càng được chấp nhận tại các doanh nghiệp Đặc điểm chính của nó

là tự động hóa các quá trình kết hợp giữa con người và các hoạt động dựa máy móc, đặc biệt là các tương tác với các công c và các ứng d ng của công nghệ thông tin Mặc dù nó được sử d ng phổ biến nhất trong môi trường văn phòng với đội ngũ nhân viên huyênngành như bảo hiểm, ngân hàng, luật và quản l chung nhưng nó cũng được áp d ng trông một số phân lớp của sản xuất và công nghiệp [9] Một đặc

tả lu ng công việc xác định: các hoạt động của lu ng công việc (các task), các điều khiển chúng và sự ph thuộc dữ liệu Hệ thống quản lý lu ng công việc là một phần mềm cung cấp các hỗ trợ cho các dịch v cần thiết: định nghĩa lu ng công việc và tạo quy trình, xác định các luật cho lu ng công việc, quản trị và giám sát việc thực thi lu ng công việc Hệ thống quản lý lu ng công việc định nghĩa, quản lý và thực thi lu ng công việc trên các tài nguyên tính toán M c đích của quản lý lu ng công việc là để đảm bảo chắc chắn các hoạt động thích hợp được thực thi đ ng bởi các dịch v và ở thời điểm thích hợp Lập lịch lu ng công việc là một trong những vấn

đề quan trọng của quản lý thực thi lu ng công việc Lập lịch lu ng công việc là một quy trình ánh xạ và quản lý thực thi các công việc ph thuộc lẫn nhau vào các tài nguyên tính toán Việc lập lịch sẽ phân bổ hợp lý các ngu n tài nguyên tới các công việc của lu ng công việc để đảm bảo việc thực thi hoàn thành sẽ đáp ứng các m c

Trang 35

đích đề ra của người dùng Một chính sách lập lịch hợp lý sẽ tác động đáng kể tới hiệu năng hoạt động của hệ thống Lợi ích của việc thực thi lu ng công việc trong môi trường Điện toán đám mây: Theo Ravneet [8], đưa lu ng công việc vào thực thi trong môi trường điện toán đám mây cho phép sử d ng các dịch v đám mây khác nhau Lợi ích chính của việc này chính là khả năng mở rộng ứng d ng Không giống như môi trường lưới, môi trường điện toán đám mây cho phép mở rộng các tài nguyên đám mây theo thời gian thực để đáp ứng nhu cầu thực thi Khả năng co giãn của đám mây cho phép mở rộng quy mô linh hoạt khi có nhu cầu lớn hơn hoặc giảm đi khi nhu cầu thấp Điều này cho phép hệ thống quản lý lu ng công việc đáp ứng được nhu cầu về chất lượng dịch v theo yêu cầu của ứng d ng Mô hình lấy người dùng làm trung tâm trong môi trường điện toán đám mây làm tăng tính thân thiện và thỏa mãn yêu cầu của người dùng Mô hình kinh doanh "trả cho những gì bạn đã sử d ng" làm giảm các chi phí thực thi lu ng công việc C thể, lợi ích của việc thực thi trong môi trường điện toán đám mây bao g m: Ảo tưởng về một ngu n tài nguyên vô hạn (Illusion of infinite resources): người dùng có thể đưa ra yêu cầu tài nguyên cần thiết cho ứng d ng ở bất cứ thời điểm nào; Tài nguyên đi thuê (Lease): người sử d ng trực tiếp xác định ngu n tài nguyên cần thuê một cách hợp

l để lập lịch cho các tính toán của họ Mô hình này là l tưởng vì nó làm giảm chi phí lập lịch; Tính co giãn (Elasticly): cho phép người dùng có thể thuê được và phân bổ tài nguyên theo nhu cầu Hệ thống workflow dễ dàng phát triển hoặc thu nhỏ ngu n tài nguyên theo thời gian Thách thức của việc thực thi lu ng công việc trong môi trường Điện toán đám mây: Theo Ravneet [8], những thách thức gặp phải khi thực thi lu ng công việc trong môi trường Điện toán đám mây bao g m: Chi phí: trong thực tế, một số dịch v điện toán đám mây là miễn phí, nhưng một số dịch v thì không Điều này đ ng nghĩa với việc người sử d ng sẽ phải tiền cho những gì mà họ sử d ng Do vậy, chi phí trở thành một mối quan tâm lớn của các ứng d ng workflow Nếu đưa ra cả hai thuộc tính về thời gian và chi phí, người sử

d ng sẽ phải đưa ra ngay quyết định là trả nhiều chi phí hơn để giảm thời gian thực hiện hoặc tiết kiệm chi phí bằng cách cho phép kéo dài thời gian thực thi lâu hơn

Trang 36

miễn là thời hạn cuối cùng để thực hiện công việc vẫn có thể được đáp ứng Thỏa thuận cấp độ dịch v : với hầu hết các dịch v điện toán đám mây đến từ các tổ chức thương mại lớn, các thỏa thuận cấp độ dịch v trở thành một mối quan tâm quan trọng cho cả nhà cung cấp dịch v và khách hàng Do cạnh tranh trong cung cấp dịch v đang nổi lên, các nhà cung cấp phải đảm bảo: chất lượng dịch v (QoS) tốt cho khách hàng và các điều khoản phải rõ ràng cho việc b i thường trong trường hợp vi phạm Khối lượng dữ liệu: tùy thuộc vào dịch v được cung cấp, khối lượng

dữ liệu cần thiết được vận chuyển qua dịch v Nền tảng hỗ trợ: tùy thuộc vào dịch

v , nền tảng hỗ trợ yêu cầu của các dịch v ứng d ng đám mây cũng có thể là một nhân tố hạn chế Ngoài vấn đề trên, có thể có những thách thức khác như vấn đề an ninh, tuân thủ các quy định và minh bạch dữ liệu Sự cần thiết của việc thực thi workflow trong môi trường Điện toán đám mây: Ch ng ta đã thấy được những lợi ích khi thực thi lu ng công việc [8] trong môi trường điện toán đám mây ở trên Hơn nữa, các ứng d ng lu ng công việc thường yêu cầu một môi trường thực thi phức tạp bao g m: hệ điều hành c thể, các thư viện, cấu trúc tệp tin hệ thống, nhiều chương trình ứng d ng và các tệp tin cấu hình Môi trường này thường khó có thể tạo trên các tài nguyên lưới Ngoài ra, mỗi một vị trí lưới đều có cấu hình khác nhau, vì vậy các kết quả thường phải nỗ lực thêm thời gian để chuyển tới các vị trí mới Máy ảo cho phép phát triển các ứng d ng tạo ra đầy đủ các tùy biến, cấu hình các môi trường thực thi đặc biệt cho các ứng d ng của họ

1.3.3 Lập lịch cho lu ng công việc

Lập lịch cho lu ng công việc là một trong những vấn đề quan trọng trong việc quản lý lu ng công việc, đặc biệt là hệ thống quản lý lu ng công việc đám mây Đó là một quá trình lập lịch để quản lý việc phân phối các tác v đến các ngu n tài nguyên một cách phù hợp và đáp ứng các hàm m c tiêu được yêu cầu bởi người sử d ng

Lập lịch là quá trình lập các ánh xạ (bản đồ - mapping) và quản lý việc thực hiện các tác vụ phụ thuộc lẫn nhau với các nguồn lực phân tán Phân bổ nguồn lực

Trang 37

phù hợp với tác vụ để hoàn thành các đáp ứng hàm mục tiêu được yêu cầu bởi người sử dụng Lập lịch thích hợp có thể có tác động đáng kể hiệu suất của hệ thống [13]

Việc lập lịch một cách hợp lí sẽ tác động đáng kể đến hiệu suất của hệ thống Tuy nhiên các vấn đề về lập lịch các dịch v phân phối là bài toán NP-khó Đối với các vấn đề như vậy, không có thuật toán nào có thể để tạo ra các giải pháp tối ưu trong thời gian đa thức Mặc dù các vấn đề lập lịch lu ng công việc có thể được giải quyết bằng cách sử d ng tìm kiếm đầy đủ nhưng các phương pháp này rất phức tạp Trong môi trường đám mây, việc quyết định lập lịch phải được thực hiện trong thời gian ngắn nhất có thể, bởi vì có rất nhiều người sử d ng cạnh tranh các ngu n tài nguyên và khe thời gian mong muốn của một người sử d ng có thể được thực hiện

bởi một người dùng khác bất cứ lúc nào

Cho đến nay, có hai loại chính lập lịch cho lu ng công việc đó là dựa vào những cố gắng tốt nhất và lập lịch hạn chế dựa vào chất lượng dịch v (QoS), chủ yếu cho hệ thống quản lí lu ng công việc của lưới Lập lịch dựa trên những cố gắng tốt nhất sẽ cố gắng giảm thiểu thời gian thực hiện, bỏ qua các yếu tố khác như chi phí của việc truy cập tài nguyên và mức độ hài lòng của người dùng QoS Ngược lại, lập lịch hạn chế dựa vào QoS tối đa hóa hiệu suất theo ràng buộc QoS

Trang 38

CHƯƠNG 2 BÀI TOÁN LẬP LỊCH VÀ PHÂN BỔ TÀI NGUYÊN TRONG MÔI TRƯỜNG ĐIỆN TOÁN ĐÁM MÂY

2.1 Vấn đề lập lịch và phân bổ ài nguy n đ y

2.1.1 Lập lịch cho lu ng công việc r n đ y

Trong môi trường đám mây có một vùng chung (pool) lớn được sử d ng dễ dàng cho phép truy cập vào các ngu n tài nguyên ảo hóa (chẳng hạn như phần cứng, phát triển platform, dịch v ) Các ngu n tài nguyên có thể được tự động tái cấu hình để điều chỉnh cho một biến tải, cho phép sử d ng ngu n lực tối ưu Vùng chung (pool) của các ngu n tài nguyên này thường được khai thác bởi một mô hình trả tiền cho mỗi lần sử d ng đảm bảo được cung cấp bởi các nhà cung cấp cơ sở hạ tầng bằng cách tùy chỉnh SLAs (thỏa thuận cấp độ dịch v )

Lu ng công việc trong điện toán đám mây là lu ng công việc được thực hiện trên môi trường đám mây nhằm tận d ng những lợi thế mà đám mây cung cấp để tạo điều kiện thuận lợi cho việc thực hiện các lu ng công việc Những lợi thế này bao g m các khía cạnh sau:

- Môi trường đám mây cho phép việc sử d ng các dịch v đám mây khác nhau để thực hiện công việc

- Ngược lại với các ngu n tài nguyên trong lưới, các ngu n tài nguyên trong các đám mây được chia s và cung cấp cho người sử d ng theo tính năng "theo yêu cầu", có nghĩa là chi phí cho phần cứng để thực hiện công việc có thể được lưu lại

- Các mô hình "user-centric" trong các đám mây làm cho việc thực hiện

lu ng công việccho người dùng thân thiện hơn do đó làm tăng sự hài lòng của người dùng

- Phương thức kinh doanh "trả tiền khi hết sử d ng" trong các đám mây có thể tiết kiệm chi phí thực hiện các lu ng công việc

Trang 39

Vấn đề lập lịch trong môi trường tính toán phân tán đã trở thành một chủ đề được nhiều người quan tâm và có nhiều thuật ngữ đã được đề xuất:

Machine (computin unit): là tập các tài nguyên tính toán với giới hạn năng lực tính toán Nó có thể là một máy các nhân, một máy trạm, một siêu máy tính hoặc phân c m các máy trạm Năng lực tính toán các máy tùy thuộc vào số lượng CPU, dung lượng bộ nhớ, không gian lưu trữ cơ bản và các yếu tố khác Nói cách khác, mỗi máy có một tốc độ tính toán của riêng nó, có thể được biểu diễn bằng số chu kỳ trên một đơn vị thời gian (Cycles Per Unit Time –CPUT)

Data Resource: là tập các dữ liệu ảnh hưởng tới lập lịch Các dữ liệu này thường nằm trên các kho lưu trữ khác nhau hoặc các máy chủ dữ liệu Kho dữ liệu kết nối với các ngu n tài nguyên tính toán bằng các liên kết với băng thông khác nhau

Job and Operation (Task): được coi như tập các operation/task nguyên tử Mỗi mọt công việc sẽ được phân bổ ở trên một máy tính duy nhất mà không cần chiếm trước Nó có dữ liệu đầu vào và đầu ra (input/output) và yêu cầu xử l để hoàn thành nhiệm v của mình Một trong những yêu cầu xử lý quan trọng nhất là

lu ng công việc, sắp đặt một tập các hoạt động cho các ứng d ng c thể Những hoạt động này chỉ có thể bắt đầu sau khi hoàn thành một hoạt động trước đó theo trình tự, vì vậy được gọi là ràng buộc lu ng công việc

Schedule and Scheduling Probem: là phép kết nối các công việc cho một khoảng thời gian c thể của máy Vấn đề lập lịch được xác định bằng một tập các máy, tập các công việc, tiêu chu n tối ưu, đặc điểm môi trường và các ràng buộc khác

Cùng với sự ra đời của đám mây, các kiểu lập lịch khác nhau dựa trên các tiêu chí khác nhau cho bài toán lập lịch trên đám mây cũng ra đời Sau đây là một

số kiểu lập lịch cho đám mây hiện có:

1) Lập lịch tĩnh: áp d ng với một công việc có trước thời hạn, tất cả các

Trang 40

phương án lập lịch tĩnh, các thông tin hiện tại về môi trường thực hiện và các tài nguyên phải được dự đoán trước khi thực hiện công việc lập lịch và các trạng thái thay đổi về ngu n tài nguyên không được cập nhật trong quá trình lập lịch

2) Lập lịch động: là phương pháp lập lịch sử d ng cả thông tin động và thông tin tĩnh về các ngu n tài nguyên để ra quyết định lập lịch tại thời gian chạy Phương pháp lập lịch động linh hoạt hơn so với lập lịch tĩnh, công việc được tự động lập lịch theo thời gian, có thể xác định thời gian chạy trước

3) Lập lịch tập trung: Việc lập lịch được thực hiện áp d ng cho các tác v thực thi bởi một bộ xử lý Lập lịch tập trung dễ thực hiện, hiệu quả, kiểm soát nhiều hơn và giám sát tài nguyên lợi hơn

4) Lập lịch phi tập trung: Việc lập lịch được thực hiện áp d ng cho các tác v thực thi bởi nhiều bộ xử lý

5) Lập lịch hợp tác:trong trường hợp này, hệ thống có nhiều lập lịch, mỗi cái chịu trách nhiệm thực hiện hoạt động nhất định trong quá trình lập lịch với phạm vi dựa trên sự hợp tác của các thủ t c, quy tắc nhất định và người sử d ng hệ thống hiện tại

6) Lập lịch phòng ngừa: phương pháp lập lịch cho phép mỗi công việc bị gián đoạn trong quá trình thực hiện và một công việc có thể được di chuyển đến tài nguyên khác và không sử d ng tài nguyên ban đầu của nó

7) Lập lịch không phòng ngừa: là phương pháp lập lịch mà các ngu n lực không được phép được cấp trở lại cho đến khi công việc chạy và hoàn thành thực hiện

8) Chế độ ngay lập tức/trực tuyến: lập lịch cho bất kỳ công việc nào ngay khi

nó đến không phải chờ đợi khoảng thời gian tiếp theo trên các ngu n lực sẵn có tại thời điểm đó

9) Chế độ hàng loạt/không trực tuyến: tổ chức lập lịch đến công việc như là một nhóm các vấn đề được giải quyết trong thời gian liên tiếp

Ngày đăng: 25/07/2017, 21:33

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] D. M. S. Daryl C. Plummer, David W. Cearley. Cloud computing confusion leads to opportunity.Technical report, Gartner Research, 2008 Sách, tạp chí
Tiêu đề: Cloud computing confusion leads to opportunity
[2] I. Foster, Y. Zhao, I. Raicu, and S. Lu. Cloud computing and grid computing 360-degree com-pared. In Proceedings of Grid Computing Environments Workshop, pages 1–10, 2008 Sách, tạp chí
Tiêu đề: Cloud computing and grid computing 360-degree com-pared
[3] P. Mell and T. Grance. The NIST Definition of Cloud Computing (Draft). National Institute of Standards and Technology, 53:7, 2010 Sách, tạp chí
Tiêu đề: The NIST Definition of Cloud Computing (Draft)
[4] Fei Teng (2012) Grade de docteur “management des données et ordonnancement des tâches sur architectures distribuées” 12.1.2012 Sách, tạp chí
Tiêu đề: management des données et ordonnancement des tâches sur architectures distribuées
[5] M. Cafaro and G. Aloisio. Grids, Clouds and Virtualization. Springer-Verlag New York, Inc., 1st edition, 2010 Sách, tạp chí
Tiêu đề: Clouds and Virtualization. Springer-Verlag New York
[6] Security Guidance for Critical Areas of Focus in Cloud Computing V2.1, Cloud Security Alliance, December 2009 Sách, tạp chí
Tiêu đề: Security Guidance for Critical Areas of Focus in Cloud Computi
[7] Dominique A. Heger, Optimized Resource Allocation &amp; Task Scheduling Challenges in Cloud Computing Environments, DHTechnologies (DHT), dheger@dhtusa.com Sách, tạp chí
Tiêu đề: Optimized Resource Allocation & Task Scheduling Challenges in Cloud Computing Environments
[8] Ravneet Kaur Chawla, “Designing a business application for workflows in Cloud Computing”, Thesis, Master of Engineering in Software Engineering, Thapar University Sách, tạp chí
Tiêu đề: “Designing a business application for workflows in Cloud Computing
[9] Suraj Pandey, Kapil Kumar Gupta, Adam Barker and Rajkumar Buyya, Minimizing Execution Cost when using Globally Distributed Cloud Services, Proceedings of the 24th IEEE International Conference on Advanced Information Networking and Applications (AINA 2010), Perth, Australia, April 20-23, 2010 Sách, tạp chí
Tiêu đề: Minimizing Execution Cost when using Globally Distributed Cloud Services
[10] Qinghai Bai, “Analysis of particle swarm optimization algorithm”, Computer and Information Science Vol. 3, No.1 February 2010, www.ccsenet.org/cis Sách, tạp chí
Tiêu đề: Analysis of particle swarm optimization algorithm
[11] Kim, D.W., Kim, K.H., Jang, W., Chen, F.F, “Unrelated parallel machines cheduling with setup times using simulated annealing”, Robotics and Computer Integrated Manufacturing 18, 223-31, 2002 Sách, tạp chí
Tiêu đề: Unrelated parallel machines cheduling with setup times using simulated annealing
[12] Gendreau, M., Laporte, G., Guimara, E.M, “A divide and merge heuristic for the multiprocessor scheduling problem with sequence dependent setup times”, European Journal of Operational Research 133, 183–189, 2001 Sách, tạp chí
Tiêu đề: A divide and merge heuristic for the multiprocessor scheduling problem with sequence dependent setup times
[13] Ke Liu, B.Sci, M.Eng, “Scheduling Algorithms for Instance-Intensive Cloud Workflows”, CS3-Centre for Complex Software Systems and Services Faculty of Information and Communication Technologies Swinburne University of Technology, June, 2009 Sách, tạp chí
Tiêu đề: Scheduling Algorithms for Instance-Intensive Cloud Workflows
[14] D.T. Pham, A. Ghanbarzadeh, E. Koỗ, S. Otri , S. Rahim , M. Zaidi , The Bees Algorithm – A Novel Tool for Complex Optimisation Problems Manufacturing Engineering Centre, Cardiff University, Cardiff CF24 3AA, UK [15] Xin-She Yang, University of Cambridge, United Kingdom, Natrue-InspiredMetaheuristic Algorithm, 2010 Sách, tạp chí
Tiêu đề: The Bees Algorithm – A Novel Tool for Complex Optimisation Problems" Manufacturing Engineering Centre, Cardiff University, Cardiff CF24 3AA, UK [15] Xin-She Yang, University of Cambridge, United Kingdom", Natrue-Inspired "Metaheuristic Algorithm
[16] Isam Azawi Mohialdeen, “Comparative study of scheduling algorithms in cloud computing enviroment”, College of Information Technology, University Tenaga Nasional, Selangor, Malaysia, journal of Computer Science, 9(2):2520263, 2013 Sách, tạp chí
Tiêu đề: Comparative study of scheduling algorithms in cloud computing enviroment
[17] Sheng-Jun Xue, Wu Wu “Scheduling Workflow in Cloud Computing Based on Hybrid Partical Swarm Algorithm” Telkomnika, vol.10, no7, november 2012, e-ISSN: 2087-278x Sách, tạp chí
Tiêu đề: Scheduling Workflow in Cloud Computing Based on Hybrid Partical Swarm Algorithm
[18] Suraj Pandey, Linlin Wu, Siddeswara Mayura Guru, Rajkumar Buyya, “A Particle Swarm Optimization – based Heuristic for Scheduling Workflow Applications in Cloud Computing Enviroments”, Cloud Computing and Distributed Systems Laboratory Department of Computer Science and Software Engineering The University of Melbourne, Autralia Sách, tạp chí
Tiêu đề: A Particle Swarm Optimization – based Heuristic for Scheduling Workflow Applications in Cloud Computing Enviroments
[19] Rodrigo N. Calherios, Rajiv Ranjan, César A. F. De Rose and Rajkumar Buyya, “Cloudsim: A novel framework for Modeling and Simulation of Cloud Sách, tạp chí
Tiêu đề: [19] Rodrigo N. Calherios, Rajiv Ranjan, César A. F. De Rose and Rajkumar Buyya, “Cloudsim: A novel framework for Modeling and Simulation of Cloud

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w