Tải bản đầy đủ (.pdf) (93 trang)

Đồ án tìm hiểu về windows azure

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (3.66 MB, 93 trang )

MỞ ĐẦU
Hiện nay, đất nước đang thực hiện công cuộc công nghiệp hóa, hiện đại hóa,
trong đó việc rút ngắn sự tụt hậu, phát triển về khoa học công nghệ là yếu tố then chốt
quyết định sự thành công của công cuộc đổi mới. Song song với quá trình phát triển,
ngày càng có nhiều bài toán mới, đòi hỏi năng lực xử lí lớn xuất hiện trong khoa học,
thương mại và quản lí đ ất nước. Việc nghiên cứu, áp dụng Windows Azure Platform là
một giải pháp tốt để giải quyết những vấn đề này.
Hơn nữa, nền tảng Windows Azure còn khá mới mẻ, đang trong giai đoạn hoàn
thiện, việc cùng tham gia với cộng đồng thế giới sẽ giúp chúng ta học hỏi kinh nghiệm,
tiến tới làm chủ công nghệ, từ đó phát triển theo hướng đi của riêng mình, đáp ứng nhu
cầu của đất nước.
























LỜI CÁM ƠN
Các thành viên trong nhóm xin chân thành cám ơn thầy giáo hướng dẫn Nguyễn
Nam Trung, người đã trực tiếp hướng dẫn, giúp đỡ và dẫn dắt tận tình trong suốt quá
trình em thực hiện đồ án môn học này.
Em cũng xin gửi lời cám ơn tới các thầy, cô giáo trong khoa Công Nghệ Thông
Tin, Trường CĐ CNTT TP.HCM đã truyền đạt cho em những kiến thức, kinh nghiệm
quý báu trong suốt học kỳ vừa qua.
Nhóm cũng cảm đến đến những người bạn, các thành viên của các nhóm khác
đã giúp đỡ, hỗ trợ trong quá trình nhóm làm đồ án môn học này. Những góp ý, xây
dựng của các bạn đã giúp nhóm hoàn thiện hơn về kỹ năng và mục đích của đề tài.
Mặc dù đã hết sức nỗ lực và cố gắng, nhưng luận văn chắc chắn sẽ không tránh
khỏi những thiếu sót. Chúng em kính 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.

Tp. Hồ Chí Minh, tháng 06 năm 2013
Nhóm xin chân thành cảm ơn.

















NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………

………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
TP.HCM, ngày … tháng …… năm ……
Giáo viên hướng dẫn






LỜI NÓI ĐẦU

uyển sách này thực hiện việc nghiên cứu tìm hiểu các vấn đề chung của
Windows Azure Platform như kiến trúc, thành phần, chức năng, lợi ích, các mô
hình ứng dụng nhằm đưa ra một tầm nhìn tổng quan về Windows Azure
Platform. Tìm hiểu mô hình, hoạt động, một số vấn đề khi sử dụng các thành phần
củaWindows Azure Platform để phát triển ứng dụng.Tìm hiểu môi trường phát triển
Windows Azure Development Kit. Tìm hiểu các dịch vụ và kịch bản của Windows
Azure và chọn lọc để phát triển ứng dụng điện toán đám mây trong doanh nghiệp cụ thể
là phần mềm quản lý các chi nhánh trang trại với cơ sở dữ liệu trên đám mây.
























Q

MỤC LỤC

Chương 1: TỔNG QUAN WINDOWS AZURE PLATFORM 1
1.1. Tổng quan điện toán đám mây 1
1.1.1. Định nghĩa 1
1.1.2. Các giải pháp 2
1.1.3. Các tầng tạo nên đám mây 3
1.1.4. Lợi ích của điện toán đám mây 5
1.2. Tổng quan Windows Azure Platform 7
1.2.1. Giới thiệu 7
1.2.2. Giới thiệu Windows Azure 8
1.2.3. Giới thiệu SQL Azure 9
1.2.4. Windows Azure Platform AppFabric 11

Chương 2 GIỚI THIỆU VỀ WINDOWS AZURE 13
2.1. Tổng quan Windows Azure 13
2.2. Các thành phần Windows Azure 14
2.2.2. Dịch vụ lưu trữ (Storage Service) 16
2.2.3. Windows Azure Fabric 17
Chương 3 GIỚI THIỆU BỘ LƯU TRỮ WINDOWS AZURE 21
3.1. Giới thiệu bộ lưu trữ Windows Azure 21
3.2. Windows Azure Blob 21
3.2.1. Giới thiệu 21
3.2.2. Giao tiếp REST với Blob 23
3.2.3. Với Blob là một danh sách các block 23
3.3. Windows Azure Table 25
3.3.1. Giới thiệu 25
3.3.2. Phân vùng Table 28

