Home > Principles, Resource Management > Amazon Web Services

Amazon Web Services

Nói đến cloud computing, không thể không nhắc đến Amazon. Cùng với Google, Microsoft và IBM, Amazon đã sớm đầu tư vào nghiên cứu, ứng dụng và trở thành “đại gia” trong lĩnh vực này, chủ yếu phát triển dựa vào thương mại điện tử.

Amazon Cloud Computing(hay còn gọi là Amazon Web Service-AWS) bao gồm: Elastic Compute Cloud(EC2), Simple Storage Service(S3), SimpleDB, Simple Queue Service(SQS), Elastic MapReduce Service, CloudFront, DevPay và FPS. Các dịch vụ này đề cập đến nhiều khía cạnh khác nhau của cloud computing, người dùng có thể căn cứ theo nhu cầu của mình để chọn sử dụng một hoặc nhiều dịch vụ và trả tiền theo lượng tài nguyên (không hạn chế) mà mình dùng.

Bài viết này không nhằm mục đích đi quá sâu vào các chi tiết kĩ thuật mà chỉ giới thiệu ý tưởng cơ bản và chức năng của từng thành phần trong AWS. Trước hết giới thiệu key-value store Dynamo, nền tảng của Amazon platform.

1. Dynamo:

Cùng với việc bùng nổ các dịch vụ web, lượng dữ liệu web tăng một cách chóng mặt, RDBMS truyền thống không còn khả năng đáp ứng nhu cầu lưu trữ. Do đó, nhiều nhà cung cấp dịch vụ đã tự phát triển hệ thống lưu trữ dữ liệu cho riêng mình. Dymano là một ví dụ tiêu biểu trong số đó, được dùng trong rất nhiều hệ thống của Amazon.

Từ hình bên có thể thấy rằng toàn bộ Amazon platform đều phân tán, không có trung tâm, Dynamo cũng không ngoại lệ. Do các chi tiết kĩ thuật không được Amazon cung cấp đầy đủ, hiện tại không rõ Dynamo hỗ trợ các dịch vụ khác ở mức độ như thế nào. Tuy nhiên xét về công dụng, Dynamo lưu trữ các dữ liệu liên quan cloud services của người dùng; còn xét về mặt thực hiện, các dịch vụ liên quan đến lưu trữ của Amazon đều gắn bó mật thiết với Dynamo, trong đó S3 được xây dựng trên Dynamo.

Dynamo sử dụng hàm Hash cải tiến và sao lưu dữ liệu để giải quyết vấn đề balance, dùng vector clock để xử lí các xung đột giữ liệu. Các sự cố tạm thời được khắc phục bằng cách sử dụng cơ chế Hinted handoff (trở về trạng thái trước đó), thông qua điều chỉnh các tham số (W,R,N) và cơ chế quorum. Đối với các sự cố lớn hơn, Dynamo sử dụng Merkle tree đảm bảo dữ liệu được đồng bộ. Mỗi node trong Dynamo đều lưu thông tin routing đến các node khác. Các node này dùng một phương thức giao tiếp tương tự như Gossip protocol để đảm bảo thông tin mình có luôn là mới nhất.

2. Elastic Compute Cloud-EC2

EC2 là platform cơ bản của cloud computing environment của Amazon. Đường đi dữ liệu rất phức tạp, năng lực tính toán của network platform của doanh nghiệp và người dùng cá nhân cũng thay đổi theo sự gia tăng của lưu lượng. Sử dụng các application interface do Amazon cung cấp, người dùng có thể tạo mới, thêm hoặc xóa instance tùy theo nhu cầu của mình, thông qua việc xác định số lượng instance để đảm bảo năng lực tính toán có thể thay đổi theo sự biến đổi của dữ liệu.  Mỗi instance như là một máy tính ảo (bạn có thể tìm hiều thêm trong các bài về openstack).

EC2 mang một số ưu điểm sau:

a)       Linh hoạt: người dùng có thể lựa chọn số lượng, loại instance. Instance giống như một máy ảo, mỗi loại instance được thiết lập số lượng CPU, dung lượng RAM, ổ cứng, số bit (32 hoặc 64). Người dùng còn có thể lựa chọn vị trí địa lí cho instance của mình.

b)      Giá thành thấp: doanh nghiệp không cần mua thêm các thiết bị như server, EC2 tính phí theo thời gian sử dụng thực tế với giá cả tương đối hợp lí

c)       An toàn: EC2 cung cấp một gói các công cụ bảo đảm tính an toàn, ví dụ SSH, firewall, cho phép người dùng theo dõi các ứng dụng.

d)      Dễ sử dụng: người dùng có thể thiết lập ứng dụng cho riêng mình dựa theo những công cụ được cung cấp, EC2 tự động giúp người dùng balancing.

e)       Chịu lỗi tốt: trong trường hợp xảy ra sự cố, EC2 vẫn đảm bảo ứng dụng của người dùng được duy trì ổn định.

(to be continued)

  1. No comments yet.
  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: