1. Trang chủ
  2. » Luận Văn - Báo Cáo

Bài viết luận văn tốt nghiệp:“Tìm hiểu điện toán đám mây và bài toán ước lượng chi phí”

72 74 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 72
Dung lượng 417,57 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Việc quản lý và xử lý dữ liệu của tổ chức, công ty cũng như dữ liệu cá nhân, khách hàng là một trong những chiến được ưu tiên hàng đầu của nhà quản lý đã đang đang gây ra nhiều khó khăn do sự bùng nổ thông tin và phức tạp trong xử lý, cộng thêm đầu tư cơ sở hạ tầng thông tin với chi phí cao. Để có thể quản lý và xử lý được nguồn dữ liệu đó, ban đầu các tổ chức, doanh nghiệp phải đầu tư, tính toán rất nhiều loại chi phí như: chi phí cho cơ sở hạ tầng phần cứng, phần mềm, hệ thống mạng, chi phí cho quản trị viên, chi phí bảo trì, sửa chữa, nâng cấp, bảo mật dữ liệu và tính khả dùng của dữ liệu. Từ những đòi hỏi đó, các nhà nghiên cứu trong lĩnh vực công nghệ thông tin đã đi tìm giải pháp và đưa ra khái niệm điện toán đám mây, là nơi cho phép các tổ chức, doanh nghiệp quản lý, sử dụng và xử lý tốt nguồn tài nguyên của mình mà ít quan tâm đến đầu tư cơ sở hạ tầng thông tin.Để phục vụ cho người sử dụng dịch vụ cũng như nhà cung cấp dịch vụ một nền tảng được xây dựng mà ở đó cơ sở hạ tầng máy chủ ảo, nền tảng phát triển ứng dụng và phần mềm được xem như là dịch vụ.Việc điều phối, thực hiện bài toán trên môi trường phân tán và song song gặp nhiều khó khăn trong môi trường điện toán đám mây, nơi mà người sử dụng yêu cầu hai yếu tố thời gian kết thúc và giá cả thực hiện bài toán.Mục đích của bài toán lập lịch ước lượng chi phí là đưa ra giải pháp tối ưu để giải bài toán dựa vào tính chất bài toán và tình trạng tài nguyên của hệ thống nhằm tăng cường khả năng vận hành, hiệu suất của hệ thống và những yêu cầu hoàn thành bài toán từ người dùng. Những đảm bảo trên nhằm đáp ứng chất lượng dịch vụ tốt, điều này gây ra khó khăn trong môi trường điện toán đám mây, nơi mà các tài nguyên phân tán, không đồng nhất, được sở hữu nhiều tổ chức khác nhau với những quy định về cấu hình, giá dịch vụ cũng không giống nhau.Để phục vụ tốt yêu cầu của người sử dụng, hệ thống phải lập lịch công việc sao cho đáp ứng được yêu cầu về chi phí dịch vụ và thời gian thực hiện, hai yêu cầu cốt lõi của người sử dụng trong khi sử dụng dịch vụ: một là quan tâm về thời gian giải bài toán; hai là yêu cầu về tối ưu giá.Thấy được sự hấp dẫn của mô hình thương mại điện toán đám mây tôi quyết định đi nghiên cứu, tìm hiểu một khía cạnh quan trọng của nền tảng đó.

Trang 1

LỜI CAM ĐOAN

Tôi cam đoan đây là công trình nghiên cứu củariêng tôi Các số liệu, kết quả nêu trong luận văn làtrung thực và chưa từng được ai công bố trong bất kỳcông trình nào khác

Tác giả luận văn

VÕ THANH MINH

Trang 2

LỜI CẢM ƠN

Trước hết, tôi xin được bày tỏ lòng biết ơn chân thành và sâu sắc đến thầy giáo hướng dẫn TS Nguyễn Mậu Hân đã tận tình hướng dẫn tôi trong suốt quá trình làm luận văn tốt nghiệp này

Tôi cũng xin chân thành cảm ơn Trường Đại học Khoa Học - Huế, Khoa Công Nghệ Thông Tin đã tạo mọi điều kiện thuận lợi cho tôi được học tập Xin được gửi lời tri ân tới quý thầy cô đã tận tình giảng dạy, giúp đỡ và tạo mọi điều kiện thuận lợi cho tôi trong quá trình học tập và nghiên cứu.

Xin được gửi lời cảm ơn đến Ban giám hiệu, cùng các đồng nghiệp đã tạo mọi điều kiện để tôi được đi học.

Cuối cùng, tôi xin chân thành cảm ơn gia đình tôi, những người thân và bạn bè đã luôn bên cạnh, động viên, giúp đỡ tôi trong suốt thời gian học tập

và thực hiện đề tài.

Xin chân thành cảm ơn!

Tác giả luận văn

Trang 3

MỤC LỤC

LỜI CAM ĐOAN i

LỜI CẢM ƠN ii

MỤC LỤC iii

DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT vi

DANH MỤC CÁC BẢNG BIỂU vii

DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ viii

MỞ ĐẦU 1

Chương 1: TỔNG QUAN VỀ ĐIỆN TOÁN ĐÁM MÂY 4

1.1.Giới thiệu 4

1.2.Nền tảng điện toán đám mây 4

1.2.1.Định nghĩa điện toán lưới 4

1.2.2.Đặc trưng điện toán lưới 4

1.2.3.Kiến trúc Điện toán lưới 5

1.3.Điện toán đám mây 12

1.3.1.Định nghĩa điện toán đám mây 12

1.3.2.Đặc trưng điện toán đám mây 12

1.3.3.Kiến trúc điện toán đám mây 14

1.4.Mối quan hệ giữa điện toán lưới và điện toán đám mây. 15

Chương 2: LẬP LỊCH VÀ HỆ THỐNG QUẢN LÝ LUỒNG CÔNG VIỆC 17

2.1 Giới thiệu luồng công việc và hệ thống quản lý 17

Trang 4

2.1.1 Định nghĩa luồng công việc 17

2.1.2 Kiến trúc hệ thống quản lý luồng công việc 17

2.1.3.Một số hệ thống quản lý luồng công việc hiện tại 19

2.2.Giới thiệu một số phương pháp lập lịch luồng công việc. 22

2.2.1.Các phương pháp nỗ lực tốt nhất 23

2.3.2 Các phương pháp ràng buộc chất lượng dịch vụ 31

2.3.Đánh giá và phân tích yêu cầu 35

2.3.1.Bài toán 35

2.3.2.Phân tích bài toán 35

2.3.3.Phân tích yêu cầu 36

Chương 3: THUẬT TOÁN LƯỢNG GIÁ VỀ CHI PHÍ VÀ THỜI GIAN 37

3.1.Giới thiệu 37

3.2.Phân tích yêu cầu và giải pháp tổng thể 37

3.2.1.Phân tích yêu cầu 37

3.2.1.Giải pháp tổng thể 38

3.2.2.Cơ sở hạ tầng lập lịch 38

3.2.3.Thuật toán CTC 40

3.2.4.Phân tích độ phức tạp thuật toán 48

3.2.5.Ví dụ biểu diễn cho thuật toán 49

3.3 Mô phỏng và so sánh thuật toán 59

3.3.1 Môi trường mô phỏng 59

3.3.2 So sánh kết quả 60

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 61

TÀI LIỆU THAM KHẢO 63

Trang 5

DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT

AEST Absolute Earliest Start Time

ALST Absolute Latest Start Time

SL Sort List

FIFO First In, First Out

JIT Just In Time

CTC Compromised Time Cost

CTC-MT Compromised Time Cost Minimise Time

CTC-MC Compromised Time Cost Minimise Cost

QoS Quality of Service

DAG Directed Acyclic Graph

AEST Absolute Earliest Start Time

ALST Absolute Latest Start Time

FCP Fast Critical Path

AGS Adaptive Generalised Scheduler

WMM Workflow Mapping Mechanism

AWS Adaptive Workflow Splitting

ASA Adaptive Scheduling Algorithm

HEFT Heterogeneous Earliest-Finish-Time

GRASP Greedy Randomised Adaptive Search Procedure

Trang 6

SA Simulated Annealing

DANH MỤC CÁC BẢNG BIỂU

Số hiệu

Bảng 3.1 Bảng tham khảo chuẩn giá tốc độ 44 Bảng 3.2 Bảng tham khảo chuẩn giá băng thông 45Bảng 3.3 Bảng kết quả thuật toán CTC 53Bảng 3.4 Minh họa giai đoạn lập lịch với thuật toán CTC 54Bảng 3.5 Bảng kết quả thuật toán DMP 58Bảng 3.6 Minh họa giai đoạn lập lịch với thuật toán DMP 59Bảng 3.7 Bảng so sánh kết quả 60