3.3.3. Lập trình Table 30
3.4. Windows Azure Queue 31
3.4.1. Giới thiệu 31
3.4.2. Mô hình dữ liệu Queue: 33
3.4.3. Thực tiễn tốt nhất 34
Chương 4 GIỚI THIỆU SQL AZURE 36
4.1. Giới thiệu 36
4.2. Tổng quan kiến trúc 36
4.2.1. Mô hình Provisioning 36
4.2.2. Mô hình dữ liệu quan hệ 37
4.2.3. Kiến trúc truy xuất dữ liệu 37
4.2.4. Mô hình bảo mật 38
4.2.5. Triển khai 38
4.3. Ứng dụng của SQL Azure 39
Chương 5 TỔNG QUAN WINDOWS AZURE PLATFORM APPFABRIC 40

5.1. Giới thiệu 40
5.2. Giới thiệu AppFarbic Service Bus 40
5.2.1. Giới thiệu 40
5.2.2. Kiến trúc Service Bus 40
5.2.3. Message Buffer 49
5.3. Tổng quan Fabric Access Control 51
5.3.1. Giới thiệu 51
5.3.2. Xây dựng Web Services Trust Access Control 52
5.3.3. Access Control Management Service 57
Chương 6 HƯỚNG DẪN CÀI ĐẶT WINDOWS AZURE SDK 2.0 VÀ VIẾT
CHƯƠNG TRÌNH HELLO WORD 59
6.1. Hướng dẫn cài đặt windows azure sdk 2.0 59

6.2. Hướng dẫn viết chương trình hello word 63
Chương 7 ỨNG DỤNG ĐIỆN TOÁN ĐÁM MÂY TRONG QUẢN LÝ TRANG
TRẠI 69
7.1. Phân tích 69
7.1.1. Đặc tả yêu cầu 69
7.1.2. Phân tích chương trình về chức năng và dũ liệu 69
7.2. Thiết kế chương trình 73
7.2.1. Thiết kế dữ liệu 73
7.2.2. Thiết kế giao diện và xử lý 76

Window Azure
2013



1




Chương 1: TỔNG QUAN WINDOWS AZURE PLATFORM

1.1. Tổng quan điện toán đám mây
1.1.1. Định nghĩa
Theo Gartner:
"Điện toán đám mây là một kiểu tính toán trong đó các năng lực CNTT có khả
năng mở rộng rất lớn được cung cấp "dưới dạng dịch vụ" qua mạng Internet đến
nhiều khách hàng bên ngoài."
Theo Forrester Research:
"Điện toán đám mây là một kho tài nguyên cơ sở hạ tầng ảo hóa, có khả năng
mở rộng cao và được quản lý, có thể hỗ trợ các ứng dụng của khách hàng cuối và
được tính tiền theo mức độ sử dụng."
Theo NIST (National Institute of Standards and Technology):
"Điện toán đám mây là một mô hình cho phép truy cập mạng thuận tiện, theo
nhu cầu đến một kho tài nguyên điện toán dùng chung, có thể định cấu hình: mạng, máy
chủ, lưu trữ, ứng dụng,có thể được cung cấp và thu hồi một cách nhanh
chóng với yêu cầu tối thiểu về quản lý hoặc can thiệp của nhà cung cấp dịch vụ."





















Hình 1.1 - Mọi thứ đều tập trung vào đám mây
Window Azure
2013



2



1.1.2. Các giải pháp
Điện toán đám mây ra đời để giải quyết các vấn đề sau:
- Vấn đề về lưu trữ dữ liệu:
Dữ liệu được lưu trữ tập trung ở các trung tâm dữ liệu khổng
lồ. Các công ty lớn như Microsoft, Google có hàng chục trung tâm dữ liệu nằm
rải rác khắp nơi trên thế giới. Các công ty lớn này sẽ cung cấp các dịch vụ cho phép
doanh nghiệp có thể lưu trữ và quản lý dữ liệu của họ trên các trung tâm lưu trữ.
- Vấn đề về sức mạnh tính toán: có 2 giải pháp chính
Sử dụng các siêu máy tính để xử lý tính toán.
Sử dụng các hệ thống tính toán song song, phân tán.
- Vấn đề về cung cấp tài nguyên, phần mềm.

