Nghiên cứu các thuật toán lập lịch trong điện toán đám mây

24 732 0
Nghiên cứu các thuật toán lập lịch trong điện toán đám mây

Đ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

1 HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG Nguyễn Ngọc Dung NGHIÊN CỨU CÁC THUẬT TOÁN LẬP LỊCH TRONG ĐIỆN TOÁN ĐÁM MÂY Chuyên ngành: Kỹ thuật Điện tử Mã số: 60.52.70 Người hướng dẫn khoa học: TS. Lê Nhật Thăng TÓM TẮT LUẬN VĂN THẠC SĨ HÀ NỘI - 2012 2 MỞ ĐẦU Điện toán đám mây hiện nay là xu hướng công nghệ mới đang phát triển mạnh mẽ. Điện toán đám mây cung cấp khả năng mở rộng tài nguyên ảo tự động thông qua các dịch vụ Internet để sử dụng theo yêu cầu, và cũng phát triển cao hơn điện toán phân tán, điện toán song song và điện toán grid. Ưu điểm chính của điện toán đám mây là có thể giảm nhanh các chi phí phần cứng và tăng khả năng tính toán và khả năng lưu trữ, người sử dụng có thể truy cập dịch vụ chất lượng cao với mức chi phí thấp. Lập lịch là một phần rất quan trọng trong điện toán đám mây, nó là một cơ chế sắp xếp các nhiệm vụ người dùng tới nguồn tài nguyên thích hợp để thực thi. Hiệu quả của nó ảnh hưởng trực tiếp đến hiệu suất của toàn bộ môi trường điện toán đám mây. Bằng cách sử dụng kỹ thuật ảo hóa, tất cả các tài nguyên vật lý được ảo hóa và mang lại nhiều tiện ích cho người sử dụng. Luận văn này đã được xây dựng với những nội dung chính như sau: Chương I: Tổng quan về điện toán đám mây Chương II: Các thuật toán lập lịch Chương III: Nghiên cứu một số thuật toán lập lịch cụ thể. 3 CHƯƠNG I. TỔNG QUAN VỀ ĐIỆN TOÁN ĐÁM MÂY Điện toán đám mây là một mô hình trong đó việc sử dụng máy tính được chuyển dời ra khỏi các máy tính cá nhân và thậm chí ra khỏi các server ứng dụng doanh nghiệp và chuyển vào một “đám mây” các máy tính. Một đám mây là một khu vực server ảo có thể cung cấp các tài nguyên điện toán khác nhau cho khách hàng. Người sử dụng hệ thống này chỉ cần quan tâm đến dịch vụ điện toán được yêu cầu. Dữ liệu và các dịch vụ cung cấp đặt tại các trung tâm dữ liệu và có thể truy cập từ bất cứ một thiết bị nào có nối mạng trên toàn thế giới. Đặc điểm của Điện toán đám mây Điện toán đám mây có nhiều ưu điểm: - Tự khôi phục. Trong trường hợp lỗi hỏng ứng dụng, luôn luôn tồn tại một backup nhanh cho ứng dụng, sẵn sàng hoạt động mà không gây trì trệ - Khả năng mở rộng tuyến tính. Môi trường đám mây cho phép người sử dụng truy cập các tài nguyên điện toán bổ sung theo yêu cầu đáp ứng với tải ứng dụng ngày càng tăng. - Hướng dịch vụ. Các hệ thống được xây dựng biệt lập với các dịch vụ riêng lẻ khác. Nhiều dịch vụ đơn lẻ độc lập nhau sẽ được phối hợp lại để tạo thành 4 một dịch vụ. Điều này cho phép tái sử dụng các dịch vụ. - Hướng SLA. Các dịch vụ điện toán đám mây có tính chất đảm bảo SLA sao cho khi hệ thống chịu nhiều tải, nó sẽ tự động điều chỉnh sao cho phù hợp với các SLA. - Ảo hóa. Các ứng dụng trong điện toán đám mây hoàn toàn được tách biệt từ phần cứng tầng dưới. Môi trường điện toán đám mây là một trường thực sự ảo hóa. Một lượng lớn các tài nguyên điện toán có thể được cung cấp và có tính khả dụng cho các ứng dụng mới trong vòng vài phút thay vì nhiều ngày hay nhiều tuần. - Linh hoạt. Điện toán đám mây phục vụ nhiều dạng tải tin, từ tải tin nhỏ của một ứng dụng nhỏ đến các tải tin khổng lồ của một ứng dụng mang tính thương mại. - Cung cấp dịch vụ theo yêu cầu. Các đám mây cung cấp tài nguyên và dịch vụ cho người sử dụng theo yêu cầu. - Cung cấp QoS đảm bảo. Môi trường đám mây cung cấp bởi các đám mây điện toán có thể đảm bảo QoS cho người sử dụng, ví dụ hiệu năng phần cứng như băng thông CPU và kích cỡ bộ nhớ. Các công nghệ được nhắc đến trong Điện toán đám mây: Map Reduce, một khung phần mềm được phát triển tại 5 Google năm 2003 nhằm hỗ trợ các vận hành máy tính song song trên một tập dữ liệu lớn, trên nhiều cụm máy tính. Khung này được lấy từ các chức năng “map” và “reduce” thường sử dụng trong lập trình chức năng. GoogleFileSystem là một hệ thống file phân phối có khả năng mở rộng được phát triển bởi Google, dành cho các ứng dụng chuyên sâu dữ liệu. Nó được thiết kế để cung cấp truy cập dữ liệu hiệu quả, tin cậy sử dụng các cụm phần cứng lớn. Ưu điểm của điện toán đám mây là khả năng ảo hóa và chia sẻ tài nguyên giữa các ứng dụng khác nhau nhằm sử dụng server tốt hơn. Dịch vụ điện toán đám mây Mặc dù điện toán đám mây là công nghệ mới, nhưng đã có nhiều công ty đưa ra các dịch vụ điện toán đám mây. Các công ty như Amazon, Google, Yahoo, IBM, Microsoft đều tham gia vào công nghiệp dịch vụ điện toán đám mây. Amazon là tiên phong với các dịch vụ như EC2 (Elastic Compute) và S3 (Simple Storage Service). Các loại đám mây Các đám mây có thể được phân loại theo phương thức quản lý và sở hữu, ta có thể phân ra thành Public Clouds, Private Clouds, Hybrid Clouds và Community Clouds 6 Hình 1. Các loại đám mây Các mô hình dịch vụ điện toán đám mây Cơ sở hạ tầng đám mây đóng vai trò dịch vụ (IaaS) Các khả năng được cung cấp đến khách hàng là việc cung cấp sự xử lý, lưu trữ, các mạng lưới, và các tài nguyên điện toán cơ bản trong đó khách hàng có thể triển khai và chạy phần mềm, có thể bao gồm các hệ thống và các ứng dụng. Khách hàng không quản lý hoặc điều khiển cơ sở hạ tầng đám mây tầng dưới nhưng có thể điều khiển hệ thống vận hành, lưu trữ, các ứng dụng triển khai và điều khiển có giới hạn một số thành phần mạng (ví dụ host firewall). Phần mềm đám mây đóng vai trò dịch vụ (SaaS) Đám mây công cộng Đám mây riêng Doanh nghiệp Đám mây lai Đám mây công cộng Đám mây riêng 7 Khả năng được cung cấp đến khách hàng là việc sử dụng các ứng dụng của các nhà cung cấp chạy trên cơ sở hạ tầng đám mây. Các ứng dụng có thể truy cập được từ nhiều thiết bị khác nhau thông qua một giao diện khách hàng chẳng hạn như một web browser (ví dụ email trên cơ sở web). Khách hàng không quản lý hoặc điều khiển cơ sở hạ tầng tầng dưới bao gồm mạng, server, hệ thống vận hành, lưu trữ hoặc thậm chí các khả năng ứng dụng đơn lẻ,… Nền tảng đám mây đóng vai trò dịch vụ (PaaS) Khả năng được cung cấp đến khách hàng là triển khai trên cơ sở hạ tầng đám mây các ứng dụng khách hàng có hoặc khách hàng tạo nên sử dụng các ngôn ngữ lập trình và các công cụ hỗ trợ bởi nhà cung cấp. Khách hàng không quản lý hay điều khiển cơ sở hạ tầng tầng dưới bao gồm mạng, server, hệ thống vận hành, lưu trữ hoặc thậm chí các khả năng ứng dụng đơn lẻ,… Lập lịch Các thuật toán lập lịch trong các hệ thống phân bố đóng góp vai trò trong việc dàn trải tải trên các bộ xử lý và tối đa hoá sự sử dụng trong khi tối thiểu hoá thời gian thực thi nhiệm vụ tổng thể. Lập lịch nhiệm vụ đóng vai trò chủ chốt để cải thiện các hệ thống tin cậy và linh hoạt. Mục đích chính là để lập lịch các nhiệm vụ cho các tài nguyên thích ứng phù hợp với thời gian, bao gồm tìm ra một tuần tự hợp lý trong đó các nhiệm vụ có thể được thi hành. 8 CHƯƠNG II. CÁC THUẬT TOÁN LẬP LỊCH Một số thuật toán lập lịch truyền thống Genetic Algorithm - Thuật toán di truyền Các thuật toán Genetic là các kỹ thuật phân bố dựa trên cơ chế chọn lựa tự nhiên và di truyền học. Các thuật toán di truyền là một phân loại cụ thể của thuật toán tiến hoá có mục đích tìm ra phương án để tối ưu hoá vấn đề, chúng được mã hoá theo chuỗi nhị phân và sử dụng tính đột biến hoặc trao đổi đoạn để chỉnh sửa mật độ qua các thế hệ. Trong toán học, vấn đề tối ưu hoá tìm kiếm để tối thiểu hoá hoặc tối đa hoá một chức năng bằng cách chọn các giá trị thích hợp cho các biến số. Các thuật toán di truyền bắt nguồn từ khảo sát sự tiến hoá sinh học và dựa trên các hoạt động di truyền trên gen, ví dụ như sự đột biến làm thay đổi giá trị của một gen, và sự trao đổi đoạn tạo ra các nhiễm sắc thể mới thừa kế các đặc điểm cũ từ hai nhiễm sắc thể bố mẹ. Các hoạt động này được áp dụng cùng với thuyết tiến hoá của Darwin, rằng các cá nhân thích nghi hơn với môi trường sẽ tồn tại, và sẽ sản sinh, tái tạo tối đa hoá các mã gen trong thế hệ con cái, với những đặc điểm tương đồng và sẽ thích nghi tốt hơn với môi trường sống. Cơ chế di truyền là một phương thức linh động cho phép với cùng một vấn đề, các cá nhân biểu diễn khác nhau, các thuật toán thực thi khác nhau để chọn ra đột biến. 9 Thuật toán 1: GAMapper public void map(IntWritable deme_id, Chromosome individual, outputCollector<IntWritable, Chromosome> output, reporter reporter) throws I0Exeption { deme= demeParser.getDeme (deme_id.net()) ; individual.fitness = fitnessFunction(deme_id, individual); migration(individual, output); output.collect(deme_id, individual); } private Boolean migration (Chromosome individual, outputCollector<IntWritable, Chromosome> output) throws I0Exception { boolean migrated = false; for (Map.Entry<Integer, Double> neighbor: deme.neighbors.entrySet()) { double r = Math.random(); if (r <neighbor.getValue()) { output.collect (new IntWritable (neighbor.getKey()), individual); } } return migrated; } Thuật toán 2: GAReducer public void reduce(IntWritable deme_id, Interator<Chromosome> values, outputCollector<Intwritable, Chromosome> output, Reporter reporter) throws I0Exception { deme= demeParser.getDeme (deme_id.get()); demePopulation.clear(); matingPool.clear(); while (values.hasNext()) { demePopulation.add(value.next()) ; } 10 selection(); crossover(); mutation(); for (Chromosome offspring : matingPool) output.collect(deme_id, offspring); } Các thuật toán MCT (Thời gian hoàn thành sớm nhất) và MET (Thời gian thực thi sớm nhất) Có hai loại phương thức sắp xếp, immediate mode và batch mode. Immediate mode xét đến sự thay đổi mức độ và sự thu hút nhiệm vụ theo nhiều cách khác nhau đối với các máy khác nhau, và các thời điểm sẵn sàng của máy. Phương thức Batch mode động xem xét các yếu tố này, cũng như các nhiệm vụ đang đợi để được thực hiện. Phương thức Minimum completion time (MCT) gán mỗi nhiệm vụ cho máy đưa ra thời gian hoàn thành sớm nhất. Phương thức Minimum execution time (MET) gán mỗi nhiệm vụ cho máy thực hiện tính toán nhiệm vụ đó trong thời gian thực thi nhỏ nhất. [...]... hiện tại Hình 2 Sự sử dụng tài nguyên Lập lịch nhiệm vụ trong điện toán đám mây dựa trên thuật toán GA cải tiến Phần này sẽ nghiên cứu thuật toán lập lịch GA cải tiến, trong đó các phương pháp lập lịch Min-Min và MaxMin được sát nhập trong một thuật toán GA tiêu chuẩn Các kỹ thuật Min-Min, Max-Min và Genetic được phân tích 13 trong hiệu năng cuối cùng của thuật toán GA tiêu chuẩn và có sự so sánh với... chế sắp xếp các nhiệm vụ người dùng tới nguồn tài nguyên thích hợp để thực thi Hiệu quả của nó ảnh hưởng trực tiếp đến hiệu suất của toàn bộ môi trường điện toán đám mây Bằng cách sử dụng kỹ thuật ảo hóa, tất cả các tài nguyên vật lý được ảo hóa và trong suốt đối với người sử dụng Luận văn đã thực hiện tìm hiểu một số thuật 23 toán lập lịch truyền thống như GA, FCFS và nghiên cứu các thuật toán mới như... dùng trực tiếp trên đám mây Các dịch vụ của đám mây được cung cấp qua Internet Điện toán đám mây có nhiều lợi ích: tiết kiệm chi phí vì không cần cài đặt ban đầu nhiều tài nguyên, có tính linh động và khả năng mở rộng Người dùng có thể tăng hoặc giảm số dịch vụ theo yêu cầu Chi phí bảo trì rẻ vì mọi tài nguyên được quản lý bởi nhà cung cấp Đám mây Trong môi trường đám mây, lập lịch là một phần rất...CHƯƠNG III NGHIÊN CỨU MỘT SỐ THUẬT TOÁN LẬP LỊCH Thuật toán lập lịch nhiệm vụ dựa trên Cân bằng tải trong Điện toán đám mây Tải của máy ảo được xét đến được thể hiện qua thời gian thực thi dự đoán của nhiệm vụ chạy trên máy ảo, gọi là Vli Và tải của host được biểu diễn bởi tải trung bình của máy ảo chạy trên nó, gọi là HLi, ta có = ∑ trong đó n là số máy ảo chạy trên host... cứu tổng quan về Điện toán đám mây, một phương thức mang lại hiệu năng điện toán cao, bởi trong điện toán đám mây, mọi tiện ích IT được cung cấp cho người sử dụng như một dịch vụ Ba loại dịch vụ chính được cung cấp bởi đám mây là IaaS, cung cấp cho người sử dụng cơ sở hạ tầng như hệ thống lưu trữ và tài nguyên tính toán; PaaS cung cấp nền tảng cho khách hàng do đó họ có thể xây dựng các ứng dụng trên... Phối hợp lại các đôi bố mẹ c Đánh giá ứng viên mới d Chọn cá thể cho thế hệ tiếp theo; 6 End Mô phỏng và kết quả Chúng ta sử dụng bộ công cụ mô phỏng Cloudsim để kiểm tra hiệu năng của thuật toán cải tiến và thuật toán di truyền tiêu chuẩn Chúng ta xem các Máy ảo là tài nguyên và các đám mây Cloudlet là nhiệm vụ/công việc Trong trường hợp thứ nhất ta cố định số máy ảo và thay đổi số cloudlet, trong trường... thành Trong thuật toán trên, máy ảo được lập lịch cho host có tải nhẹ nhất trong mỗi lần thực hiện Ưu điểm là để tránh quá tải cho host giữ nhiều tài nguyên hơn Nếu máy ảo hiện thời được lập lịch cho một host, khi lượng tính toán tăng lên, dẫn đến tải của máy ảo nặng gây mất cân bằng tải, thì hoạt động di chuyển động được sử dụng, giữ cân bằng tải trong môi trường hiện tại Hình 2 Sự sử dụng tài nguyên Lập. .. đổi số máy ảo Makespan mà thuật toán đưa ra được chỉ ra trong bảng Trong trường hợp thứ nhất, chúng ta cố định số máy ảo là 10 và thay đổi số cloudlet từ 10 đến 40 với độ chênh lệch là 10 Chúng ta chạy mỗi thuật toán 10 lần Bảng 2 Cố định máy ảo và thay đổi Cloudlet Số máy ảo: 10 Biến đổi Cloudlet 10 Phương thức sử Thuật toán cải 20 30 40 8 26.1 60.9 113.5 15 dụng tiến Thuật toán tiêu chuẩn 12.4 44.7... host Từ HLi, giá trị tải trung bình avgl và giá trị đánh giá cân bằng tải B của môi trường điện toán đám mây có thể định nghĩa như sau: = = ∑ ∑ (3.1) ( − ) (3.2) Trong các phương trình trên, số host là m, giá trị B càng nhỏ thì cân bằng tải càng tốt và giá trị B càng lớn thì cân bằng tải kém hơn Các bước thuật toán: 11 Bước 1 Theo mô hình tài nguyên host, tạo tập tài nguyên } và xếp theo thứ tự từ dưới... Hình 3 Biểu đồ makespan cho trường hợp cố định máy ảo Trong trường hợp thứ hai, ta cố định số cloudlet là 40 và thay đổi số máy ảo từ 10 đến 40 với độ chênh lệch là 10 Ta sẽ chạy thuật toán 10 lần 16 Bảng 3 Cố định Cloudlet và thay đổi máy ảo Số cloudlet: 10 Biến đổi số máy ảo 10 Phương thức sử dụng 20 30 40 Thuật toán cải tiến 113.5 33.2 17.1 10 Thuật toán tiêu chuẩn 146.8 84.7 54 44.8 Biểu đồ hiệu năng: . về điện toán đám mây Chương II: Các thuật toán lập lịch Chương III: Nghiên cứu một số thuật toán lập lịch cụ thể. 3 CHƯƠNG I. TỔNG QUAN VỀ ĐIỆN. CHƯƠNG II. CÁC THUẬT TOÁN LẬP LỊCH Một số thuật toán lập lịch truyền thống Genetic Algorithm - Thuật toán di truyền Các thuật toán Genetic là các kỹ thuật