Trang 7

Hình 1.1 Kiến trúc Điện toán lưới 6 Hình 1.2 Kiến trúc lập trình trong Điện toán lưới 11 Hình 1.3 Kiến trúc Điện toán đám mây 14 Hình 1.4 Mối quan hệ của Điện toán lưới và Điện toán đám mây 15 Hình 2.1 Hệ thống quản lý luồng công việc 18 Hình 2.2 Thành phần hệ thống quản lý luồng công việc 20 Hình 3.1 Cơ sở hạ tầng lập lịch 39 Hình 3.2 Quan hệ giữa các đại lượng 44

Đồ thị 3.1 Đồ thị so sánh kết quả CTC và MDP 60

Trang 8

MỞ ĐẦU

1 Lý do chọn đề tài

Việc quản lý và xử lý dữ liệu của tổ chức, công ty cũng như dữ liệu cánhân, khách hàng là một trong những chiến được ưu tiên hàng đầu của nhàquản lý đã đang đang gây ra nhiều khó khăn do sự bùng nổ thông tin và phứctạp trong xử lý, cộng thêm đầu tư cơ sở hạ tầng thông tin với chi phí cao Để

có thể quản lý và xử lý được nguồn dữ liệu đó, ban đầu các tổ chức, doanhnghiệp phải đầu tư, tính toán rất nhiều loại chi phí như: chi phí cho cơ sở hạtầng phần cứng, phần mềm, hệ thống mạng, chi phí cho quản trị viên, chi phíbảo trì, sửa chữa, nâng cấp, bảo mật dữ liệu và tính khả dùng của dữ liệu

Từ những đòi hỏi đó, các nhà nghiên cứu trong lĩnh vực công nghệ

thông tin đã đi tìm giải pháp và đưa ra khái niệm điện toán đám mây, là nơi

cho phép các tổ chức, doanh nghiệp quản lý, sử dụng và xử lý tốt nguồn tàinguyên của mình mà ít quan tâm đến đầu tư cơ sở hạ tầng thông tin

Để phục vụ cho người sử dụng dịch vụ cũng như nhà cung cấp dịch vụmột nền tảng được xây dựng mà ở đó cơ sở hạ tầng máy chủ ảo, nền tảngphát triển ứng dụng và phần mềm được xem như là dịch vụ

Việc điều phối, thực hiện bài toán trên môi trường phân tán và songsong gặp nhiều khó khăn trong môi trường điện toán đám mây, nơi mà người

sử dụng yêu cầu hai yếu tố thời gian kết thúc và giá cả thực hiện bài toán.Mục đích của bài toán lập lịch ước lượng chi phí là đưa ra giải pháp tối

ưu để giải bài toán dựa vào tính chất bài toán và tình trạng tài nguyên của hệthống nhằm tăng cường khả năng vận hành, hiệu suất của hệ thống và nhữngyêu cầu hoàn thành bài toán từ người dùng Những đảm bảo trên nhằm đápứng chất lượng dịch vụ tốt, điều này gây ra khó khăn trong môi trường điện

Trang 9

toán đám mây, nơi mà các tài nguyên phân tán, không đồng nhất, được sởhữu nhiều tổ chức khác nhau với những quy định về cấu hình, giá dịch vụcũng không giống nhau.

Để phục vụ tốt yêu cầu của người sử dụng, hệ thống phải lập lịch côngviệc sao cho đáp ứng được yêu cầu về chi phí dịch vụ và thời gian thực hiện,

hai yêu cầu cốt lõi của người sử dụng trong khi sử dụng dịch vụ: một là quan tâm về thời gian giải bài toán; hai là yêu cầu về tối ưu giá.

Thấy được sự hấp dẫn của mô hình thương mại điện toán đám mây tôiquyết định đi nghiên cứu, tìm hiểu một khía cạnh quan trọng của nền tảng đó

2 Mục đích nghiên cứu

- Tìm hiểu khái niệm điện toán đám mây.

- Tìm hiểu liên hệ giữa điện toán lưới và điện toán đám mây.

- Giới thiệu một số phương pháp lập lịch luồng công việc.

- Phân tích thuật toán CTC ước lượng chi phí và thời gian trong môi

trường điện toán đám mây

- Mô phỏng và đánh giá kết quả thuật toán CTC.

3 Đối tượng và phạm vi nghiên cứu

- Đối tượng nghiên cứu chính của luận văn là lập lịch luồng công việc

trên nền điện toán đám mây sử dụng thuật toán CTC

- Phạm vi nghiên cứu: tìm hiểu lý thuyết điện toán đám mây và cài đặtthuật toán CTC thử nghiệm trong môi trường mô phỏng

4 Phương pháp nghiên cứu

- Tìm hiểu, phân tích và tổng hợp các bài báo, tài liệu

- Dựa trên các kết quả đã công bố phân tích, đánh giá một số thuật toántrong môi trường điện toán đám mây

Trang 10

5 Ý nghĩa khoa học và thực tiễn của đề tài

Sau quá trình nghiên cứu đề tài “Tìm hiểu điện toán đám mây và bài toánước lượng chi phí” tác giả đã hiểu được các khái niệm về điện toán đám mây

và triển khai, cài đặt được trình tiện ích lập lịch trên nền điện toán đám mây,hình thành khả năng quan sát, phân tích, đánh giá bài toán

6 Cấu trúc của luận văn

Luận văn này được chia thành 3 chương

Chương 1: Tổng quan về điện toán đám mây

Tìm hiểu các khái niệm về điện toán đám mây, mối liên hệ của nó vớicác công nghệ hiện tại, cung cấp kiến trúc cơ bản của điện toán đám mây vàgiải thích chúng

Chương 2: Lập lịch và hệ thống quản lý luồng công việc

Tìm hiểu định nghĩa luồng công việc, giới thiệu kiến trúc và giải thíchkiến trúc lập lịch cho luồng, nêu ra một số ý tưởng của phương pháp lập lịchluồng công việc đang được sử dụng

Chương 3: Thuật toán lượng giá về chi phí và thời gian

Trong chương này tập trung chủ yếu giải quyết các mục tiêu sau: đặt vấn

đề bài toán, phân tích yêu cầu, đưa ra giải pháp cho bài toán, trình bày thuậttoán, phân tích ví dụ để làm sáng tỏ các giai đoạn lập lịch, cài đặt, so sánh vàđánh giá kết quả thu được từ thực nghiệm

Trang 11

Chương 1

TỔNG QUAN VỀ ĐIỆN TOÁN ĐÁM MÂY 1.1.Giới thiệu

Điện toán đám mây là một khuynh hướng công nghệ được đang được

các nhà nghiên cứu và cộng đồng chấp nhận rộng rãi Đặc trưng của điện toán đám mây là cung cấp dịch vụ thông tin và tài nguyên phần cứng, cho phép

người sử dụng truy cập ứng dụng và khai thác tiềm năng phần cứng từ bất kỳ

thiết bị nào có kết nối đến điện toán đám mây, điện toán đám mây được phát

triển trên cơ sở các trung tâm dữ liệu, hạ tầng mạng với tốc độ cao và sự hỗtrợ tiện dụng của công nghệ Web 2.0

Mặc dù điện toán đám mây mới chỉ được nói đến trong thời gian gầnđây, nhưng đây không phải là một sự phát triển hoàn toàn mới, mang tính độtphá Điện toán đám mây là bước phát triển tiếp theo của một quá trình bắt đầu

từ vài thập niên trước với điện toán lưới.

1.2.Nền tảng điện toán đám mây

Trong phần này, mục đích chính là tìm hiểu nền tảng của điện toán đám mây, quan hệ của nó với điện toán lưới và cùng với các công nghệ khác, từ đó

đưa ra nhận xét sự giống, khác nhau cơ bản giữa các công nghệ

1.2.1.Định nghĩa điện toán lưới

Theo Ian Foster, định nghĩa điện toán lưới như sau: “Lưới là một hệ thống mà tài nguyên là không điều khiển tập trung, dùng giao thức chuẩn,

mở, đa năng, là nơi cung cấp chất lượng các dịch vụ không tầm thường” [7]

1.2.2.Đặc trưng điện toán lưới

Theo IBM, điện toán lưới có những đặc trưng dưới đây[7]:

Trang 12

- Điện toán lưới có thể khai thác tài nguyên nhàn rỗi và chạy các ứngdụng hiện có trên đó.