Cung cấp các dịch vụ như IaaS (infrastructure as a service), PaaS
(platform as a service), SaaS (software as a service).





























Hình 1.2 - Minh họa về các dịch vụ
Window Azure
2013



3




1.1.3. Các tầng tạo nên đám mây





















Hình 1.3 - Các tầng tạo nên đám mây
Các dịch vụ ứng dụng (SaaS)
Tầng dịch vụ ứng dụng này lưu trữ các ứng dụng phù hợp với mô hình SaaS.
Đây là những ứng dụng chạy trong một đám mây và được cung cấp theo yêu cầu. Đôi
khi các dịch vụ này được cung cấp miễn phí và các nhà cung cấp dịch vụ tạo ra doanh
thu từ những thứ khác như các quảng cáo Web và nhiều khi các nhà cung cấp ứng dụng
tạo ra doanh thu trực tiếp từ việc sử dụng dịch vụ. Nếu bạn đã kiểm tra thư của bạn khi
sử dụng Gmail hoặc Yahoo Mail hoặc được nhắc các cuộc hẹn khi sử dụng Google
Calendar, thì bạn đã quen thuộc với tầng trên cùng của đám mây. Đây chỉ là một vài ví
dụ về các kiểu ứng dụng này.
Các ứng dụng được cung cấp qua mô hình SaaS làm lợi cho người tiêu dùng bằng
cách giải phóng cho họ khỏi việc cài đặt và bảo trì phần mềm và các ứng dụng
có thể được sử dụng thông qua các mô hình cấp phép có hỗ trợ trả tiền để sử dụng.
Các dịch vụ nền tảng
Đây là tầng ở đó chúng ta thấy cơ sở hạ tầng ứng dụng nổi lên như là một tập hợp
các dịch vụ. Các dịch vụ ở đây được dành để hỗ trợ cho các ứng dụng. Các ứng dụng
này có thể đang chạy trong đám mây và chúng có thể đang chạy trong một trung tâm dữ
Window Azure
2013



4



liệu doanh nghiệp truyền thống. Để đạt được khả năng mở rộng cần thiết trong một đám
mây, các dịch vụ khác nhau được đưa ra ở đây thường được ảo hóa. Các ví dụ trong

phần này của đám mây bao gồm Amazon Web Services, Boomi, và Google App
Engine. Các dịch vụ nền tảng này cho phép khách hàng
chắc chắn rằng các ứng dụng của họ được trang bị để đáp ứng các nhu cầu của người
dùng bằng cách cung cấp cơ sở hạ tầng ứng dụng dựa theo yêu cầu.
Các dịch vụ cơ sở hạ tầng
Ở đây, chúng ta thấy một tập hợp các tài sản vật lí như các máy chủ, các thiết bị mạng
và các đĩa lưu trữ được đưa ra như là các dịch vụ được cung cấp cho người tiêu dùng.
Các dịch vụ ở đây hỗ trợ cơ sở hạ tầng ứng dụng và nhiều người tiêu dùng hơn. Cũng
như với các dịch vụ nền tảng, sự ảo hóa là một phương pháp thường được sử dụng để
tạo ra chế độ phân phối các nguồn tài nguyên theo yêu cầu.
Ví dụ về các dịch vụ cơ sở hạ tầng bao gồm IBM Bluehouse, VMware, Amazon
EC2, Microsoft Azure Platform, Sun ParaScale Cloud Storage và còn nữa.
* Các cách hình thành đám mây
Có ba kiểu hình thành đám mây: riêng tư (theo giả thuyết), công cộng và lai.
Các đám mây công cộng có sẵn cho công chúng hoặc một nhóm ngành nghề
lớn và do một tổ chức bán các dịch vụ đám mây sở hữu và cung cấp. Một đám mây
công cộng là cái mà người ta hình dung là đám mây theo nghĩa thông thường; đó là,
các tài nguyên được cung cấp động trên Internet bằng cách sử dụng các ứng dụng web
từ một nhà cung cấp bên thứ ba bên ngoài cung cấp các tài nguyên chia sẻ và gửi hóa
đơn tính cước trên cơ sở tính toán việc sử dụng.
Các đám mây riêng tư tồn tại bên trong tường lửa của công ty bạn và do tổ chức của
bạn quản lý. Chúng là các dịch vụ đám mây do bạn tạo ra và kiểm soát trong doanh
nghiệp của mình. Các đám mây riêng tư cũng cung cấp nhiều lợi ích tương tự như các
đám mây công cộng — sự khác biệt chủ yếu là tổ chức của bạn chịu trách nhiệm thiết
lập và duy trì đám mây đó.
Các đám mây lai là một sự kết hợp của đám mây công cộng và riêng tư khi sử
dụng các dịch vụ có trong cả hai vùng công cộng và riêng tư. Các trách nhiệm quản lý
Window Azure
2013