Ngày đăng: 14/02/2014, 08:42

Hình ảnh liên quan

Hình 1. Các loại đám mây - Nghiên cứu các thuật toán lập lịch trong điện toán đám mây

Hình 1..

Các loại đám mây Xem tại trang 6 của tài liệu.
Hình 2. Sự sử dụng tài nguyên - Nghiên cứu các thuật toán lập lịch trong điện toán đám mây

Hình 2..

Sự sử dụng tài nguyên Xem tại trang 13 của tài liệu.
2. Tạo quần thể với các phương án ngẫu nhiên 3.  Ước lượng mỗi phương án  - Nghiên cứu các thuật toán lập lịch trong điện toán đám mây

2..

Tạo quần thể với các phương án ngẫu nhiên 3. Ước lượng mỗi phương án Xem tại trang 14 của tài liệu.
ra trong bảng. - Nghiên cứu các thuật toán lập lịch trong điện toán đám mây

ra.

trong bảng Xem tại trang 15 của tài liệu.
Hình 3. Biểu đồ makespan cho trường hợp cố định máy ảo máy ảo  - Nghiên cứu các thuật toán lập lịch trong điện toán đám mây

Hình 3..

Biểu đồ makespan cho trường hợp cố định máy ảo máy ảo Xem tại trang 16 của tài liệu.
Hình 3. Biểu đồ makespan cho trường hợp cố định máy ảo máy ảo  - Nghiên cứu các thuật toán lập lịch trong điện toán đám mây

Hình 3..

Biểu đồ makespan cho trường hợp cố định máy ảo máy ảo Xem tại trang 16 của tài liệu.
Bảng 3. Cố định Cloudlet và thay đổi máy ảo - Nghiên cứu các thuật toán lập lịch trong điện toán đám mây

Bảng 3..

Cố định Cloudlet và thay đổi máy ảo Xem tại trang 17 của tài liệu.
Hình 3.5 Biểu đồ makespan cho trường hợp cố định Cloudlet  - Nghiên cứu các thuật toán lập lịch trong điện toán đám mây

Hình 3.5.

Biểu đồ makespan cho trường hợp cố định Cloudlet Xem tại trang 17 của tài liệu.
Hình 3.7 Minh hoạ một server farm với 6 server, - Nghiên cứu các thuật toán lập lịch trong điện toán đám mây

Hình 3.7.

Minh hoạ một server farm với 6 server, Xem tại trang 22 của tài liệu.

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan