HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG --- NGUYỄN VĂN HỮU NGHIÊN CỨU CÔNG NGHỆ ĐIỆN TOÁN ĐÁM MÂY VÀ KIẾN TRÚC HƯỚNG DỊCH VỤ ÁP DỤNG CHO BÀI TOÁN TÍCH HỢP DỮ LIỆU Chuyên ngành: Truyề
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN
THÔNG -
NGUYỄN VĂN HỮU
NGHIÊN CỨU CÔNG NGHỆ ĐIỆN TOÁN ĐÁM MÂY VÀ KIẾN TRÚC HƯỚNG DỊCH VỤ ÁP DỤNG
CHO BÀI TOÁN TÍCH HỢP DỮ LIỆU
Chuyên ngành: Truyền dữ liệu và mạng máy tính
Mã số: 60.48.15
TÓM TẮT LUẬN VĂN THẠC SĨ
HÀ NỘI – 2012
Trang 2Luận văn được hoàn thành tại:
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
Người hướng dẫn khoa học: TS HÀ HẢI NAM
Phản biện 1: ……… Phản biện 2: ………
Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc
sĩ tại Học viện Công nghệ Bưu chính Viễn thông Vào lúc: giờ ngày tháng năm…
Có thể tìm hiểu luận văn tại:
Thư viện của Học viện Công nghệ Bưu chính Viễn thông.
Trang 3LỜI NÓI ĐẦU
Chỉ vài năm sau khi xuất hiện Điện toán đám mây (ĐTĐM)đã trở thành một xu thế công nghệ không thể đảo ngược, với trung tâm điện toán đám mây ra đời đầu tiên vào nửa cuối năm 2008, Việt Nam đã trở thành một trong những quốc gia đầu tiên trong ASEAN đưa vào sử dụng công nghệ này Ngày nay số công ty, tổ chức theo đuổi ngày một nhiều, số dịch vụ cũng ngày một phong phú hơn, với những dịch vụ cụ thể, những ứng dụng cụ thể, khái niệm điện toán đám mây đã dần trở nên quen thuộc Điện toán đám mây trong lĩnh vực công nghệ thông tin cũng giống như đám mây ở trên trời ai cũng có thể nhìn thấy nó, do vậy đi bất cứ đâu chúng ta cũng có thể sử dụng, khai thác dữ liệu của chúng ta nếu ở đó có internet
Sự hội tụ nhiều công nghệ hiện có trong ĐTĐM như SOA( service oriented architecture), ảo hóa, cho phép các tài nguyên điện toán như: phần cứng, phần mềm, lưu trữ, được cung cấp một cách nhanh chóng cho người sử dụng dịch vụ theo yêu cầu của họ Các nguồn tài nguyên này cần được quản lý để sẵn sàng cung cấp cho người sử dụng một cách đảm bảo chính xác, an toàn và chất lượng
Trang 4Trong xu thế toàn cầu hóa và hội nhập kinh tế quốc tế, các
tổ chức, các doanh nghiệp cần bắt tay phối hợp hành động
và chia sẻ tài nguyên với nhau để nâng cao hiệu quả hoạt động Khi thế giới điện toán đã kết nối làm thế nào để khai thác được tối đa năng lực điện toán đó với chi phí thấp nhất và nhanh nhất?vấn đề không tương thích giữa các hệ thống? vấn đề tái sử dụng các hệ thống sẵn có?,…
Vì vậy, việc nghiên cứu công nghệ ĐTĐM và kiến trúc hướng dịch vụ để áp dụng vào hệ thống CNTT của các tổ chức, doanh nghiệp là rất cần thiết Đó là lý do em
chọn đề tài:”Nghiên cứu công nghệ ĐTĐM và kiến trúc hướng dịch vụ áp dụng cho bài toán tích hợp dữ liệu”
để làm khóa luận tốt nghiệp
- Mục đích của luận văn
-Tìm hiểu về công nghệ Điện toán đám mây
-Tìm hiểu về kiến trúc hướng dịch vụ
-Triển khai thử nghiệm kiến trúc hướng dịch vụ kết hợp công nghệ ĐTĐM
- Đối tượng nghiên cứu
Trang 5-Tập trung nghiên cứu tổng quan về kiến trúc hướng dịch
vụ tham chiếu cho ĐTĐM Các công nghệ sử dụng trong Điện toán đám mây
-Nghiên cứu triển khai các ứng dụng trên nền công nghệ Điện toán đám mây
- Phương pháp nghiên cứu
Nghiên cứu tổng quan lý thuyết về ĐTĐM và kiến trúc hướng dịch vụ, các công nghệ trong ĐTĐM, lựa chọn công nghệ và thử nghiệm mô hình kiến trúc hướng dịch vụ kết hợp công nghệ Điện toán đám mây cho bài toán tích hợp dữ liệu
- Kết cấu của luận văn
Luận văn gồm 3 chương
Chương 1: Trình bày tổng quan về kiến trúc hướng
dịch vụ-SOA(service oriented architecture)
Chương 2: Trình bầy về sự hội tụ của kiến trúc hướng
dịch vụ trong ĐTĐM, các công nghệ sử dụng trong ĐTĐM, các mô hình triển khai của ĐTĐM, kiến trúc hướng dịch vụ tham chiếu cho ĐTĐM
Chương 3: Triển khai thử nghiệm
Cuối cùng là kết luận lại những điểm chính, những đóng góp chính của luận văn, đồng thời chỉ ra những điểm cần khắc phục và định hướng phát triển tiếp theo cho luận văn
Trang 6Chương 1. KIẾN TRÚC HƯỚNG DỊCH VỤ- SOA
1.1Tổng quan về kiến trúc hướng dịch vụ
1.1.1 Giới thiệu về kiến trúc hướng dịch vụ
Kiến trúc hướng dịch vụ(service oriented architecture) là một hướng tiếp cận với việc thiết kế và tích hợp phần mềm, chức năng của hệ thống theo dạng module, hai từ đầu service oriented mô tả phương pháp luận của việc phát triển phần mềm, từ thứ 3 architecture-kiến trúc mô tả bức tranh tổng thể của các sản phẩm phần mềm được chuẩn hóa trên mạng, trao đổi với nhau trong ngữ cảnh một tiến trình nghiệp vụ
1.1.2 Các tính chất của SOA
-Loose coupling:giúp gỡ bỏ những ràng buộc điều khiển giữa những hệ thống đầu cuối
-Sử dụng lại dịch vụ: Tái sử dụng dịch vụ loại bỏ
thành phần trùng lặp, tăng độ vững chắc trong cài đặt và đơn giản hóa việc quản trị
- Sử dụng dịch vụ bất đồng bộ:
- Quản lý các policy: Việc quản lý các policy tăng
khả năng tạo ra các đặc tính tái dụng dịch vụ
Trang 7- Tự động dò tìm và ràng buộc: bên sử dụng dịch vụ
không cần biết định dạng của thông điệp yêu cầu, thông điệp trả về cũng như địa chỉ của dịch vụ yêu cầu đến khi cần
- Tự hồi phục: Là khả năng hệ thống tự hồi phục sau khi
sảy ra lỗi mà không cần đến sự can thiệp của con người
1.1.3 Lợi ích của việc sử dụng SOA
-Độc lập hệ thống:những dịch vụ không phụ thuộc vào hệ thống và mạng cụ thể
- Cho phép hướng sự tập trung vào xây dựng các tính năng nghiệp vụ trong quá trình phát triển phần mềm
- Giảm thiểu chi phí trong quá trình phát triển
- Giảm thiểu yêu cầu về đào tạo và kỹ năng
- Chi phí bảo trì thấp
- Chu trình phát triển phần mềm nhanh chóng hơn 1.1.4 Một số mô hình triển khai SOA
Trang 8- Service Registry: Đây là mô hình truyền thống để
định vị và liên kết các dịch vụ trong một hệ thống SOA
- Service Broker: Dịch vụ này có thể làm nhiều chức
năng như định tuyến dữ liệu thông điệp, xử lý lỗi, chia tải và lọc thông tin
- Service Bus: Đây là mô hình ra đời sau nhất trong 3
mô hình nhưng nó được sử dụng trong các sản
phẩm thương mại large-scale(như IBM,BEA
1.1.5 Kiến trúc phân tầng chi tiết của SOA
-Tầng Connectivity: Tầng thấp nhất- tầng kết nối
Mục đích của tầng kết nối là kết nối đến các ứng
dụng enterprise hoặc các tài nguyên bên dưới và
cung cấpchúng thành dạng các dịch vụ
- Tầng orchestration: Là tầng chứa các thành phần
đóng vai trò là những dịch vụ sử dụng vừa là những dịch
vụ cung cấp, những dịch vụ này sử dụng những dịch vụ của tầng kết nối và các dịch vụ orchestration khác để kết hợp những chức năng cấp thấp hơn thành những dịch vụ hoạt động ở cấp cao hơn
Trang 9- Tầng composite application: Là tầng cung cấp các ứng dụng cho người sử dụng cuối
1.2 Vòng đời của kiến trúc hướng dịch vụ
Vòng đời của kiến trúc hướng dịch vụ là mô hình chỉ ra các mối quan hệ và sự độc lập giữa các thành phần trong chu trình phát triển một ứng dụng SOA
1.2.1 Giai đoạn mô hình hóa
Đây là công đoạn đầu tiên trong chu trình phát triển của một hệ thống SOA, nhằm đơn giản hóa các công việc bằng mô hình cụ thể và nhằm giúp hiểu rõ hơn về hệ thống dưới một góc nhìn nào đó
1.2.2 Giai đoạn ráp nối
Trong giai đoạn này các ứng dụng phần mềm được xây dựng để thực hiện các quy trình nghiệp vụ Quá trình xây dựng các ứng dụng phần mềm này được thực hiện bằng cách lắp ráp các dịch vụ
1.2.3 Giai đoạn triển khai
sau khi phần mềm được xây dựng thành công, chúng
sẽ được triển khai trên môi trường thực thi, giai đoạn này cho phép tích hợp các yếu tố con người, các quy trình nghiệp vụ, quản lý và tích hợp thông tin
Trang 101.2.4 Giai đoạn quản lý
các quy trình nghiệp vụ được theo dõi và quản lý trên
cả khía cạnh công nghệ thông tin lẫn khía cạnh nghiệp vụ 1.3 Mô hình logic của kiến trúc hướng dịch vụ
Mô hình logic của kiến trúc hướng dịch vụ gồm nhiều thành phần khác nhau, các thành phần này sẽ ảnh hưởng trực tiếp và chủ yếu vào kết quả ứng dụng mô hình SOA
Trang 11Chương 2 SỰ HỘI TỤ CỦA ĐIỆN TOÁN ĐÁM MÂY
2.1.2 Thành phần
-Clients: Các máy khách trong mô hình điện toán đám mây bao gồm phần cứng và các phần mềm để phân phối
các ứng dụng
-Services: đó là hệ thống các phần mềm được thiết kế,
hoạt động nhằm mục đích hỗ trợ cho sự tương tác giữa các máy tính trong hệ thống
Application: không nhất thiết phải cài đặt hay chạy các ứng dụng trên máy tính của khách hàng
-Platform: phân phối các nền tảng điện toán, và các
giải pháp như là một dịch vụ
Trang 12-Storgate: lưu trữ dữ liệu, các dịch vụ cơ sở dữ liệu,
cơ sở dữ liệu, dịch vụ wed
-Infrastructure: Trong công nghệ điện toán đám mây
thì cơ sở hạ tầng được cung cấp như một dịch vụ
2.1.3 Tính chất cơ bản của ĐTĐM
-Tự phục vụ theo nhu cầu: Mỗi khi có nhu cầu, người
dùng chỉ cần gửi yêu cầu thông qua trang web cung cấp dịch vụ, hệ thống của nhà cung cấp sẽ đáp ứng yêu cầu của người dùng
- Truy xuất diện rộng: có thể truy xuất dịch vụ từ bất kỳ nơi nào, vào bất kỳ lúc nào có kết nối internet
- Dùng chung tài nguyên: Tài nguyên của nhà cung cấp
dịch vụ được dùng chung, phục vụ cho nhiều người dùng dựa trên mô hình “multi-tenant”
- Khả năng co giãn: Đó là khả năng tự động mở rộng hoặc
thu nhỏ hệ thống tùy theo nhu cầu của người dùng
- Điều tiết dịch vụ: Lượng tài nguyên sử dụng có thể
được theo dõi, kiểm soát và báo cáo một cách minh bạch
cho cả hai phía nhà cung cấp dịch vụ và người sử dụng
2.2 Các mô hình dịch vụ của ĐTĐM
2.2.1 Phần mềm được cung cấp như một dịch vụ
Trang 13Dịch vụ phần mềm là một mô hình triển khai ứng dụng mà
ở đó người cung cấp cho phép người dùng sử dụng dịch
vụ theo yêu cầu
2.2.2 Nền tảng được cung cấp như một dịch vụ
Cung cấp dịch vụ nền tảng(PaaS) bao gồm những điều kiện cho quy trình thiết kế ứng dụng, phát triển, kiểm thử, triển khai và lưu trữ ứng dụng có giá trị như là dịch vụ ứng dụng như cộng tác nhóm, sắp xếp và tích hợp dịch vụ web, tích hợp cơ sở dữ liệu, bảo mật, khả năng mở rộng, quản lý trạng thái, phiên bản ứng dụng, các lợi ích cho cộng đồng phát triển và nghiên cứu ứng dụng
2.2.3 Cơ sở hạ tầng được cung cấp như một dịch vụ Những nhà cung cấp cơ sở hạ tầng quản lý một tập hợp lớn các tài nguyên tính toán như các bộ lưu trữ hay bộ xử
lý Thông qua các công nghệ ảo hóa, các tài nguyên này
có thể được chia nhỏ, gán hay thay đổi kích thước một
cách linh động để xây dựng một hệ thống theo kiểu ad – hoc tùy thuộc vào nhu cầu của khách hàng, mà ở đây là
các nhà cung cấp dịch vụ
2.3 Các mô hình triển khai của ĐTĐM
2.3.1 Các đám mây công cộng
Trang 14là các dịch vụ đám mây được một bên thứ ba (người bán) cung cấp Chúng tồn tại ngoài tường lửa công ty và chúng được lưu trữ đầy đủ và được nhà cung cấp đám mây quản
lý
2.3.1 Các đám mây riêng
là các dịch vụ đám mây được cung cấp trong doanh nghiệp Những đám mây này tồn tại bên trong tường lửa công ty và chúng được doanh nghiệp quản lý
2.3.1 Các đám mây lai
là một sự kết hợp của các đám mây công cộng và riêng Những đám mây này thường do doanh nghiệp tạo ra và các trách nhiệm quản lý sẽ được phân chia giữa doanh nghiệp và nhà cung cấp đám mây công cộng
2.3.1 Các đám mây cộng đồng
là các đám mây được chia sẻ bởi một số tổ chức và hỗ trợ một cộng đồng cụ thể có mối quan tâm chung (ví dụ: chung sứ mệnh, yêu cầu an ninh, chính sách ) Nó có thể được quản lý bởi các tổ chức hoặc một bên thứ ba
2.4 Kiến trúc hướng dịch vụ tham chiếu cho ĐTĐM
Trang 152.4.1 Mô hình hoạt động của SOA tham chiếu cho ĐTĐM
2.4.2 Xu hướng phát triển kiến trúc hướng dịch vụ
trong ĐTĐM
Trang 16Chương 3.TRIỂN KHAI THỬ NGHIỆM
3.1 Mô hình triển khai thử nghiệm SOA kết hợp ĐTĐM cho bài toán tích hợp dữ liệu
Khi phát triển một hệ thống CNTT, đặc biệt là các hệ thống cỡ lớn, cần có một kiến trúc tham chiếu Kiến trúc tham chiếu đóng vai trò quan trọng không những về mặt
kỹ thuật mà còn về khía cạnh quản lý vì cung cấp thông tin về khoảng trống giữa hiện trạng CNTT và các thành phần cần thiết của hệ thông CNTT của đơn vị
3.1.1 Xác định yêu cầu đối với kiến trúc tham khảo của mô hình thử nghiệm
Kiến trúc được đề xuất cần đáp ứng các mục tiêu sau:
(1) Cho phép các ứng dụng mới và các ứng dụng hiện
có hoạt động cùng nhau một cách hợp chuẩn
(2) Hỗ trợ các cơ chế xây dựng một giao diện chuẩn cho các nguồn dữ liệu đa dạng
(3) Khả năng sẵn sàng tích hợp cơ sở dữ liệu khác một cách hợp chuẩn
(4) Hỗ trợ các cơ chế cho việc xây dựng các logic nghiệp vụ cơ bản của các đơn vị trong tổ chức (5) Hỗ trợ phối hợp các quy trình nghiệp vụ giao nhau
Trang 17(6) Giúp đơn vị quản lý một cách dễ dàng các nguồn tài nguyên như dữ liệu và các dịch vụ được triển khai
(7) Cho phép thông tin được chia sẻ trong và ngoài tổ chức một cách hợp chuẩn
(8) Hỗ trợ hạ tầng bảo mật xuyên suốt hiện đại
(9) Cho phép tìm kiếm, giám sát và khám phá tri thức của đơn vị
(10) Đảm bảo tính bền vững của kiến trúc bằng việc sử dụng hướng tiếp cận kiến trúc hiện đại, đưa vào xem xét một cách có hệ thống khả năng mở rộng, tính sẵn sàng, khả năng thích ứng, tính linh hoạt và linh động
3.1.2 Kiến trúc tham khảo đề xuất cho mô hình triển khai thử nghiệm
Trang 18Hình 3.1 Kiến trúc tham khảo theo hướng tiếp cận SOA
3.1.3 Mô hình tích hợp phát triển dịch vụ mới
Hình3.2: Mô hình theo lớp của kiến trúc tham khảo
Trang 19Mô hình này được sử dụng để truyền tải tinh thần của kiến trúc đến với những bên liên quan chuyên và không chuyên
về kỹ thuật
3.2 Lựa trọn công nghệ và thử nghiệm
3.2.1 Mô hình triển khai SOA kết hợp ĐTĐM
Hình 3.3: Triển khai kiến trúc tham chiếu kết hợp với công
nghệ điện toán đám mây
Một mô hình triển khai kiến trúc tham khảo đề xuất kết
hợp với công nghệ điện toán đám mây được trình bày ở hình 3.3 Trong mô hình triển khai thử nghiệm, hai máy chủ vật lý được triển khai và hạ tầng ĐTĐM với công nghệ ảo hóa đươc triển khai sử dụng VMWare Sphere Trên hạ tầng ảo hóa, các máy chủ ảo với HĐH Ubuntu Server được triển khai và các thành phần của hệ thống nền
được triển khai trên các máy chủ ảo này
3.2.2 Thử nghiệm tích hợp
Trang 20Hệ thống đề xuất đã được sử dụng thử nghiệm trong bài toán tích hợp ứng dụng, dữ liệu thuộc tính và dữ liệu không gian Trong bài toán tích hợp này yêu cầu các nguồn dữ liệu thuộc tính và nguồn dữ liệu không gian nằm rải rác trên các các máy chủ khác nhau
Hình 3.4: Mô hình thử nghiệm tích hợp
Các thành phần phần mềm được sử dụng trong triển khai thử nghiệm bao gồm:
- Hệ quản trị CSDL MySQL
Trang 21- Hệ quản trị CSDL Postgre với phần mở rộng
PostGIS
- Máy chủ bản đồ: GeoServer
- Cổng thông tin sử dung Liferay
- Ứng dụng bản đồ phát triển trên Java
- Dễ dàng phát triển và tích hợp các dịch vụ mới với
sự hỗ trợ của hệ thống nền tích hợp theo kiến trúc SOA
- Triển khai nhanh chóng các thành phần của hệ
thống nền khi cần mở rộng
- Tài nguyên được sử dụng tối ưu chia sẻ giữa nhiều
hệ thống con
- Việc kết hợp SOA và điện toán đám mây có ưu
điểm tối đa hóa được việc tái sử dụng các chức năng nghiệp vụ đã được hỗ trợ bởi các hệ thống