5



được phân chia giữa các nhà cung cấp dịch vụ đám mây công cộng và chính doanh
nghiệp. Khi sử dụng một đám mây lai, các tổ chức có thể xác định các mục tiêu và
các yêu cầu của các dịch vụ được tạo ra và có được chúng dựa vào sự lựa chọn thích
hợp nhất.
1.1.4. Lợi ích của điện toán đám mây
Nhanh nhẹn: Có khả năng cung cấp các tài nguyên cơ sở hạ tầng, công nghệ có
sẵn một cách nhanh chóng và ít tốn kém.
Chi phí thấp: Giảm chi phí đầu tư, nâng cấp, bảo trì các cơ sở hạ tầng tốn kém
như: máy chủ, mạng, các thiết bị lưu trữ, phần mềmvà việc tính chi phí dựa trên nhu cầu
sử dụng giúp tiết kiệm chi phí.
Độc lập với các thiết bị và vị trí : Người dùng có thể truy cập vào ứng dụng
đám mây bằng nhiều thiết bị và tại bất cứ vị trí nào thông qua Internet.
Hỗ trợ nhiều người thuê: cho phép chia sẻ tài nguyên và chi phí giữa một
phạm vi lớn người dùng nhằm:
o Tập trung cơ sở hạ tầng tại một vùng với chi phí thấp.
o Khả năng chịu tải cao.
o Cải thiện việc sử dụng và nâng cao hiệu suất cho hệ thống.
Khả năng co giãn linh động (theo nhu cầu): Doanh nghiệp cũng có thể dễ
dàng điều chỉnh thêm, bớt người sử dụng và bổ sung dịch vụ tùy theo nhu cầu sử dụng.
Bảo mật : Vấn đề bảo mật cải thiện nhờ vào việc tập trung hóa dữ liệu, tăng chi
phí đầu tư cho việc bảo mật.
1.1.5. Thách thức của điện toán đám mây
Chi phí: chi phí bản quyền phần mềm ban đầu có thể khá cao.
Công tác quản lý cũng có thể sẽ gặp khó khăn, bởi đám mây là một dịch vụ

được cung cấp từ bên ngoài, với phương thức hoạt động, lưu trữ và xử lý dữ liệu từ
những nguồn cách xa.
Tính sẵn sàng: Không đảm bảo về tính sẵn sàng cũng là một trở ngại hiện nay,
khi chỉ có một số rất ít nhà cung cấp dịch vụ cam kết được về sự sẵn sàng và liên tục
của dịch vụ, về thời gian sửa chữa và phục hồi dữ liệu. Nói cách khác, những dịch vụ
Window Azure
2013



6



điện toán đám mây có vẻ không đáng tin cậy đối với một số ứng
dụng quan trọng và có yêu cầu cao.
Tính riêng tư: Khi dữ liệu được cập nhật trong đám mây, nó có thể dễ dàng bị
những tên tội phạm mạng, gián điệp và những đối thủ cạnh tranh xâm nhập. Thực tế
hiện nay các nhà cung c ấp dịch vụ điện toán đám mây vẫn chưa có một phương pháp
bảo vệ nào trong trường hợp dữ liệu bị xâm nhập.
Vấn đề tuân thủ: cũng trở nên phức tạp. Những nhà cung cấp dịch vụ điện
toán đám mây có thể chuyển dữ liệu tới quốc gia khác có giá rẻ hơn, nhưng luật lỏng
lẻo hơn. Vậy ai sẽ là người chịu trách nhiệm pháp lý về quản lý dữ liệu, sở hữu dữ liệu,
sự minh bạch của tài liệu cũng như tính chính xác của dữ liệu kiểm toán? Cho đến giờ,
chưa có công ty cung cấp dịch vụ đám mây nào sẵn sàng cung cấp sự
đảm bảo mà các công ty lớn cần có thể loại trừ những rủi ro đó.
1.1.6. Xu hướng phát triển
Thuật ngữ "điện toán đám mây" ra đời từ giữa năm 2007, cho đến nay đã
không ngừng phát triển mạnh mẽ và được hiện thực bởi nhiều công ty lớn trên thế
giới như IBM, Sun, Amazon, Google, Microsoft, Yahoo, SalesForce, 