- Tiềm năng lớn của lưới là khả năng song song với số lượng CPU tươngđối lớn, đây là một trong những đặc tính hấp dẫn của hệ thống lưới

- Điện toán lưới cung cấp khả năng và đơn giản hóa sự kết nối tàinguyên trong phạm vi lớn

- Ngoài tài nguyên CPU và tài nguyên lưu trữ, lưới còn có thể cung cấpkhả năng truy xuất để gia tăng chất lượng nguồn tài nguyên, các thiết bịchuyên dụng, phần mềm, cấp phép và các dịch vụ khác

- Lưới có thể hợp nhất lượng lớn tài nguyên phân tán bởi các máy tínhđơn lẻ tạo thành nguồn tài nguyên ảo khổng lồ

- Độ tin cậy đạt được qua giá thành rẻ và sự phân bố tài nguyên tronglưới theo địa lý

- Mục tiêu để ảo hóa tài nguyên trên lưới và đồng nhất xử lý đối với hệthống không đồng bộ sẽ tạo ra cơ hội mới quản lý tốt hơn và cơ sở hạ tầngthông tin phân tán nhiều hơn

1.2.3.Kiến trúc Điện toán lưới

Lưới cung cấp các giao thức và dịch vụ nằm tại các lớp khác nhau trongkiến trúc [6]

Trang 13

Hình 1.1 Kiến trúc điện toán lưới

1.2.3.1.Tầng Fabric: Giao diện điều khiển địa phương.

Tầng fabric cung cấp nguồn tài nguyên để chia sẻ truy cập bởi các giao

thức lưới: tài nguyên tính toán, hệ thống lưu trữ, tài nguyên mạng, thư mục vàcác phần tử vật lý khác Tài nguyên có thể là một thực thể logic, chẳng hạnnhư hệ thống tập tin phân tán, cụm máy tính, trong mỗi trường hợp tài nguyênthực hiện có thể gồm các giao thức nội bộ, nhưng nó không phải vấn đề quantâm nhiều trong lưới, lớp này có các thành phần sau:

- Tài nguyên tính toán: cơ chế cần thiết để bắt đầu chương trình và theo

dõi, điều khiển và thực hiện Cung cấp cơ chế quản lý cho phép điều khiểnphân bổ nguồn tài nguyên để xử lý hiệu quả, yêu cầu các chức năng cầnthiết để nhận ra đặc trưng phần cứng và phần mềm (như tốc độ xử lý, tínhsẵn dùng của CPU, không gian lưu trữ dùng được và nền tảng API), cũngnhư thông tin về tình trạng tải và trạng thái xếp hàng trong trường hợp lậplịch quản lý tài nguyên

- Tài nguyên lưu trữ: cơ chế cần thiết cho việc đưa và nhận tập tin, một

tập tin có thể được lưu trữ nhiều nơi trên lưới, vì vậy có một cơ chế đọc vàghi các phần của tập tin Cơ chế quản lý cho phép điều khiển phân bổ tài

Trang 14

nguyên để truyền dữ liệu hiệu quả như không gian, băng thông mạng và CPU.Yêu cầu chức năng cần thiết để xác định các đặc trưng phần cứng và phầnmềm cũng như thông tin về tình trạng tải như không gian sẵn có và băngthông sẵn dùng.

- Tài nguyên mạng: Cơ chế quản lý cung cấp công cụ điều khiển, phân

bổ tài nguyên mạng (như cơ chế ưu tiên, xếp hàng, đặt chỗ) cung cấp công cụ

để xác định đặc trưng mạng và tải

- Mã kho: đây là thuộc tính của cơ chế quản lý tài nguyên lưu trữ để

quản lý phiên bản và mã đối tượng trong kho dữ liệu

- Bảng danh mục: đây là đặc trưng của cơ chế quản lý tài nguyên lưu trữ

để cung cấp công cụ truy vấn và các hoạt động xử lý dữ liệu

1.2.3.2.Tầng kết nối: Giao tiếp dễ dàng và an toàn

Tầng kết nối định nghĩa lõi truyền thông và xác thực yêu cầu giao thứccho mạng cụ thể Giao thức truyền thông cho phép trao đổi dữ liệu giữa cáctầng tài nguyên lớp Fabric Chứng thực các giao thức được xây dựng trên cácdịch vụ truyền thông để cung cấp cơ chế bảo mật, xác minh định danh củangười dùng và tài nguyên Yêu cầu truyền thông bao gồm các tầng giao vận,định tuyến và định danh

Khi xem xét đến khía cạnh bảo mật của tầng kết nối, thấy được sự phứctạp của bài toán bảo mật, quan trọng các giải pháp được xây dựng dựa trên cơ

sở chuẩn đã sẵn có, trong truyền thông nhiều chuẩn được phát triển trong cácngữ cảnh của từng giao thức internet

Giải pháp chứng thực trong môi trường của tổ chức ảo VO có những đặctrưng sau:

Trang 15

- Đăng nhập đơn: người sử dụng chỉ đăng nhập một lần và có thể truy

cập vào nhiều tài nguyên lưới được định nghĩa trong tầng Fabric mà không có

sự can thiệp nào khác

- Sự ủy quyền: người dùng có thể cho phép một chương trình có thể chạy

trên tài nguyên của người được uỷ quyền Tùy theo điều kiện sử dụng mà chophép ủy quyền một phần hoặc toàn bộ đến chương trình khác

- Tích hợp với các giải pháp bảo mật địa phương khác: mỗi vị trí hoặc

tài nguyên nhà cung cấp có thể dùng bất kỳ giải pháp bảo mật địa phươngkhác nhau Các giải pháp bảo mật lưới phải có thể tương thích với các giảipháp bảo mật địa phương khác nhau này Trong thực tế họ không cần phảithay thế toàn bộ các giải pháp địa phương nhưng phần nào đó phải ánh xạđược chúng đến môi trường địa phương

- Người dùng và quan hệ tin cậy: để cho người dùng sử dụng tài nguyên

từ nhiều nhà cung cấp đồng thời, hệ thống bảo mật không yêu cầu mỗi tàinguyên của nhà cung cấp hợp tác hoặc tương tác lẫn nhau trong cấu hình môitrường bảo mật, ví dụ người dùng được phép sử dụng hai site A và site B,người sử dụng có thể dùng A và B cùng nhau mà không yêu cầu tương tác lẫnnhau trong quản lý bảo mật

1.2.3.3.Tầng resource: chia sẻ đơn tài nguyên.

Tầng tài nguyên được xây dựng trên tầng kết nối truyền thông và xácthực giao thức để định nghĩa giao thức (API và SDK) cho sự bắt đầu chắcchắn, theo dõi và điều khiển các hoạt động chia sẻ trên nguồn tài nguyênriêng lẻ Lớp tài nguyên thi hành các giao thức gọi đến các chức năng lớpFabric để truy cập và điều khiển tài nguyên địa phương Giao thức của lớpnày liên quan toàn bộ với nguồn tài nguyên riêng lẻ và do đó phớt lờ đưa ratrạng thái tổng thể

Trang 16

Có hai vấn đề chính đáng chú ý trong lớp tài nguyên là:

+ Thông tin giao thức: thường quan sát thông tin về kiến trúc và trạng

thái của tài nguyên, ví dụ: cấu hình, tải hiện tại và chính sách bảo mật

+ Quản lý giao thức: để thương lượng truy xuất đến nguồn tài nguyên

chia sẻ, yêu cầu tài nguyên (điều kiện hạn chế, chất lượng dịch vụ) và cáchoạt động sẽ được thực hiện như tạo tiến trình hoặc truy xuất dữ liệu, quản lýcác giao thức chịu trách nhiệm thông dịch các mối quan hệ chia sẻ và đảmbảo rằng yêu cầu giao thức phù hợp với chính sách nguồn tài nguyên Phươngthức cũng có thể hỗ trợ quản lý tình trạng của các hoạt động và điều khiểnchúng như kết thúc, chờ,

1.2.3.4.Tầng Collective: Điều phối nhiều nguồn tài nguyên

Trong khi tầng tài nguyên tập trung vào tương tác với nguồn tài nguyênđơn, tầng tiếp theo trong kiến trúc chứa các giao thức và dịch vụ (API, SDK),

nó không liên kết với một tài nguyên cụ thể nào

- Dịch vụ thư mục: cho phép người tham dự tổ chức ảo (VO) khám phá

sự tồn tại hoặc thuộc tính nguồn tài nguyên VO Dịch vụ thư mục cho phépngười dùng truy vấn tài nguyên bằng tên, thuộc tính, kích thước

- Dịch vụ phân bổ, lập lịch và trung gian: cho phép người tham gia VO

yêu cầu chỉ định một hoặc nhiều nguồn tài nguyên cho quyết định cụ thể nào

đó và lập lịch công việc thích hợp trên nguồn tài nguyên

- Dịch vụ giám sát và chẩn đoán: hỗ trợ quản lý VO hỏng hóc, phát hiện

tấn công, quá tải

- Dịch vụ nhân rộng dữ liệu: hỗ trợ quản lý tài nguyên lưu trữ để tối đa

thực hiện truy xuất dữ liệu, chú ý đến thời gian trả lời, độ tin cậy và chi phí

Trang 17

- Cho phép lập trình hệ thống: cho phép các mô hình lập trình quen

thuộc sử dụng được trên môi trường lưới Sử dụng dịch vụ lưới khác nhaukhai thác địa chỉ, bảo mật, định vị tài nguyên

- Dịch vụ phần mềm khai thác: phát hiện và lựa chọn công cụ phần mềm

tốt nhất và nền tảng thực hiện dựa trên các thông số của các bài toán đã đượcgiải quyết trước đó

- Dịch vụ ủy quyền chung: thực thi chính sách quản lý truy cập tài

nguyên, tạo ra khả năng các thành viên chung có thể truy cập tài nguyên cộngđồng Các máy chủ này cung cấp dịch vụ thực thi chính sách tổng thể bằngcách xây dựng trên tài nguyên thông tin: giao thức quản lý tài nguyên tronglớp Resource và giao thức bảo mật trong lớp kết nối

- Dịch vụ cộng tác viên: hỗ trợ phối hợp trao đổi thông tin giữa người

dùng có tiềm năng trong cộng đồng

1.2.3.5.Tầng Applications: tầng ứng dụng

Tầng cuối cùng trong kiến trúc bao gồm các ứng dụng người dùng, cácứng dụng này hoạt động trong môi trường ảo Hình H2 minh họa lập trình ứngdụng trong kiến trúc lưới

SDK là công cụ cụ thể của API, API này lần lượt được sử dụng tronglưới tác động với dịch vụ mạng để cung cấp khả năng cho người dùng đầucuối SDK ở mức cao có thể cung cấp một chức năng mà không cần sử dụngmột số giao thức cụ thể nào -trong suốt trong lập trình và có thể kết hợp vớiviệc gọi các API như là công cụ địa phương (xem Hình 1.2)

Trang 18

Hình 1.2 Kiến trúc lập trình trong điện toán lưới

1.2.4.Mối quan hệ với công nghệ khác.

- World Wide Web: sự phổ biến rộng khắp của công nghệ web với các

giao thức TCP/IP, HTTP, SOAP và các ngôn ngữ HTML,XML đã tạo nênnền tảng hỗ trợ cho môi trường VO và ứng dụng trên đó Tuy nhiên côngnghệ này thực hiện khá tốt trên mô hình tương tác khách-chủ, còn trongmôi trường VO yêu cầu cũng khác và có phần phức tạp hơn nên công nghệnày chỉ đóng vai trò hỗ trợ mà thôi, ví dụ các trang web ngày nay thường

sử dụng phương thức TLS để chứng thực, nhưng nó không hỗ trợ đơn đăngnhập hoặc cơ chế ủy thác

- Nhà cung cấp dịch vụ ứng dụng và lưu trữ: cung cấp dịch vụ ứng dụng

và lưu trữ, tương tự các công ty cho thuê hosting hiện nay họ cung cấp cácdịch vụ lưu trữ như MSSQL, MySQL, File, và các ứng dụng hỗ trợ thao tácnhư ASPs, JSPs, Python,…một khách hàng thương lượng thỏa thuận dịch vụ

để truy xuất đến cả phần cứng và phần mềm Bảo mật có xu hướng ứng dụngcông nghệ VPN được mở rộng từ mạng nội bộ LAN không giới hạn về địa lýnhưng vẫn đảm bảo các giao thức và bảo mật trong mạng LAN Các dịch vụ

Trang 19

cung cấp hiện tại như lưu trữ tập tin, cập nhật dữ liệu vào cơ sở dữ liệu hệquản đều được kiểm soát bởi tên đăng nhập, mật khẩu và các xác thực người

sử dụng, đây là cách làm hiện tại và nó khó khăn trong môi trường ảo VO

1.3.Điện toán đám mây

1.3.1.Định nghĩa điện toán đám mây

Theo tổ chức IEEE đã định nghĩa về điện toán đám mây như sau:

"Nó là hình mẫu trong đó thông tin được lưu trữ thường trực tại các máy chủ trên Internet và được lưu trữ tạm thời ở các máy khách, bao gồm máy tính cá nhân, trung tâm giải trí, máy tính trong doanh nghiệp, các phương tiện máy tính cầm tay, "

Theo Ian Foster:

“Một mô hình điện toán phân tán có tính thay đổi lớn theo hướng co dãn về mặt kinh tế, là nơi có sức mạnh tính toán, kho lưu trữ, các nền tảng và các dịch vụ được trực quan, ảo hóa và thay đổi linh động, sẽ được phân phối theo nhu cầu cho các khách hàng thông qua Internet” [3]

“Mây là hình mẫu mà ở đó các tài nguyên ảo dễ dàng sử dụng và truy xuất (như phần cứng, phần mềm, nền tảng phát triển và dịch vụ) Những nguồn tài nguyên này có thể tự cấu hình lại để điều chỉnh biến tải, cho phép tối

ưu nguồn tài nguyên sử dụng Nguồn tài nguyên khổng lồ này được khai thác bằng cách trả chi phí cho mỗi dịch vụ khi dùng, trong đó nó được đảm bảo bởi nhà cung cấp hạ tầng bằng các thỏa thuận cấp độ tùy biến dịch vụ ” [6]

1.3.2.Đặc trưng điện toán đám mây.

Điện toán đám mây có những đặc trưng sau:

- Giá thành thấp: hạ tầng thông tin được cấp bởi bên thứ 3, thông thường

người dùng không sử dụng thường xuyên cho công việc lưu trữ và tính toán,

Trang 20

khi cần họ có thể đăng ký và sử dụng tài nguyên của đám mây và trả những gìmình đã dùng, theo kiểu dùng đến đâu trả đến đó.

- Gia tăng khả mở rộng: môi trường điện toán đám mây cho phép người

dùng truy cập và bổ sung thêm tài nguyên tính toán theo nhu cầu

- Độ tin cậy và khả năng chịu lỗi: môi trường đám mây tận dụng được số

lượng lớn các máy chủ có cấu hình mạnh nhàn rỗi, tạo nên mức độ sẵn sàngcao và độ tin cậy cho các ứng dụng

- Dịch vụ hướng đối tượng: cho phép kết nối dễ dàng giữa các dịch vụ và

các công nghệ làm nền tảng của ứng dụng, tách các chức năng thành các đơn

vị riêng biệt hoặc dịch vụ, nhà phát triển truy cập qua mạng để kết hợp và tái

sử dụng mỗi khi phát triển hoặc nâng cấp ứng dụng

- Nền tiện ích: người dùng chỉ trả cho những gì họ sử dụng, cho mỗi lần

sử dụng hoặc đăng ký

- Ảo hóa: một số lượng lớn tài nguyên được cung cấp và sẵn sàng trong

vài phút thay vì vài ngày hoặc vài tuần Nhà phát triển có thể truy xuất lại tàinguyên này thông qua cổng thông tin và sử dụng chúng ngay lập tức

- Thỏa thuận mức dịch vụ: đám mây được quản lý động trên cơ sở thỏa

thuận dịch vụ dựa vào lựa chọn bảo mật, giá cả, băng thông, tốc độ xử lý,…

- Giao diện người dùng làm trung tâm: dịch vụ đám mây cho phép tương

tác với dịch vụ, độc lập về vị trí, không làm thay đổi thói quen sử dụng, cácmáy khách không đòi hỏi cài đặt các ứng dụng phức tạp, mà có thể truy xuấttốt thông qua dịch vụ có sẵn thông qua trình duyệt

- Cung cấp dịch vụ theo yêu cầu: điện toán đám mây cung cấp tài nguyên

và dịch vụ cho người dùng theo yêu cầu, người dùng có thể tùy chỉnh yêu cầu

Trang 21

nếu không muốn giữ các thiết đặt trước đó như: cài đặt phần mềm, cấu hìnhmạng, “root” đặc quyền.

- Đảm bảo chất lượng dịch vụ: môi trường đám mây cung cấp chất lượng

dịch vụ đảm bảo cho người dùng như tốc độ CPU, băng thông và kích thước

