Điện toán đám mây là một kiểu tính toán mà ở đó các công việc CNTT được cung cấp như một dịch vụ trên internet đến nhiều khách hàng bên ngoài và khách hàng được tính tiền theo sự sử dụng
Trang 1[Type text] Page 0
Đề tài “TÌM HIỂU VỀ
ĐIỆN TOÁN ĐÁM MÂY”
O O O RƯỜN I HỌ ÂY Ô
Trang 2GVHD: Nguyễn Trọng Nghĩa 1
MỤC LỤC
TÓM TẮT NỘI DUNG VÀ GIỚI THIỆU ĐÊ TÀI 2
CHƯƠNG I: ĐIỆN TOÁN ĐÁM MÂY 3
1 Định nghĩa 3
2 Các đặc điểm của điện toán đám mây 4
2.1 Tự Sửa Chữa 4
2.2 Nhiều người sử dụng 4
2.3 Khả năng mở rộng tuyến tính 4
2.4 Hưởng dịch vụ 4
2.5 Điều khiển SLA(Service level agreement) 5
2.6 Khả năng ảo hóa 5
2.7 Linh hoạt: 5
3 Ưu và nhược của mô hình Điện toán đám mây 5
3.1 Ưu điểm 5
3.2 Nhược điểm 6
4 Sự cần thiết của điện toán đám mây 7
CHƯƠNG II: HOẠT ĐỘNG CỦA ĐIỆN TOÁN ĐÁM MÂY 9
1 Kiến trúc của ứng dụng điện toán đám mây 9
2 Kiến trúc máy chủ 10
3 Map Reduce 12
4 Hadoop 19
5 Google file system 20
CHƯƠNG III: XU HƯỚNG CÔNG NGHỆ MỚI TẠI VIỆT NAM 23
CHƯƠNG V: TỔNG KẾT - TÀI LIỆU THAM KHẢO 27
1 Kết luận 27
2 Tài liệu tham khảo 27
Trang 3GVHD: Nguyễn Trọng Nghĩa 2
ÓM ẮT N UN ỚI THIỆU Ê
Máy vi tính ngày nay đã trở thành một phần tất yếu của cuộc sống Chúng ta cần máy tính ở khắp mọi nơi, có thể là cho công việc, nghiên cứu hoặc trong bất kỳ lĩnh vực nào Khi nhu cầu sử dụng máy tính trong cuộc sống hàng ngày của chúng
ta tăng lên, các nguồn tài nguyên máy tính cũng cần tăng lên Đối với các công ty lớn như Google và Microsoft, việc khai thác các nguồn tài nguyên như vậy khi họ cần không phải là một vấn đề lớn Nhưng khi nói đến doanh nghiệp nhỏ hơn, các nguồn tài nguyên lớn như vậy trở thành một yếu tố rất lớn tác động đến kinh doanh Với những vấn đề lớn về cơ sở hạ tầng CNTT như máy hỏng, treo ổ cứng, lỗi phần mềm, v.v Đó thật sự là những vấn đề rất đau đầu cho các doanh nghiệp Điện toán đám mây sẽ cung cấp một giải pháp cho tình trạng này
Điện toán đám mây là một cuộc dịch chuyên gia cách mạng trong đó việc tính toán sẽ được chuyên gia từ máy tính cá nhân hay các máy chủ ứng dụng doanh nghiệp đến một đám mây máy tính Đám mây là một hình tượng để chỉ đến tập các máy chủ ảo hóa có thể cung cấp các nguồn tài nguyên của máy tính khác nhau cho khách hàng của họ Người sử dụng của hệ thống này chỉ cần được quan tâm tới các dịch vụ máy tính đang được yêu cầu Cái chi tiết bên dưới hệ thống của nó như thế nào thì được ẩn khỏi người dùng Các dữ liệu và các dịch vụ cung cấp nằm trong các trung tâm dữ liệu của đám mây có khả năng mở rộng lớn và có thể được truy cập ở bất kỳ đâu, từ bất kỳ thiết bị được kết nối trên thế giới
Điện toán đám mây là một kiểu tính toán mà ở đó các công việc CNTT được cung cấp như một dịch vụ trên internet đến nhiều khách hàng bên ngoài và khách hàng được tính tiền theo sự sử dụng dịch vụ của họ Nhiều nhà cung cấp điện toán đám mây đã xuất hiện và có một sự tăng trưởng đáng kể trong việc sử dụng dịch vụ này Google, Microsoft, Yahoo, IBM và Amazon đã bắt đầu cung cấp dịch vụ điện toán đám mây Trong đó Amazon là nhà tiên phơng trong lĩnh vực này Các công
ty nhỏ hơn như SmugMug, một trang web lưu trữ hình ảnh trực tuyến, có sử dụng dịch vụ điện toán đám mây để lưu trữ tất cả các dữ liệu và thực hiện một số dịch vụ của mình
Điện toán đám mây được sử dụng trong các lĩnh vực khác nhau như web hosting, lập trình song song, dựng hình đồ hoạ, mô hình tài chính(ĨBM Clouds), các phương pháp duyệt và tìm kiếm trên web(web spider), phân tích gen(Amazon Clouds),v.v
Trang 4GVHD: Nguyễn Trọng Nghĩa 3
HƯƠN : ỆN O N M MÂY
1 ịnh nghĩa
Đã có rất nhiều định nghĩa về
điện toán đám mây được đưa ra như:
Điện toán đám mây (cloud
computing ) hay còn gọi là điện toán
máy chủ ảo là một mô hình điện toán
có khả năng co giãn (scalable) linh
động và các tài nguyên thường được
ảo hóa được cung cấp như một dịch
vụ trên mạng Internet
Theo Foster (2008): Một mô hình điện toán phân tán có tính co giãn lớn mà
hướng theo co giãn về mặt kinh tế, là nơi chứa các sức mạnh tính toán, kho lưu trữ, các nền tảng (platform) và các dịch vụ được trực quan, ảo hóa và co giãn linh động, sẽ được phân phối theo nhu cầu cho các khách hàng bên ngoài thông qua Internet Điện toán đám mây là một dạng thức điện toán cung cấp các tài nguyên
ảo hóa và có quy mô dưới dạng dịch vụ qua mạng Internet Người dùng không cần tới những kiến thức chuyên gia môn để quản lý hạ tầng công nghệ này bởi phần việc đó là dành cho các nhà cung cấp dịch vụ
Theo Synmatec: Điện toán đám mây là
một mạng kết nối của các tài nguyên máy tính sẵn có được cấp phát động theo cơ chế ảo hóa
và có khả năng co dãn , tạo điều kiện cho người dùng có thể sử dụng dịch vụ theo nhu cầu dùng đến đâu trả tiền đến đó
Nói một cách đơn giản nhất “ứng dụng điện toán đám mây” chính là:
Một mô hình điện toán mới
Các tài nguyên về hạ tầng (phần cứng, thiết bị lưu trữ, phần mềm hệ thống) và các ứng dụng được cung cấp theo mô hình X-as-a Services dựa theo mô hình trả tiền theo mức độ sử dụng
Trang 5bị gián đoạn Có nhiều bản sao của cùng một ứng dụng vì vậy ở những lần thất bại,
có ít nhất một bản sao của ứng dụng có thể lấy lên hoạt động mà thậm chí không cần thay đối nhỏ nào trong trạng thái chạy của nó
2.2 Nhiều người sử dụng
Với điện toán đám mây, bất kỳ ứng dụng nào cũng hỗ trợ đa người dùng Đó
là khái niệm dùng để chỉ nhiều người sử dụng đám mây trong cùng thời gian Hệ thống cho phép một số khách hàng chia sẻ cơ sở hạ tầng được phân bố cho họ mà không ai trong họ nhận biết về sự chia sẻ này Điều này được thực hiện bởi việc ảo hóa các máy chủ trong một dải các máy tính và sau đó cấp phát các máy chủ đến nhiều người sử dụng Điều này được thực hiện theo cách mà trong đó sự riêng tư của người sử dụng và bảo mật của dữ liệu của họ không bị tổn hại
2.3 Khả năng mở rộng tuyến tính
Dịch vụ điện toán đám mây có khả năng mở rộng tuyến tính Hệ thống có khả năng phân chia các luồng công việc thành phần nhỏ và phục vụ nó qua cơ sở
hạ tầng Một ý tưởng chính xác của khả năng mở rộng tuyến tính có thể được lấy
từ thực tế là nếu một máy chủ có thể xử lý 1000 giao dịch trong một giây, thì hai máy chủ có thể xử lý 2.000 giao dịch trong một giây
2.4 Hưởng dịch vụ
Hệ thống Điện toán đám mây là tất cả các dịch vụ theo định hướng Những dịch vụ như vậy được tạo ra từ những dịch vụ rời rạc khác Rất nhiều dịch vụ rời rạc như vậy là sự kết hợp của nhiều dịch vụ độc lập khác với nhau để tạo dịch vụ này Điều này cho phép việc tái sử dụng các dịch vụ khác nhau sẵn có và đang
Trang 6GVHD: Nguyễn Trọng Nghĩa 5
được tạo ra Bằng việc sử dụng các dịch vụ đã được tạo ra trước đó, những dịch vụ khác có thế được tạo ra từ đó
2.5 iều khiển SLA(Service level agreement)
Thông thường các doanh nghiệp có thỏa thuận về số lượng dịch vụ Khả năng mở rộng và các vấn đề có sẵn có thể làm cho các thỏa thuận này bị phá vỡ Tuy nhiên, các dịch vụ điện toán đám mây là hướng SLA, như việc khi hệ thống có kinh nghiệm đạt đỉnh của tải, nó sẽ tự động điều chỉnh chính nó để tuẩn thủ các thỏa thuận ở cấp độ dịch vụ Các dịch vụ sẽ tạo ra thêm những thực thể của ứng dụng trên nhiều server để cho việc tải có thể dễ dàng quản lý
2.6 Khả năng ảo hóa
Các ứng dụng trong điện toán đám mây hoàn toàn tách rời khỏi phần cứng nằm bên dưới Môi trường điện toán đám mây là một môi trường ảo hóa đầy đủ
2.7 Linh hoạt:
Một tính năng khác của các dịch vụ điện toán đám mây là chúng linh hoạt Chúng có thể được dùng để phục vụ rất nhiều loại công việc có khối lượng khác nhau từ tải nhỏ của một ứng dụng nhỏ cho đến tải rất nặng của một ứng dụng thương mại
3 Ưu và nhược của mô hình iện toán đám mây
3.1 Ưu điểm
Những ưu điểm và thế mạnh dưới đây đã góp phần giúp "Điện toán đám mây" trở thành mô hình điện toán được áp dụng rộng rãi trên toàn thế giới
c độ ử : Tốc độ xử lý nhanh, cung cấp cho người dùng những dịch vụ
nhanh chóng và giá thành rẻ dựa trên nền tảng cơ sở hạ tầng tập trung (đám mây)
hi phí: Chi phí đầu tư ban đầu về cơ sở hạ tầng, máy móc và nguồn nhân
lựa của người sử dụng điện toán đám mây được giảm đến mức thấp nhất
hông c n phụ thuộc vào thiết ị và vị trí địa : Cho phép người dùng
truy cập và sử dụng hệ thống thông qua trình duyệt web ở bất kỳ đâu và trên bất kỳ thiết bị nào mà họ sử dụng (ch ng hạn là PC hoặc là điện thoại di động )
hia s tài nguyên: Chia sẻ tài nguyên và chi phí trên một địa bàn rộng lớn,
mang lại các loại ích cho người dùng như:
Trang 7- Khả năng khai thác và hiệu suất được cài thiện hơn 10-20 so với hệ thống máy tính cá nhân thông thường
ới độ tin c y cao: Không chỉ giành cho người dùng phổ thông, điện toán
đám mây phù hợp với các yêu cầu cao và liên tục của các công ty kinh doanh và các nghiên cứu khoa học Tuy nhiên, một vài dịch vụ lớn của điện toán đám mây đôi khi rơi vào trạng thái quá tải, khiến hoạt động bị ngưng trệ Khi rơi vào trạng thái này, người dùng không có khả năng để xử lý các sự cố mà phải nhờ vào các chuyên gia gia từ đám mây tiến hành xử lý
hả năng mở rộng: Giúp cải thiện chất lượng các dịch vụ được cung cấp
trên đám mây
hả năng ảo m t: Khả năng bảo mật được cải thiện do sự tập trung về dữ
liệu
ễ àng để sửa: Các ứng dụng của điện toán đám mây dễ dàng để sửa chữa
hơn bởi lẽ chúng không được cìa đặt cố định trên một má tính nào Chúng cũng dễ dàng hỗ trợ và cài thiện về tính năng
Quản tài nguyên: Tài nguyên sử dụng của điện toán đám mây luôn được
quản lý và thống kểtrên từng khách hàng và ứng dụng, theo từng ngày, từng tuần, từng tháng Điều này đảm bảo cho việc định lượng giá cả của mỗi dịch vụ do điện toán đám mây cung cấp để người dùng có thể lựa chọn phù hợp
3.2 Nhược điểm
Tuy nhiên, mô hình điện toán này vẫn còn mắc phải một số nhược điểm sau:
ính riêng tư: Các thông tin người dùng và dữ liệu được chứa trên điện
toán đám mây có đảm bảo được riêng tư, và liệu các thông tin đó có bị sử dụng vì một mục đích nào khác
ính s n ng: Liệu các dịch vụ đám mây có bị treo bất ngờ, khiến cho
người dùng không thể truy cập các dịch vụ và dữ liệu của mình trong những khoảng thời gian nào đó khiến ảnh hưởng đến công việc
Trang 8GVHD: Nguyễn Trọng Nghĩa 7
M t ữ iệu: Một vài dịch vụ lưu trữ dữ liệu trực tuyến trên đám mây bất
ngờ ngừng hoạt động hoặc không tiếp tục cung cấp dịch vụ, khiến cho người dùng phải sao lưu dữ liệu của họ từ đám mây về máy tính cá nhân Điều này sẽ mất nhiều thời gian Thậm chí một vài trường hợp, vì một lý do nào đó, dữ liệu người dùng bị mất và không thể phục hồi được
ính i động của ữ iệu và quyền sở hữu: Một câu hỏi đặt ra, liệu người
dùng có thể chia sẻ dữ liệu từ dịch vụ đám mây này sang dịch vụ của đám mây khác Hoặc trong trường hợp không muốn tiếp tục sử dụng dịch vụ cung cấp từ đám mây, liệu người dùng có thể sao lưu toàn bộ dữ liệu của họ từ đám mây Và làm cách nào để người dùng có thể chắc chắn rằng các dịch vụ đám mây sẽ không hủy toàn bộ dữ liệu của họ trong trường hợp dịch vụ ngừng hoạt động
hả năng ảo m t: Vấn đề tập trung dữ liệu trên các đám mây là cách
thức hiệu quả để tăng cường bảo mật, nhưng mặt khác cũng lại chính là mối lo của người sử dụng dịch vụ của điện toán đám mây Bởi lẽ một khi các đám mây bị tấn công hoặc đột nhập, toàn bộ dữ liệu sẽ bị chiếm dụng Tuy nhiên, đây không thực
sự là vấn đề của riêng điện toán đám mây , bởi lẽ tấn công đánh cắp dữ liệu là vấn đề gặp phải trên bất kỳ môi trường nào, ngay cả trên các máy tính cá nhân
4 Sự cần thiết của điện toán đám mây
Một câu hỏi được đặt ra là làm cách nào để có thể tăng năng lực tính toán và lưu trữ dữ liệu lên hàng nghìn lần so với chỉ dùng phần cứng tại chỗ Câu hỏi đã từng làm đau đầu các nhà phát triên hệ thống, và với sự ra đời của mạng internet vấn đề đã được giải quyết bởi sự xuất hiện của dịch vụ điện toán đám mây Điện toán đám mây là một dịch vụ tính toán và lưu trữ do nhà cung cấp dịch vụ cung cấp cho khách hàng, vì vậy năng lực tính toán và lưu trữ dữ liệu có khả năng tăng lên hàng nghìn lần so với việc chỉ dùng hệ thống tính toán truyền thống của khách hàng, và điều này phụ thuộc vào năng lực của nhà cung cấp dịch vụ chứ không phụ thuộc vào hệ thống tại chỗ của khách hàng, mà thường là các máy của các nhà cung cấp dịch vụ thường là nhũng máy có năng lực tính toán rất lớn để có thể cung cấp cho nhiều người
So với các hệ thống máy tính truyền thống thì điện toán đám mây có nhiều
ưu điểm vượt trội hơn Ưu điểm đầu tiên là về tài nguyên hệ thống, giả sử với một công ty khi trang bị hệ thống tính toán truyền thống cần phải xây dựng một hệ thống mạnh đủ để phục vụ công việc cho một công ty Điều đó đồng nghĩa với việc
Trang 9GVHD: Nguyễn Trọng Nghĩa 8
chi phí lắp đặt hệ thống ban đầu tốn kém, và đối với hệ thống của công ty cần phải
có người quản trị hệ thống tốn thêm tài nguyên và nhân lực, và chi phí cho năng lượng tiêu thụ của hệ thống cũng rất cao Thêm vào đó là sự lãng phí tài nguyên khi mà hệ thống không được sử dụng hết công suất của nó Điều đó cho thấy rằng đầu tư vào một hệ thống máy tính theo kiểu truyền thống thì có thể là tốn kém và lãng phí Và nếu công ty sử dụng điện toán đám mây thì khi đó không phải tốn một người quản trị, năng lượng tiêu thụ cho hệ thống cũng không còn là vấn đề, đặc biệt là tài nguyên không sử dụng sẽ không bị lãng phí vì khi đó công ty chỉ trả tiền cho phần tài nguyên mà họ sử dụng, phần tài nguyên còn lại sẽ được người cung cấp dịch vụ cung cấp cho một công ty khác
Một ưu điểm nữa của điện toán đám mây là khả năng truy cập và sử dụng tài nguyên ở mọi lúc mọi nơi khi mà ta có một máy tính bình thường được nối mạng internet, khi đó ta có thể thực hiện một phép tính khổng lồ hoặc có thể sử dụng một khối lượng dữ liệu lớn chỉ với một máy tính đơn giản
Vấn đề về bản quyền phần mềm cũng là một vấn đề hết sức nan giãi đối với các công ty khi mà các phần mềm đó có giá quá cao Với điện toán đám mây thì chỉ cần nhà cung cấp dịch vụ bỏ tiền ra mua bản quyền thì tất cả các khách hàng của họ đều có thể sử dụng nó như một phần mềm có bản quyền thật sự mà không phải bỏ ra một số tiền lớn để mua bán quyền mà họ chi phải trả tiền cho những gì
họ dùng
Trang 10GVHD: Nguyễn Trọng Nghĩa 9
HƯƠN : HO NG CỦA ỆN O N M MÂY
1 Kiến trúc của ứng dụng điện toán đám mây
Chúng ta biết rằng điện toán đám mây là một
tổ hợp tính toán dựa trên các thiết bị hạ tầng phần cứng trong một đám mây của nhà cung cấp dịch vụ
Hạ tầng phần cứng bao gồm các sản phẩm máy chủ chứa dữ liệu nhỏ được kết nối lại với nhau như một hệ thống phục vụ cho việc lưu trữ và xử lý dữ liệu và các ứng dụng tính toán trên các tài nguyên khác Điện toán đám mây gọi một ứng dụng chạy trên máy chủ ảo như là nó đang chạy tại chỗ trên hạ tầng phần cứng phân tán trong đám mây Những máy chủ ảo được tạo ra theo những cách mà ở đó những thỏa thuận dịch vụ (SLA) khác nhau và sự tin cậy đều được đảm bảo Có thể có nhiều thực thể khác nhau của cùng một máy chủ ảo truy cập vào những phần sẵn sàng của cơ sở hạ tầng phần cứng Điều này đảm bảo rằng có nhiều bản sao của các ứng dụng, để khi xảy ra lỗi chúng sẵn sàng khắc phục Máy chủ ảo phân tán quá trình xử lý vào cơ sở hạ tầng phần cứng và sau khi quá trình tính toán được hoàn thành chúng sẽ trả về kết quả Quá trình này cần có một phần mềm hoặc hệ điều hành xử lý công việc quản lý hệ thống phân tán, giống như kỹ thuật tính toán, giúp quản lý các yêu cầu khác nhau đến máy chủ
ảo Cơ chế này sẽ đảm bảo việc tạo ra nhiều bản sao và cả việc bảo vệ sự thống nhất dữ liệu được lưu trên cơ sở hạ tầng Đồng thời hệ điều hành đó cũng có thể tự điều chỉnh như là khi gặp quá tải các tiến trình, phân chia xử lý để hoàn thành đáp ứng yêu cầu Hệ thống quản lý công việc như vậy được che dấu với người dùng, hay nói các khác là ẩn với người dùng Sự độc lập với người dùng thể hiện ở chỗ
nó xử lý và trả về kết quả đạt được, chứ không cần phải quan trọng nó ở đâu và nó thực hiện điều đó bằng cách nào Người dùng trả tiền trên lưu lượng sử dụng hệ thống, như đã nói dịch vụ được tính bằng chu kỳ của CPU hoặc byte Thực tế số
Trang 11GVHD: Nguyễn Trọng Nghĩa 10
tiền mà khách hàng phải trả thường được tính dựa vào lưu lượng dùng CPU trên một giờ hoặc số Gb dữ liệu di chuyên gia trong một giờ
2 Kiến trúc máy chủ
Điện toán đám mây được tạo thành bằng cách sử dụng tài nguyên vật lý lớn
từ nhiều máy chủ trong đám mây của nhà cung cấp dịch vụ Đây là một ứng dụng của nguyên tắc kết hợp
vào trong bài toán cần
lớn hơn cho người sử
dụng trong những hệ thống yêu cầu tính toán và lưu trữ lớn Như đã nói bên trên, dịch vụ và ứng dụng của điện toán đám mây dựa trên máy chủ ảo được thiết kế từ tài nguyên góp lại này Có hai ứng dụng (hoặc hệ điều hành) sẽ giúp quản lý các thể hiện trên máy trong đám mây, cũng như quản lý tất cả các tài nguyên của các thể hiện máy chủ ảo Đây là một ứng dụng nguyên lý tách khỏi vào trong hệ thống
Trang 12GVHD: Nguyễn Trọng Nghĩa 11
điện toán đám mây nhằm tách biệt phần cứng phức tạp của hệ thống vói giao diện bên ngoài Nhằm tạo ra một giao diện người dùng đơn giản, dễ sử dụng hơn so với phần cứng phức tạp bên dưới và cũng là để tách biệt giao diện người dùng với hệ thống phần cứng, khi đó người dùng chỉ cần quan tâm đến những ứng dụng mà học cần chứ không cần quan tâm đến phần cứng bên dưới được thực hiện như thế nào
Ứng dụng thứ nhất là Xen hypervisor
cung cấp các lớp trừu tượng giữa phần cứng
và hệ điều hành ảo, nhờ vậy sự phân tán của
các tài nguyên và tiến trình được quản lý
giống như là đang thực hiện trên một máy
và được sử dụng không được thay đối về mã nguồn và định dạng đối tượng Xen Hypervisor cũng đặc biệt ngắn - ít hơn 50.000 dòng mã Vì vậy chi phí dịch mã code rất thấp và hiệu suất gần giống như trên máy nguyên thủy Xen tái sử dụng các trình điều khiển thiết bị hiện có (đối với cả hai loại là mở và đóng mã nguồn)
từ Linux, làm cho thiết bị quản lý dễ dàng Hơn nữa Xen rất mạnh mẽ để điều khiển lỗi và bảo vệ cả người dùng và hypervisor khỏi các vấn đề với các lỗi từ các driver độc hại
Trang 13GVHD: Nguyễn Trọng Nghĩa 12
Hệ thống quản lý máy chủ ảo Enomalism là một nền tảng hạ tầng cơ sở máy chủ ảo hoàn chỉnh Enomalism quản lý ảnh hướng giữa các tài nguyên trong hệ thống Enomalism có thể sử dụng để dẫn các luồng tính toán vào đám mây giống như là luồng từ khách hàng được đi vào thực hiện tính toán trên một máy chủ từ
xa Nó mang tất cả những tính năng như: triển khai kế hoạch tính toán, cân bằng tải, tránh xung đột tài nguyên Enomalism cũng là một ứng dụng mã nguồn mở,
nó có một giao diện người dùng dựa trên nền web rất đơn giản và dễ sử dụng Nó
có kiến trúc tìmg phần dễ dàng cho phép tạo và thêm vào hệ thống các bổ sung và các tiện ích cần thiết cho việc sử dụng Nó hỗ trợ triển khai tổ chức phân tán và tạo các ứng dụng dựa trên tổng quang chung Nó hỗ trợ quản lý các trường ảo khác nhau gồm KVM/Qemu, Amazon EC2
and Xen, OpenVZ, Linux Containers, VirtualBox Nó có chế độ phân quyền người dùng và đặt quyền truy cập
Chương trình được viết theo kiểu chức năng này được song song hóa một cách tự động và được thực thi trên một cụm lớn các máy tính hàng hóa (các máy tính thành phần cấu tạo nên đám mây điện toán) Hệ thống khi chạy sẽ quan tâm
Trang 14GVHD: Nguyễn Trọng Nghĩa 13
chi tiết phân vùng của dữ liệu đầu vào, lập lịch quá trình thực thi chương trình thông qua một tập các máy tính thành phần, xử lý lỗi và quản lý các kết nối nội giừa các máy tính thành phần Điều này cho phép các lập trình viên ngay cả chưa
có bất kỳ kinh nghiệm nào trong các hệ thống song song và phân tán đều có thế dễ dàng tối ưu hóa các tài nguyên của một hệ thống phân tán lớn
Trong vòng vài năm trước đây, các kỹ sư của Google phải khởi tạo hàng trăm các quá trình tính toán dành cho các mục đích đặc biệt trên số lượng lớn các
dữ liệu thô như các dữ liệu móc nối, nhật ký các trang web yêu cầu Các quá trình tính toán này dùng cho nhiều mục đích khác nhau như tóm tắt số lượng các trang
đã được móc nối bởi tùng host, tính tần số truy xuất của 1 trang web, tìm ra tập các câu truy vấn được dùng nhiều nhất trong ngày Hầu hết các tính toán này đều không phức tạp,nhưng dữ liệu đầu vào thường rất lớn và quá trình tính toán cần phải được phân tán cho hàng trăm ngàn máy nhằm có thể thực thi trong khoảng thời gian cho phép Các vấn đề về việc song song hóa tính toán,phân tán dữ liệu và quản lý lỗi đã làm cho các quá trình tính toán vốn đon giản này trở nên vô cùng phức tạp
Để giải quyết vấn đề, các kỹ sư của Google đã thiết kế một mô hình trừu tượng cho phép chúng ta diễn tả quá trình tính toán này một cách đơn giản như vốn
dĩ của nó, đồng thời che dấu đi các chi tiết phức tạp trong việc song song hóa, chấp nhận lỗi, cân bằng nạp, phân tán dữ liệu trong một thư viện riêng Sự trừu tượng hóa này được lấy ý tưởng từ 2 thành phần cơ bản là map và reduce trong Lisp và nhiều loại ngôn ngữ lập trình hàm khác Chúng ta có thể nhận thấy rằng trong hầu hết các quá trình tính toán của chúng ta đều bao gồm một thao tác map, ánh xạ các đầu vào với các giá trị của bản ghi để thực hiện việc tính toán các giá trị đó thành
1 tập các cặp khóa/giá trị tạm thời, sau đó ta lại tạo thêm một thao tác reduce, thu gọn các giá trị mà có cùng key lại với nhau và cho ra kết quả.Việc sử dụng mô hình hàm chức năng map và reduce cho phép chúng ta có thể thực thi song song các tính toán lớn dễ dàng và có thể sử dụng quá trình thực thi lại như một cơ chế chấp nhận lỗi
Các thế mạnh chính của phương pháp này là cung cấp cho chúng ta một giao diện đơn giản và mạnh mẽ, cho phép song song hóa và phân tán dữ liệu trong các phép toán lớn một cách tự động, giúp cho ta thu được hiệu năng cao nhất trong số lượng lớn các cụm máy tính thành phần của đám mây điện toán Ở phần sau chúng