Giám đốc của Gartner – Ed Anderson nói rằng: “ Điện toán đám mây là thị
trường có mức độ phát triển lớn nhất trên thị trường IT. Chìa khóa để các doanh nghiệp
thành công trong xu hướng mới này đó là hiểu rõ được người dùng, thị trường và các
điều kiện địa phương của từng dịch vụ khác nhau”.
Trong năm 2011, Gartner đã từng dự đoán, thị trường điện toán đám mây trong
thời điểm hiện tại lên tới 91,4 tỷ USD. Đến 2016, con số này có thể lên tới 206,6 tỷ
USD.
Sự phát triển của thị trường di động đang thúc đẩy sự phát triển của điển toán
đám mây.
Gartner chỉ ra rằng, thị trường di động đang phát triển với một tốc độ khủng
khiếp. Các nội dung giải trí hiện tại là quá nhiều để có thể "bỏ vừa" những thiết bị với
dung lượng hạn chế như smartphone và tablet. Bên cạnh đó, một sốt thiết bị di động lại
không có khả năng nâng cấp thêm bộ nhớ điển hình như iPhone, iPad hoặc các dòng sản
Window Azure
2013



7



phẩm Windows Phone cũ. Chính vì thế , người dùng gần như không có sự lựa chọn nào
khác ngoài việc sử dụng các giải pháp điện toán đám mây.
Mảng "Cloud" dành cho doanh nghiệp chiếm doanh thu không nhỏ trong tổng thị
trường.













Hình 1.4 - Mảng "Cloud" chiếm 2/3 tổng doanh thu trong thị trường
Về mảng IT, Gartner chỉ ra rằng, các dịch vụ điện toán đám mây dành cho doanh
nghiệp là mảng có doanh thu lớn nhất, chiếm đến 2/3 thị trường hiện tại. Trên thực tế,
ngày càng có nhiều doanh nghiệp chọn phương án “lên mây" để tiết kiệm chi phí, tăng
tính bảo mật và giảm thiểu rủi ro trong quản lý dữ liệu.

1.2. Tổng quan Windows Azure Platform
1.2.1. Giới thiệu
Windows Azure Platform là một nhóm các công nghệ đám mây, mỗi công
nghệ cung cấp một tập các dịch vụ đặc trưng để phát triển ứng dụng.






Window Azure
2013



8
















Hình 1.5 - Tổng quan Windows Azure Platform

Các thành phần của Windows Azure Platform :
- Windows Azure: cung cấp môi trường nền tảng Windows để chạy ứng dụng
và lưu trữ dữ liệu trên máy chủ trong trung tâm dữ liệu của Microsoft.
- SQL Azure: cung cấp dịch vụ lưu trữ dữ liệu quan hệ trên đám mây dựa trên
SQL Server.
- Windows Azure Platform AppFabric: cung cấp các dịch vụ đám mây để
kết nối các ứng dụng chạy trên đám mây hoặc on-premise.

1.2.2. Giới thiệu Windows Azure
Windows Azure được hiểu đơn giản là một nền tảng để chạy ứng dụng
Windows và lưu trữ dữ liệu trên đám mây.





















Hình 1.6 - Windows Azure cung cấp dịch vụ tính toán và dịch vụ lưu trữ
Window Azure
2013



9



Windows Azure chạy trên nhiều máy tính đặt trong trung tâm dữ liệu của
Microsoft và truy xuất qua Internet. Một Windows Azure fabric liên kết chặt chẽ nhiều