bộ nhớ

- Hệ thống tự động điều chỉnh: điện toán đám mây là một hệ thống tự

điều khiển và quản lý trong suốt đến người dùng Phần cứng, phần mềm, dữliệu trong đám mây có thể tự động cấu hình lại, phối hợp và hợp nhất nền tảngduy nhất cung cấp đến người dùng

- Trả tiền khi bạn dùng: chi phí cho hạ tầng được thanh toán khi sử dụng,

như CPU dùng trong 1 giờ, %CPU sử dụng, lưu trữ bao nhiêu và trong thờigian vận hành trong bao lâu

1.3.3.Kiến trúc điện toán đám mây

Ian Foster và cộng sự đề xuất mô hình gồm 4 lớp như sau:

Hình 1.3 Kiến trúc điện toán đám mây

Lớp Fabric: là lớp cung cấp tài nguyên phần cứng như tài nguyên tính

toán, lưu trữ và tài nguyên mạng

Trang 22

Lớp Unified Resource: là lớp chứa tài nguyên ở mức trừu tượng, ảo

hóa, chúng có thể tiếp xúc với lớp phía trên và người sử dụng đầu cuối như lànguồn tài nguyên tích hợp, ví dụ một máy tính, cụm máy tính, hệ thống tập tin

ở mức logic, một hệ thống cơ sở dữ liệu

Lớp Platform: thêm vào tập công cụ chuyên dụng, phần mềm trung

gian,…các dịch vụ ở lớp Unified Resource cung cấp để phát triển khả năngtương tác, triển khai như dịch vụ web hosting, dịch vụ lập lịch

Application: lớp này chứa các ứng dụng chạy trên nền đám mây.

1.4.Mối quan hệ giữa điện toán lưới và điện toán đám mây.

Mối quan hệ giữa điện toán lưới và điện toán đám mây được giới thiệutổng quan qua sơ đồ bên dưới, một hệ thống phân tán hình thành từ các máytính hoặc các siêu máy tính liên kết với nhau

Hình 1.4 Mối quan hệ của Điện toán lưới và Điện toán đám mây

Sử dụng nhiều máy tính kết với nhau và nhiều thiết bị lưu trữ trên mộtnền dịch vụ nhất định làm cho người dùng có cảm giác làm việc duy nhất vàtrong suốt, các máy tính kết mối thành cụm máy tính thường được tạo ta đểgiải các bài toán song song với chi phí thấp, công nghệ web 2.0 cho phép

Trang 23

người dùng tương tác với tài nguyên và thực thi ứng dụng thông qua trìnhduyệt tương đối dễ dàng.

Điện toán đám mây được thừa hưởng các công nghệ hiện có và có nhiềuđiều khác biệt, kế thừa gần gũi nhất là công nghệ điện toán lưới, có thể nóitính toán lưới chồng chéo với điện toán đám mây trong phần hướng dịch vụ,nhưng điện toán đám mây có phần hướng dịch vụ mạnh mẽ hơn dựa trên nềntảng web 2.0

Nhìn chung điện toán đám mây hình thành từ điện toán lưới, ảo hóa, tiệních tính toán và phần mềm xem như dịch vụ (SaaS) Thực thế này làm điệntoán đám mây và điện toán lưới có nhiều sự tương đồng, liên quan chặt chẽvới nhau trong kiến trúc và công nghệ

Trong thực tế, đám mây được phát triển dựa trên nền tảng vốn có củađiện toán lưới hơn một thập kỷ qua với cố gắng chuẩn hóa, bảo mật, quản trịtài nguyên và hỗ trợ ảo hóa

Mây và lưới khác nhau ở các khía cạnh: bảo mật, mô hình lập trình, môhình thương mại, mô hình tính toán, mô hình dữ liệu, ứng dụng và sự trừutượng hóa tài nguyên Điện toán đám mây có thể thấy như là bước tiếp theocủa một hình lưới thương mại (grid-utility) Công nghệ tính toán lưới hiện đại

mở ra cách khai thác giá rẻ các dịch vụ trong các trung tâm dữ liệu để giảiquyết các bài toán doanh nghiệp

Trang 24

Chương 2

LẬP LỊCH VÀ HỆ THỐNG QUẢN LÝ LUỒNG CÔNG VIỆC 2.1 Giới thiệu luồng công việc và hệ thống quản lý

2.1.1 Định nghĩa luồng công việc

“Luồng công việc là một quá trình tự động hóa công việc, một phần hoặc toàn bộ thông tin hoặc các nhiệm vụ được truyền từ đối tượng tham gia này sang đối tượng khác để hành động tuân theo một tập hợp quy tắc nhất định”.

Quản lý luồng công việc là kỹ thuật được phát triển nhanh chóng và giatăng khai thác trong nhiều ngành công nghiệp, đặc điểm chính là tự động xử

lý bao gồm sự phối hợp hoạt động của con người và máy tính, đặc biệt là sựtương tác giữa các ứng dụng và công cụ trong công nghệ thông tin

2.1.2 Kiến trúc hệ thống quản lý luồng công việc

Hệ thống quản lý được minh họa như hình bên dưới [4]:

+Workflow Engine: là một phần mềm dịch vụ cung cấp môi trường để

khởi tạo và thực thi luồng công việc và có các nhiệm vụ chính sau đây [4]:

- Diễn giải tiến trình.

- Kiểm soát điều khiển như: tạo, kích hoạt, tạm, kết thúc…

- Dẫn đường cho các quá trình hoạt động, tuần tự hay song song, thời

hạn lập lịch, diễn giải dữ liệu hợp lệ của luồng công việc

- Đăng nhập và đăng xuất của người dùng.

- Xác định hạng mục công việc và giao diện để hỗ trợ người dùng

tương tác

Trang 25

- Bảo trì, điều khiển và tích hợp dữ liệu hợp lệ của luồng công việc,

truyền các dữ liệu đó đi hoặc tới ứng dụng người dùng

- Cung cấp giao diện để gọi ứng dụng bên ngoài vào và liên kết dữ liệu

công việc liên quan

- Giám sát hành động để điều khiển, quản lý và kiểm soát luồng công việc

Hình 2.1 Hệ thống quản lý luồng công việc

+ Process Definition: cung cấp công cụ để biểu diễn luồng công việc, tự

động hóa các thao tác, được dùng bởi các nhà thiết kết quy trình nhằm tạo ra

và biểu diễn một quy trình nghiệp vụ, bao gồm tất cả các quy trình liên quanđến dữ liệu

+Workflow Interoperability: giao diện hỗ trợ để tương tác giữa các luồng

khác trong hệ thống

+ Invoked Applications: giao diện để hỗ trợ tương tác với các ứng dụng

thông tin khác

Trang 26

+ Workflow Client Applications: giao diện hỗ trợ tương tác với người

sử dụng

+ Administration and Monitoring: giao diện của hệ thống giám sát nơi

cung cấp các số liệu để tạo điều kiện quản lý nhằm hợp nhất, điều khiển luồngứng dụng

Chúng ta có thể thấy lập lịch là một chức năng quan trọng của WorkflowEngine, nó là phần quan trọng của hệ thống quản lý luồng công việc

2.1.3.Một số hệ thống quản lý luồng công việc hiện tại.

2.1.3.1.Hệ thống quản lý Client- Server

Được sử dụng từ rất sớm của quá trình phát triển hệ thống quản lý côngviệc, client-server một kiến trúc có nhiều ưu điểm cho hệ thống quản lý luồng,kiến trúc này có lợi thế máy khách ít, giám sát và kiểm tra tập trung, đơn giảntrong cơ chế đồng bộ hóa, nhân bản trạng thái xử lý, dễ dàng thiết kế, thựchiện và triển khai luồng công việc Tuy nhiên, mô hình này cũng lộ ra nhữngkhó khăn như hiệu suất thấp, độ tin cậy và khả năng mở rộng thấp

2.1.3.2.Hệ thống quản lý Peer- to- Peer

Điểm quan trọng của kiến trúc này là trong mạng tất cả các máy tham giađều đóng góp tài nguyên, bao gồm băng thông, lưu trữ, và khả năng tính toán

Do đó khi càng có nhiều máy tham gia mạng thì khả năng tổng thể của hệthống mạng càng lớn Ngược với cấu trúc máy chủ-máy khách, nếu số lượngmáy chủ là cố định, thì khi số lượng máy khách tăng lên khả năng chuyển dữliệu cho mỗi máy khách sẽ giảm xuống

Tính chất phân tán của mạng đồng đẳng cũng giúp cho mạng hoạt độngtốt khi một số máy gặp sự cố Đối với cấu trúc tập trung, chỉ cần máy chủ gặp

sự cố thì cả hệ thống sẽ ngưng trệ

Trang 27

2.1.3.3.Hệ thống quản lý luồng công việc trong điện toán lưới

Công việc quản lý luồng công việc trên điện toán lưới gồm có ba thànhphần [5]

Hình 2.2 Thành phần hệ thống quản lý luồng công việc

Workflow Editor: là giai đoạn đầu của hệ thống, giao diện của nó có thể

dựa trên nền web, giao diện đồ họa hoặc dòng lệnh Nó cho phép người sửdụng đưa vào lưới các thông tin và tham số, yêu cầu tài nguyên để giải quyết

bài toán, workflow editor sẽ tạo ra một tập tin cấu hình thường là xml và gửi

đến tất cả các điểm trên lưới

Admin Console là giao diện kết nối với workflow engine, đó là thành

phần cốt lõi của hệ thống, nó tạo thứ tự để mô tả công việc bằng ngôn ngữ màlưới hiểu được và workflow engine sử dụng mô tả này để thực thi công việc

thông qua WMF, Admin console duy trì thông tin mỗi người dùng, lắng nghe

yêu cầu từ người dùng, thông báo thành công hoặc thất bại của luồng côngviệc và gửi kết quả và lỗi đến người dùng cụ thể

Workflow Management Framework-WMF: là tập hợp các API quản lý

thực thi công việc tại các tài nguyên đầu cuối

Thiết kế hệ thống quản lý công việc gồm có những đặc trưng sau đây:

Trang 28

- Tính mềm dẻo: các thành phần được thiết đặt trong thiết kế sao cho tối

thiểu giữa cặp thành phần, có nghĩa dễ dàng thay đổi một thành phần màkhông ảnh hưởng đến các thành phần khác

- Khả năng tương tác: thiết kế lõi của các thành phần dựa trên chuẩn mở

và các thông số kỹ thuật JAVA, XML thường được dùng để lập trình và traođổi dữ liệu trên lưới

- Khả năng mở rộng: cho phép bổ sung nhiều chức năng vào các lớp

trong kiến trúc

2.1.3.4 Hệ thống quản lý luồng công việc trong điện toán đám mây

Trong những năm gần đây, hệ thống quản lý luồng công việc được ứngdụng trong nhiều lĩnh vực khoa học, cung cấp nhiều mô hình khác nhau dựavào cấu trúc, quy trình lập lịch, quản lý lỗi và môi trường dữ liệu Chúng cónhững đặc điểm và phân loại cách tiếp cận khác nhau để xây dựng và thực thiluồng trên đám mây [6]

Lợi ích chuyển từ điện toán lưới sang điện toán đám mây đó là khả năng

mở rộng hệ thống, tài nguyên của đám mây luôn sẵn sàng khi có các ứngdụng yêu cầu Các ứng dụng trong lĩnh vực kỹ thuật sử dụng mô hình luồngcông việc gồm có: quản lý nhiệm vụ, yếu tố dữ liệu, thứ tự điều khiển và độc

lập dữ liệu Hệ thống quản lý luồng công việc chịu trách nhiệm quản lý và

thực thi luồng, xây dựng luồng công việc được thực hiện theo hướng sau:

- Mô tả công việc thông qua giao diện đồ họa hoặc ngôn ngữ riêng

- Tự động hóa dữ liệu xử lý, trao đổi giữa các thành phần

- Nâng cao hiệu năng tính toán bằng cách phân phối tài nguyên và phốihợp chúng

- Quản lý nguồn gốc phát hành và truy vấn

Trang 29

Để rõ hơn, ta nghiên cứu mô hình quản lý luồng có tên Cloudbus đượcnghiên cứu tại phòng thí nghiệm trường University of Melbourne mô hìnhnày gồm ba phần chính:

- Giao diện người sử dụng

- Nhân/lõi

- Trình cắm

Giao diện người dùng cho phép làm việc với các thành phần luồng, kếhoạch thực thi luồng, phân quyền và theo dõi thực hiện Thông qua web hoặcứng dụng được cài đặt ở máy người sử dụng đầu cuối, người ta dùng tài liệuxml để xây dựng các thành phần của luồng, người sử dụng định nghĩa tínhchất công việc và liên kết chúng trên cơ sở sự phụ thuộc dữ liệu giữa chúng,các thông tin về luồng được phân tích bởi hệ thống lập lịch công việc, và cácnhiệm vụ được giao để thực thi và giám sát chúng cho đến khi hoàn thành.Các thành phần trong lõi chịu trách nhiệm quản lý thực thi luồng, thôngdịch tài liệu cấu hình do người dùng cung cấp để mô tả nhiệm vụ và các thựcthể dữ liệu

Trình cắm hỗ trợ luồng thực thi trên các môi trường và nền tảng khácnhau, hệ thống đang xét có trình cắm để truy vấn nhiệm vụ và dữ liệu đặctrưng (siêu dữ liệu, tập tin lưu vết, ) truyền dữ liệu đi và đến nguồn tàinguyên (chuyển đổi giao thức, lưu trữ và nhân bản dịch vụ) quản lý trạng tháithực thi của nhiệm vụ và ứng dụng

2.2.Giới thiệu một số phương pháp lập lịch luồng công việc.

Lập lịch luồng công việc là một trong những nhiệm vụ chính của hệthống quản lý luồng công việc trong cả hệ thống lưới và đám mây, nó vạch ra

và quản lý thực thi các nhiệm vụ phụ thuộc tương tác trên tài nguyên phân

Trang 30

tán Phân bố thích hợp tài nguyên đến luồng nhiệm vụ, để hoàn thành nhiệm

vụ với sự hài lòng các yêu cầu của người dùng

Một lịch thích hợp có thể có ảnh hưởng lớn đến sự thực hiện của hệthống Tuy nhiên trong trường hợp chung bài toán ánh xạ nhiệm vụ vào tàinguyên thuộc vào lớp các bài toán NP-khó Chưa có thuật toán có thể tối ưugiải pháp trong thời gian đa thức, mặc dầu bài toán lập lịch luồng công việc

có thể giải quyết bằng cách sử dụng phương pháp tìm kiếm vét cạn nhưng độphức tạp của cách giải quyết này là rất lớn Trong môi trường lưới lịch đượctạo ra trong thời gian ngắn nhất có thể, bởi vì có nhiều người sử dụng cần đếntài nguyên

Cho đến nay có hai loại lập lịch công việc chính, đó là phương pháp nỗlực tốt nhất (Best-effort) và ràng buộc chất lượng dịch vụ (QoS constrains),được thực hiện bởi hệ thống quản lý công việc

2.2.1.Các phương pháp nỗ lực tốt nhất.

Phương pháp lập lịch công việc dựa vào nỗ lực tốt nhất là cố gắng hoànthành thực thi nhiệm với thời gian sớm nhất, cũng như thời gian thực thi giữanhiệm vụ đầu tiên và nhiệm cuối cùng trong chuỗi công việc là nhỏ nhất

2.2.1.1 Thuật toán lai

Một luồng công việc có thể biểu diễn bằng một đồ thị có hướng không

có chu trình G=(T,E), trong đó T là tập các đỉnh và E là tập các cung, trọng sốcủa nút ti để biểu thị chi phí tính toán, được kí hiệu w(ti) Mỗi cung (ti,tj) cói<j có trọng số biểu diễn chi phí truyền thông, được kí hiệu là c(ti,tj) Một cặpcạnh với đỉnh có cung đi ra được gọi là nút cha và nút còn lại gọi là nút concủa nó, đỉnh không có cung vào được gọi là nút thu và nút không có cung rađược gọi là nút thoát Các thuật toán được thiết kế theo hai hướng: giải quyếtcác nhiệm vụ độc lập bằng các song song hóa, giải quyết các nhiệm vụ phụ

Trang 31

thuộc lẫn nhau trên môi trường tính toán phân tán sao cho thời gian hoànthành các nhiệm vụ phụ thuộc này là sớm nhất dựa trên cơ sở phân tích cácphụ thuộc trên đồ thị DAG-G [7]

Ý tưởng của phương pháp này đề xuất lập lịch trên DAG-G với hệ thốngkhông đồng nhất, trước hết thuật toán thực hiện tính toán giá trị thứ hạng củamỗi nhiệm vụ và sắp xếp tất cả nhiệm vụ theo thứ tự giảm dần theo giá trịhạng của nó, khi thuật toán tạo ra nhóm của các nhiệm vụ độc lập, nó đi xử lýcác nhiệm vụ theo thứ tự và thêm nhiệm vụ đó vào nhóm hiện tại, một lần nótìm thấy nhiệm vụ phụ thuộc vào bất kỳ nhiệm vụ trong nhóm thì nó sẽ tạo ranhóm mới Kết quả là số lượng các nhóm có các nhiệm vụ độc lập được sinh

ra, số nhóm phân chia dựa trên xếp hạng giá trị của nhiệm vụ, nhờ vào cáchphân nhóm này mà hệ thống đưa ra chiến lược lập lịch và song song hóa cáctiến trình

2.2.1.2 Thuật toán TANH

Trước tiên nó đi qua tất cả các nút trong đồ thị để tính toán các tham sốcủa mỗi nút bao gồm cả thời gian bắt đầu sớm nhất và thời gian hoàn thành,thời gian bắt đầu chậm nhất và thời gian hoàn thành, tài nguyên tốt nhất vàcấp độ nhiệm vụ Sau đó thuật toán phân nhóm nhiệm vụ dựa trên nhữngtham số này Các nhiệm vụ trong cùng một nhóm được đề nghị lập lịch trêncùng tài nguyên Nếu số lượng các nhóm lớn hơn số lượng nguồn tài nguyên,thì nó thực hiện giảm các nhóm xuống bằng cách sát nhập một số nhóm lạivới nhau Mặt khác, nó dùng thời gian nhàm rỗi của các tài nguyên để trùnglặp nhiệm vụ và sắp xếp lại nhiệm vụ theo thứ tự để giảm thời gian thực thitổng thể

Trang 32

2.2.1.3.Thuật toán DCP-G

Cho đồ thị nhiệm vụ, biên dưới và trên của của thời gian bắt đầu sớmnhất và thời gian bắt đầu muộn nhất cho nhiệm vụ được kí hiệu tương ứng làAESTvà ALST Trong thuật toán DCP-G một nhiệm vụ được xem xét là tớihạn nếu AEST và ALST của nó có giá trị bằng nhau Một trong những nhiệm

vụ tới hạn được chọn để lên lịch, sau khi nhận ra nhiệm vụ tới hạn, thuật toánlựa chọn nguồn tài nguyên cung cấp thời gian thực hiện nhiệm vụ nhỏ nhất,phát hiện tài nguyên này bằng cách đi kiểm tra tất cả tài nguyên sẵn dùng màgiảm thiểu thời gian bắt đầu của các nhiệm vụ con tới hạn trên cùng nguồn tàinguyên, ở đây nhiệm vụ con tới hạn là nhiệm vụ có sự khác biệt nhỏ nhấtgiữa AEST và ALST trong tất cả nhiệm vụ tới hạn Cuối cùng nhiệm vụ tớihạn được ánh xạ đến nguồn tài nguyên nào cung cấp thời gian bắt đầu làsớm nhất

2.2.1.4.Thuật toán FCP

Ý tưởng được đưa ra nhằm giảm độ phức tạp trong lập lịch nhiệm vụ,diễn ra trong khi thực hiện bảo trì lập lịch, độ phức tạp này có chiều hướnggiảm xuống bằng cách duy trì cố định kích thước của danh sách được sắp xếpcác nhiệm vụ sẵn sàng, những nhiệm vụ khác được lưu trữ trong danh sáchchưa được sắp xếp kiểu FIFO với thời gian truy xuất O(1), khi một nhiệm vụtrở nên sẵn sàng nó thêm vào danh sách đã được sắp xếp SL nếu còn chỗ đểđiều tiết nhiệm vụ này, nếu không thì đưa vào FIFO Các nhiệm vụ thườngxuyên lấy ra từ SL Sau thao tác lấy ra, nếu danh sách FIFO là không rỗng,một nhiệm vụ được chuyển đến SL Độ phức tạp của sắp xếp nhiệm vụ sửdụng danh sách có kích thước H giảm xuống cỡ O(HlogH) cho tất cả nhiệm

vụ đưa vào và lấy ra trong SL[8]

Trang 33

Tuy nhiên, một hạn chế có thể xảy ra khi sử dụng kích thước cố định chodanh sách sắp xếp là nhiệm vụ với ưu tiên cao nhất có thể không chứa trongdanh sách SL, nhưng chứa tạm thời trong danh sách FIFO Vì vậy kích thướccủa danh sách SL đủ lớn để không ảnh hưởng nhiều đến hiệu suất của thuậttoán Đồng thời, nó không quá lớn khi xem xét độ phức tạp thuật toán Kíchthước danh sách chừng P với P là số bộ vi xử lý là lựa chọn tốt cho thuật toánFCP Kích thước bé tỏ ra bất lợi với song song hóa, trong khi kích thước lớnkhông mang lại cải thiện được là bao nhiêu.

2.2.1.5 Thuật toán AGS

Quan điểm quan trọng của thuật toán này là cách tổ chức hồ sơ đặt trước.Thuật toán sẽ khởi tạo sẵn sàng trong trường hợp tất cả nút tính toán là sẵnsàng cho lập lịch công việc Nếu vài nút đã được đặt trước khoảng thời giannhất định bởi chủ nhân nguồn tài nguyên hoặc bởi công việc khác, vốn đãđược bố trí đến các nút tính toán, trong chu kỳ gần nhất của lập lịch, tập tin hồ

sơ sẽ chứa thông tin

Thời gian bắt đầu được định rõ cho mỗi nhiệm vụ, thời gian bắt đầu

được nhận ra bằng thời gian kết thúc xử lý của nút cha sau cùng.

Nút có nút cha sau cùng đã xử lý xong được nhận biết Độ trễ trong chuyển dữ liệu từ nút cha đến nút khác được tính toán và thời gian bắt đầu

thực hiện được cập nhật Nếu nút tính toán là sẵn sàng từ khi cập nhật thờigian bắt đầu của nhiệm vụ đến hết thời gian xử lý nhiệm vụ thì nhiệm vụđược phân bố cho các nút

Tuy nhiên, để thời gian bắt đầu mỗi nút được tính toán lại sau khi ước

lượng độ trễ từ tất cả các nút cha đã xử lý Sử dụng cập nhật thời gian bắt đầu,

thời gian kết thúc của tiến trình cho nút đã tìm thấy Ngoài tất cả nút sẵn sàng,

Trang 34

nhiệm vụ được ánh xạ đến các nút tính toán mà thời gian kết thúc là sớm nhất,sau khi ánh xạ hồ sơ được cập nhật.

2.2.1.6 Thuật toán WMM

Mục đích chính thuật toán là đi nhận ra lựa chọn tối ưu với quan tâm đếnyêu cầu chất lượng dịch vụ đưa ra bởi người dùng và nhà cung cấp dịch vụ.Các bước chính được mô tả tóm tắt dưới đây:

(1)Tính toán giá trị hỗ trợ: hướng dẫn để thuật toán hoàn thành, theo đóđịnh nghĩa số liệu về mức độ đặc trưng của chất lượng dịch vụ

(2)Khởi tạo ánh xạ luồng công việc đáp ứng yêu cầu người dùng màkhông vi phạm ràng buộc chi phí

(3)Xác định ứng viên cho mỗi loại dịch vụ, lý do cho bước này là khámphá ra một ứng viên cung cấp chất lượng dịch vụ mức cao cho mỗi loại dịch

vụ trong luồng công việc

(4)Tạo một danh sách với các ứng viên tốt nhất cho mỗi loại dịch vụtheo đó để tìm kiếm khả năng thay thế

(5)Lên kế hoạch cho phép nhiều hơn một thể hiện dịch vụ để chọn ra

mỗi loại dịch vụ và thiết đặt đáp ứng ràng buộc thời gian của người sử dụng

2.2.1.7.AWS

Tư tưởng chính của phương pháp, khi hệ thống lập lịch nhận được côngviệc, nó duyệt qua công việc trong đồ thị biểu diễn công việc DAG-G để tínhgiá trị CCR và số lượng N nhóm tài nguyên, ở đây CCR là tỷ số chi phítruyền thông và tính toán, nó là tỷ số trung bình của chi phí tính toán trên chiphí truyền thông CCR có giá trị lớn trên đồ thị có nghĩa nó có khả năng tínhtoán mạnh Khi hệ thống lập lịch chọn N nhóm tài nguyên có thứ hạng caonhất theo sự nhận biết của nó Lặp lại sự phân chia đồ thị kiểm tra các nút còn

Trang 35