sức mạnh xử lí này thành một thể thống nhất.
Dịch vụ tính toán dựa trên Windows. Lập trình viên có thể xây dựng ứng dụng sử
dụng .NET Framework, native-code, Các ứng dụng này được viết bằng các ngôn ngữ
thông thường như: C#, Visual Basic, C++ và cả Java, sử dụng Visual Studio hoặc
công cụ phát triển khác. Lập trình viên có thể tạo ứng dụng Web, sử dụng công nghệ
như ASP.Net, WCF và PHP, ứng dụng cũng có thể chạy như một xử lí nền độc lập,
hoặc kết hợp cả Web và xử lí nền.
Cả ứng dụng Windows Azure và ứng dụng on-premise có thể truy xuất dịch
vụ lưu trữ Windows Azure, và cả hai cùng truy xuất bằng REST API. Dịch vụ lưu trữ
cho phép lưu trữ các đối tượng dữ liệu lớn qua blob, cung cấp các queue để liên lạc
giữa các thành phần trong ứng dụng, và cung cấp dạng table với ngôn ngữ truy vấn
đơn giản. Đối với các ứng dụng có nhu cầu lưu trữ dữ liệu quan hệ truyền thống,
Windows Azure Platform cung cấp cơ sở dữ liệu SQL Azure.

Tuy nhiên, để đạt được những thuận lợi trên đòi hỏi phải quản lí hiệu quả.
Trong Windows Azure, mỗi ứng dụng có một tập tin cấu hình. Bằng cách cấu hình tập
tin này, người chủ ứng dụng có thể cấu hình nhiều thành phần như thiết lập số thể hiện
mà ứng dụng Windows Azure nên chạy. Sau đó, Windows Azure fabric giám sát ứng
dụng để duy trì trạng thái mong muốn.
1.2.3. Giới thiệu SQL Azure
Mục tiêu của SQL Azure cung cấp các dịch vụ dựa trên đám mây để lưu trữ và xử
lí dữ liệu. Trong khi đó Microsoft nói rằng SQL Azure sẽ bao gồm một loạt các tính
năng định hướng dữ liệu, đồng bộ hóa dữ liệu, báo cáo, phân tích dữ liệu và
những chức năng khác.









Window Azure
2013



10




















Hình 1.7 - SQL Azure cung cấp dịch vụ định hướng dữ liệu trong đám mây
Cơ sở dữ liệu SQL Azure cung cấp một hệ thống quản lí cơ sở dữ liệu dựa trên

đám mây. Công nghệ này cho phép ứng dụng on-premise và ứng dụng đám mây lưu trữ
dữ liệu quan hệ và những kiểu dữ liệu khác trên các máy chủ trong trung tâm dữ liệu
của Microsoft. Cũng như các công nghệ đám mây khác, người dùng chỉ trả cho
những gì họ sử dụng.
Cơ sở dữ liệu SQL Azure được xây dựng dựa trên Microsoft SQL Server. Công
nghệ này cung cấp môi trường SQL Server trong đám mây, bổ sung index,

view, store procedure, trigger, Dữ liệu này có thể được truy xuất bằng ADO.Net
và các giao tiếp truy xuất dữ liệu Windows khác.
Khi ứng dụng sử dụng Cơ sở dữ liệu SQL Azure thì yêu cầu về quản lí sẽ được
giảm đáng kể. Thay vì lo lắng về các công việc như giám sát việc sử dụng đĩa và theo
dõi tập tin nhật ký (log file), khách hàng sử dụng Cơ sở dữ liệu SQL Azure chỉ tập
trung vào dữ liệu. Microsoft sẽ xử lí các hoạt động chi tiết.











Window Azure
2013



11

























Hình 1.8-Ứng dụng truy xuất dữ liệu trong cơ sở dữ liệu SQL Azure

Một ứng dụng sử dụng Cơ sở dữ liệu SQL Azure có thể chạy trên Windows
Azure, trong một trung tâm dữ liệu của doanh nghiệp, trên thiết bị di động, Một ứng
dụng Cơ sở dữ liệu SQL Azure có thể sử dụng thư viện client SQL Server hiện có. Bao
gồm ADO.Net, ODBC, và PHP. Và bởi vì Cơ sở dữ liệu SQL Azure giống như hệ thống

SQL Server thông thường nên các công cụ hỗ trợ có thể được sử dụng, bao gồm: SQL
Server Management Studio, SQL Server Integration
Service,
Như trong bộ lưu trữ Windows Azure, tất cả các dữ liệu được lưu trữ trong Cơ sở
dữ liệu SQL Azure được sao ba bảng. Mục đích là để cung cấp việc lưu trữ dữ liệu
đáng tin cậy ngay cả khi đối mặt với lỗi của hệ thống và mạng.

1.2.4. Windows Azure Platform AppFabric
Windows Azure Platform AppFabric cung cấp dịch vụ cơ sở hạ tầng dựa trên đám
mây.





Window Azure
2013



12

























Hình 1.9-Windows Azure Platform AppFabric cung cấp cơ sở hạ tầng

Các thành phần của Windows Azure Platform AppFabric :
Service Bus: Mục tiêu của Service Bus là cho phép ứng dụng expose các
endpoint để có thể được truy xuất bởi các ứng dụng khác. Mỗi endpoint đã expose
được gán một URI. Client sử dụng URI này để xác định vị trí và truy xuất dịch vụ.
Service Bus cũng xử lí việc chuyển đổi địa chỉ mạng và vượt qua tường lửa mà không
cần mở port mới để expose ứng dụng.
Access Control: Dịch vụ này cho phép ứng dụng client chứng thực chính nó
và cung cấp một ứng dụng server với thông tin xác thực. Máy chủ sau đó có thể sử
dụng thông tin này để quyết định những gì ứng dụng này được phép làm.







Window Azure
2013



13




Chương 2 GIỚI THIỆU VỀ WINDOWS AZURE


2.1. Tổng quan Windows Azure
Nhìn một cách tổng quan, Windows Azure là một hệ điều hành dùng để chạy các
ứng dụng Windows và lưu dữ liệu của nó trên đám mây. Nhưng khác với một
hệ điều hành bình thường, người dùng phải cài đặt và chạy trên máy tính của mình,
Windows Azure là một dịch vụ: Khách hàng dùng nó để chạy ứng dụng và lưu trữ dữ
liệu trên các máy chủ ở trung tâm dữ liệu của Microsoft, có thể truy cập qua Interner.
Các ứng dụng này có thể cung cấp dịch vụ cho doanh nghiệp và khách hàng.































Hình 2.1 - Ứng dụng Windows Azure

Window Azure
2013



14







2.2. Các thành phần Windows Azure















Hình 2.2- Các thành phần Windows Azure

Dịch vụ tính toán sẽ chạy ứng dụng, trong khi dịch vụ lưu trữ lưu dữ liệu.
Thành phần thứ ba, Windows Azure Fabric, cung cấp cách thức để quản lý và theo dõi
các ứng dụng sử dụng nền tảng đám mây này.
2.2.1. Dịch vụ tính toán (Compute Service)
Dịch vụ tính toán Windows Azure có thể chạy nhiều kiểu ứng dụng khác nhau.
Mục tiêu chính của kiến trúc này là hỗ trợ các ứng dụng có lượng người sử dụng truy

cập đồng thời cực lớn. Windows Azure được thiết kế để hỗ trợ chạy nhiều bản sao của
cùng một mã nguồn trên nhiều máy chủ khác nhau.
Để đạt được điều này, ứng dụng Windows Azure có thể có nhiều thể hiện, mỗi
thể hiện được thực thi trên một máy chủ ảo.
Dịch vụ tính toán hỗ trợ 2 loại thể hiện : Web role và Worker role.









Window Azure
2013



15




















Hình 2.3 – Ứng dụng Windows Azure có thể chứa Web role và Worker role

Một thể hiện Web role có thể chấp nhận một request HTTP/HTTPS. Để thực
hiện điều này, thể hiện Web role chạy trên một máy ảo có cài Internet Information
Services 7 (IIS 7). Lập trình viên có thể tạo ra Web role bằng ASP.NET, WCF, hay
bất kì kĩ thuật .NET khác có thể hoạt động được với IIS 7. Ngoài ra, lập trình viên
có thể viết các ứng dụng với native code, có nghĩa là có thể chạy các ứng dụng sử dụng
kĩ thuật khác như PHP, Java. Khi một request được gửi đến Web role, nó sẽ được
truyền qua bộ cân bằng tải đến các thể hiện của Web role trong cùng một ứng dụng. Do
đó, không đảm bảo rằng, các yêu cầu từ một người dùng có thể được gửi đến cùng một
thể hiện của ứng dụng.
Một thể hiện Worker role không giống như Web role, nó không chấp nhận
request từ bên ngoài, các máy ảo của nó không chạy IIS. Một Worker role cho bạn khả
năng để chạy các xử lý ngầm liên tục trên đám mây. Một Worker role có thể làm việc
với queue, table, blob trong dịch vụ lưu trữ. Nó chạy hoàn toàn độc lập với thể hiện Web
role, mặc dù có thể cùng thuộc một phần của dịch vụ. Việc liên lạc giữa Web role và
Worker role có thể thông qua queue của dịch vụ lưu trữ .
Window Azure
2013