lại trong G để nhận ra nút có thể đặt vào G’ Thuật toán đi tìm cung có giá trịtruyền thông lớn nhất mà hai đỉnh của cung chưa được kiểm tra Nếu khôngtồn tại cung như vậy, thì có nghĩa là tất cả các đỉnh chưa kiểm tra là các nút

cô lập của G’ và các nút khác, các nhiệm vụ này sẽ bị nhập vào đồ thị con nếuđược Mặt khác, nếu cung này có thể nhập vào G’, duyệt theo chiều sâu từ haiđỉnh của cạnh này sẽ đưa vào được nhiều nút hơn Mục tiêu của duyệt đồ thị

là hợp nhất nhiều nhiệm vụ có thể đến đồ thị con hiện tại mà không vi phạmràng buộc về giới hạn tài nguyên và thời gian, theo thứ tự ưu tiên trong cácnhiệm vụ để tránh mất kiểm soát không cần thiết mà không thể làm tăng songsong, nhưng có thể làm tăng nhóm truyền thông

Một ngăn xếp được sử dụng để thao tác các nút trong khi duyệt Nếucung này không thể nhập trong G’ dưới ràng buộc, nút có trách nhiệm sẽ đánhdấu ranh giới, với ý nghĩa là một đồ thị con mới được tạo ra Hệ thống lập lịchlặp lại cho đến khi tất cả các nút được ấn định đến nhóm tài nguyên Một khithuật toán kết thúc hệ thống lập lịch sẽ gửi đi mọi đồ thị con để lựa chọnnhóm tài nguyên

2.2.1.8 Thuật toán ASA

ASA đề xuất tìm kiếm trình tự thực hiện thích hợp cho luồng côngviệc bằng cách thêm cân nhắc ràng buộc chỉ định tài nguyên và mô hìnhđộng, thuật toán sử dụng nhiều giai đoạn phân tán để phù hợp với mô hìnhmạng động

Ý tưởng của thuật toán chia quá trình lập lịch ra làm 2 pha: (1) phânvùng logic và (2) phân bổ vật lý Điểm then chốt sau các giai đoạn là giảm bớt

độ phức tạp của bài toán lập lịch Bước phân vùng logic nhận biết phân vùngluồng hoạt động dựa trên cơ sở các giá trị thuộc tính tương tự nhau và phân

bổ vật lý ấn định phân vùng vào tài nguyên bằng cách sử dụng chính sách

Trang 36

ràng buộc Trong lúc đó, mạng thay đổi được cân nhắc trong ASA để tạo nênquy trình lập lịch mạnh mẽ và thích nghi.

2.2.1.9 Thuật toán HEFT.

Thuật toán HEFT bao gồm 3 pha: (1) pha trọng số: ấn định trọng số chocác nút và các cung trong luồng công việc; (2) pha sắp xếp: tạo ra danh sáchcông việc và sắp xếp chúng, tổ chức chúng theo thứ tự sao cho nó sẽ đượcthực hiện (3) pha ánh xạ: ánh xạ nhiệm vụ đến tài nguyên

Trong pha 1, trọng số được ấn định đến các nút và cung, trọng số ấn địnhđến nút được tính toán trên cơ sở ước tính thời gian thực thi nhiệm vụ vàtrọng số ấn định tới cung dựa trên ước tính thời gian truyền dữ liệu giữa cáctài nguyên

Pha sắp xếp được thực hiện từ dưới lên trong DAG-G và ấn định giá trịhạng cho mỗi nhiệm vụ Giá trị hạng bằng trọng số của nút cộng thêm thờigian thực hiện của nút kế sau nó, thời gian thực hiện nút kế sau được ướclượng và cho mỗi cung nối nút con, cộng thêm trọng số của nó đến giá trịhạng của nút kế sau và chọn giá trị có tổng lớn nhất

Trong pha ánh xạ, nhiệm vụ tiếp theo từ danh sách xếp hạng được ánh xạđến tài nguyên Với mỗi nhiệm vụ, tài nguyên nào cung cấp thời gian kết thúcsớm nhất thì được lựa chọn

2.2.1.10.Thuật toán GRASP.

Thuật toán GRASP thực hiện lặp lại nhiều lần, mỗi lần lặp nó tạo ra hai(1) pha xây dựng và (2) pha tìm kiếm địa phương

Trong pha xây dựng, danh sách ứng viên hạn chế (RCL) của mỗi nhiệm

vụ sẵn sàng chưa được ánh xạ vào tài nguyên được tạo ra, ở đây nhiệm vụ sẵnsàng là các nhiệm vụ mà tất cả nút cha của nó đã được lập lịch xong RCL

Ngày đăng: 08/12/2020, 12:42

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
1. Đoàn Văn Ban, Nguyễn Mậu Hân ( 2006), Xử lý song song và phân tán, Nhà xuất bản khoa học kỹ thuật, Hà Nội Sách, tạp chí
Tiêu đề: Xử lý song song và phântán
Nhà XB: Nhà xuất bản khoa học kỹ thuật
2. Đoàn Văn Ban (2005), Lập trình hướng đối tượng với Java, Nhà xuất bản khoa học kỹ thuật, Hà Nội Sách, tạp chí
Tiêu đề: Lập trình hướng đối tượng với Java
Tác giả: Đoàn Văn Ban
Nhà XB: Nhà xuấtbản khoa học kỹ thuật
Năm: 2005
3. Nguyễn Long , Nguyễn Huy Văn, Lê Công Trung (2003), “Mô hình lập lịch trong hệ thống tính toán lưới do Buyya đề xuất”, Tạp chí Công nghệ thông tin &amp; Truyền thông Sách, tạp chí
Tiêu đề: Mô hìnhlập lịch trong hệ thống tính toán lưới do Buyya đề xuất
Tác giả: Nguyễn Long , Nguyễn Huy Văn, Lê Công Trung
Năm: 2003
4. Lê Văn Sơn, Nguyễn Thành Thủy (2010), “Ứng dụng tính toán lưới cho sàn giao dịch chứng khoán”, Tạp chí khoa học và công nghệ, Đại học Đà nẵng.Tiếng Anh Sách, tạp chí
Tiêu đề: Ứng dụng tính toán lướicho sàn giao dịch chứng khoán
Tác giả: Lê Văn Sơn, Nguyễn Thành Thủy
Năm: 2010
5. Atila Kaya (2001), Workflow Interoperability: The WfMC Reference Model and an Implementation, TUHH, Germany Sách, tạp chí
Tiêu đề: Workflow Interoperability: The WfMC ReferenceModel and an Implementation
Tác giả: Atila Kaya
Năm: 2001
6. D.I.George Amalarethinam , F.Kurus Malai Selvi (2008), The Best- effort based Workflow Scheduling in Grid Computing - An overview, International Journal of Research and Reviews in Computer Science (IJRRCS) Sách, tạp chí
Tiêu đề: The Best-effort based Workflow Scheduling in Grid Computing - An overview
Tác giả: D.I.George Amalarethinam , F.Kurus Malai Selvi
Năm: 2008
7.Ian Foster, Yong Zhao, Ioan Raicu, Shiyong Lu (2008), Cloud Computing and Grid Computing 360-Degree Compared, Grid Computing Environments Workshop, GCE '08 Sách, tạp chí
Tiêu đề: CloudComputing and Grid Computing 360-Degree Compared
Tác giả: Ian Foster, Yong Zhao, Ioan Raicu, Shiyong Lu
Năm: 2008
8. Saeid Abrishami, Mahmoud Naghibzadeh, Dick Epema (2011), Cost- driven Scheduling of Grid Workflows Using Partial Critical Paths, Grid Computing (GRID), IEEE/ACM International Conference on Sách, tạp chí
Tiêu đề: Cost-driven Scheduling of Grid Workflows Using Partial Critical Paths
Tác giả: Saeid Abrishami, Mahmoud Naghibzadeh, Dick Epema
Năm: 2011
9. Suraj Pandey, Dileban Karunamoorthy, Rajkumar Buyya (2010),“Workflow Engine for Clouds”, CLOUDS - University of Melbourne Sách, tạp chí
Tiêu đề: Workflow Engine for Clouds
Tác giả: Suraj Pandey, Dileban Karunamoorthy, Rajkumar Buyya
Năm: 2010
10. Wei-Neng Chen, Jun Zhang, Yang Yu (2007), Workflow Scheduling in Grids An Ant Colony Optimization Approach, Evolutionary Computation, 2007. CEC 2007. IEEE Congress on.Trang điện tử Sách, tạp chí
Tiêu đề: Workflow Schedulingin Grids An Ant Colony Optimization Approach
Tác giả: Wei-Neng Chen, Jun Zhang, Yang Yu
Năm: 2007

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w