16



Lập trình viên có thể chỉ sử dụng thể hiện Web role, hay Worker role, hoặc kết hợp
cả hai để tạo ra ứng dụng Windows Azure. Sử dụng Windows Azure portal để thay đổi
số lượng thể hiện của Web role, Worker role tùy theo yêu cầu của ứng
dụng.
Khi chạy các thể hiện Web role hay Worker role, các máy ảo cũng chạy đồng thời
các Fabric agent. Các agent phục vụ cho việc tương tác giữa các thể hiện với Windows
Azure Fabric. Các agent này trình bày các API được định nghĩa để các thể hiện có thể
làm một số việc như: ghi chép, tìm thư mục gốc của tài nguyên lưu trữ cục bộ trên máy
ảo của nó.
Windows Azure cho phép lập trình viên chọn cấu hình máy ảo: một nhân, hai
nhân, bốn nhân và tám nhân. Và để tăng hiệu suất, người sở hữu ứng dụng có thể tăng
số lượng thể hiện đang chạy được đặt tả trong tập tin cấu hình ứng dụng. Windows
Azure fabric sẽ thêm máy ảo mới, gán thêm nhân và bắt đầu chạy ứng
dụng. Fabric cũng dò khi một thể hiện Web role hoặc Worker role bị chết, nó sẽ tạo
một thể hiện mới.

2.2.2. Dịch vụ lưu trữ (Storage Service)
Dịch vụ lưu trữ Windows Azure hỗ trợ 3 kiểu dịch vụ: blob, table, queue.


















Hình 2.4 - Bộ lưu trữ Windows Azure: Blob, Table, Queue

Window Azure
2013



17



Một cách đơn giản nhất để lưu trữ dữ liệu là sử dụng blob. Windows Azure
blob có kiến trúc đơn giản: một tài khoản lưu trữ có một hoặc nhiều container, mỗi
container có một hoặc nhiều blob. Blob có thể rất lớn - mỗi blob có thể chứa vài
terabyte dữ liệu. Blob có thể kết hợp với metadata, như thông tin về nơi chụp ảnh hoặc
người sáng tác bài hát.
Một cách khác để sử dụng blob là Windows Azure XDrive, được gắn với mỗi thể
hiện Web role và Worker role. Lưu trữ bên dưới một XDrive là một blob, như vậy mỗi
blob là một ổ đĩa được gắn kết, mỗi thể hiện có thể đọc và ghi dữ liệu như hệ thống tập tin.
Để cho phép ứng dụng làm việc với dữ liệu hiệu quả hơn, bộ lưu trữ Windows

Azure cung cấp table. Không giống với bảng quan hệ, các table lưu trữ
một tập các entity với các property. Một table không có giản đồ và các property có
nhiều kiểu dữ liệu khác nhau như int, string, bool, hoặc datetime. Một ứng dụng có thể
truy xuất dữ liệu của table sử dụng ADO.Net Data Service hoặc LINQ. Một table có
thể rất lớn, với vài triệu entity chứa vài terabyte dữ liệu, và bộ lưu trữ Windows Azure
có thể phân vùng nó qua nhiều máy chủ nếu cần cải thiện hiệu suất.
Blob và table tập trung vào lưu trữ dữ liệu, thành phần lưu trữ thứ ba là queue lại
có một mục đích khác. Mục đích chính của queue là cung cấp cách thức để thể hiện
Web role liên lạc với thể hiện Worker role. Ví dụ, một người dùng có thể gửi một
request để thực hiện các nhiệm vụ tính toán chuyên sâu qua trang Web được
thực thi bởi Web role. Thể hiện Web role nhận request này và viết một message vào
queue - mô tả công việc được thực hiện. Một thể hiện Worker role đợi queue này, sau
đó đọc message và thực hiện nhiệm vụ.
Bộ lưu trữ Windows Azure có thể được truy xuất bởi một ứng dụng Windows
Azure hoặc bởi một ứng dụng khác. Cả 3 thành phần của bộ lưu trữ Windows Azure
đều sử dụng giao thức REST để truy xuất dữ liệu.
2.2.3. Windows Azure Fabric
Tất cả các ứng dụng Windows Azure và dữ liệu của nó đều tồn tại trên trung
tâm dữ liệu của Microsoft. Bên trong trung tâm dữ liệu này, một tập hợp các máy
dành cho Windows Azure được tổ chức thành một fabric.

×