Hình 1.1 đã chỉ ra cái nhìn tổng quan về tính toán đám mây các doanh nghiệp, các văn phòng sử dụng các thiết bị như máy tính cá nhân , điện thoại, thậm chí cả một máy server thông qua m
Trang 1MỤC LỤC
LỜI CAM ĐOAN 1
LỜI MỞ ĐẦU 8
1 Đặt vấn đề 8
2 Bố cục luận văn 8
CHƯƠNG 1 TỔNG QUAN 10
1.1 Giới thiệu chung về tính toán đám mây 10
1.1.1 Khái niệm về tính toán đám mây 10
1.1.2 Tính chất cơ bản của tính toán đám mây 13
1.1.3 Các mô hình của tính toán đám mây 14
1.2 Lợi ích và khó khăn của tính toán đám mây 21
1.2.1 Những lợi ích của tính toán đám mây 21
1.2.2 Những khó khăn của tính toán đám mây 23
1.3 Tổng kết chương 24
CHƯƠNG 2 MỘT SỐ KĨ THUẬT ÁNH XẠ LƯỢC ĐỒ CƠ SỞ DỮ LIỆU QUAN HỆ TRONG TÍNH TOÁN ĐÁM MÂY 25
2.1 Đặt vấn đề 25
2.2 Một số kĩ thuật ánh xạ lược đồ cơ sở dữ liệu 29
2.2.1 Bảng riêng 30
2.2.2 Bảng mở rộng 30
2.2.3 Bảng phổ quát 31
2.2.4 Sử dụng XML trong IBM DB2 32
2.2.5 Bảng trục 32
2.3 Đánh giá 35
2.3.1 Ưu và nhược điểm của kĩ thuật dùng bảng riêng 36
2.3.2 Ưu và nhược điểm của kĩ thuật dùng bảng mở rộng 36
2.3.3 Ưu và nhược điểm của kĩ thuật dùng bảng phổ quát 37
2.3.4 Ưu và nhược điểm của kĩ thuật XML in DB2 37
Trang 22.3.5 Ưu và nhược điểm của kĩ thuật dùng bảng trục 38
2.3.6 Ưu và nhược điểm của kĩ thuật dùng bảng đoạn 38
2.4 Tổng kết chương 39
CHƯƠNG 3 SO SÁNH MỘT SỐ KĨ THUẬT ÁNH XẠ LƯỢC ĐỒ CƠ SỞ DỮ LIỆU40 3.1 Mô tả bài toán 40
3.1.1 Mô hình lược đồ cơ sở dữ liệu với kĩ thuật ánh xạ bảng phổ quát 42
3.1.2 Mô hình lược đồ cơ sở dữ liệu với kĩ thuật ánh xạ bảng đoạn 43
3.1.3 Mô hình lược đồ cơ sở dữ liệu với kĩ thuật ánh xạ bảng trục 44
3.2 Môi trường thực nghiệm 45
3.3 Kịch bản định lượng ba phương pháp 46
3.4 Đánh giá kết quả 46
3.4.1 Kết quả thực nghiệm trong môi trường 1 46
3.4.2 Kết quả thực nghiệm trong môi trường 2 49
3.5 Đánh giá chung 51
3.6 Tổng kết chương 52
CHƯƠNG 4 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 53
4.1 Kết quả thu được 53
4.2 Hướng phát triển 54
Trang 3IaaS (Infrastructure as a Service) Cơ sở hạ tầng nhƣ một dịch vụ
DaaS (Database as a Service) Cơ sở dữ liệu nhƣ một dịch vụ
ROI (Return On Investment) Lợi tƣ́c đầu tƣ
Trang 4DANH MỤC BẢNG BIỂU
Bảng 2 1 Bảng dung lượng lưu trữ yêu cầu với những loại cơ sở dữ liệu 26
Bảng 2 2 Bảng so sánh chi phí giữa mô hình truyền thống và nhiều người truy cập 28 Bảng 2 3 Bảng riêng 30
Bảng 2 4 Bảng mở rộng 31
Bảng 2 5 Bảng phổ quát 31
Bảng 2 6 XML in IBM DB2 32
Bảng 2 7 Bảng trục 33
Bảng 2 8 Bảng đoạn 34
Bảng 2 9 Bảng cơ sở dữ liệu theo phương pháp XML 37
Bảng 2 10 Bảng cơ sở dữ liệu theo phương pháp XML 38
Trang 5DANH MỤC HÌNH VẼ
Hình 1.1 Mô hình chung của tính toán đám mây 10
Hình 1.2 Mô hình tính toán đám mây theo định nghĩa của Rajkumar Buyya 12
Hình 1.3 Mô hình dùng chung tài nguyên trong tính toán đám mây 13
Hình 1 4 Mô hình dịch vụ trong tính toán đám mây 15
Hình 1.5 Mô hình Software as a Service 17
Hình 1 6 Mô hình đám mây riêng và đám mây chung 19
Hình 1 7 Mô hình triển khai tính toán đám mây lai 20
Hình 1 8 Mô hình quan hệ giữa các mô hình triển khai của tính toán đám mây 20
Hình 1 9 Đơn người dùng 22
Hình 1.10 Đa người dùng 23
Hình 2 1 Các mức độ chia sẻ trong tính toán đám mây 26
Hình 2 2 Độ ưu tiên trong việc phát triển phần mềm 35
Hình 2 3 Sự phức tạp của ứng dụng 36
Hình 3 1 Một số thuộc tính quản lý 41
Hình 3 2 Mô hình nghiệp vụ nền tảng 42
Hình 3 3 Lược đồ cơ sở dữ liệu với phương pháp ánh xạ bảng phổ quát 43
Hình 3 4 Lược đồ cơ sở dữ liệu sử dụng phương pháp ánh xạ dùng bảng đoạn 44
Hình 3 5 Lược đồ cơ sở dữ liệu sử dụng phương pháp ánh xạ dùng bảng trục 45
Hình 3 6 Biểu đồ so sánh hai phương ánh xạ dùng bảng phổ quát và bảng đoạn 47
Hình 3 7 Biểu đồ so sánh cùng với việc hỗ trợ chỉ mục 48
Hình 3 8 Biểu đồ so sánh trong môi trường 2 50
Hình 3 9 Biểu đồ so sánh khi phương pháp bảng phổ quát nhiều cột 51
Trang 6LỜI CẢM ƠN
Trước tiên tôi xin được bày tỏ sự trân trọng và lòng biết ơn sâu sắc đối với TS Võ Đình Hiếu - giảng viên Bộ môn Công nghệ phần mềm - Khoa Công nghệ thông tin - Trường Đại học Công nghệ - ĐHQGHN Trong thời gian học và làm luận văn tốt nghiệp, Thầy đã dành nhiều thời gian quý báu và tận tình chỉ bảo, hướng dẫn tôi trong việc nghiên cứu, thực hiện luận văn Trong thời gian làm việc với Thầy, tôi không những học hỏi được nhiều kiến thức bổ ích mà còn học được tinh thần làm việc, thái
độ nghiên cứu khoa học nghiêm túc của Thầy
Tôi xin được cảm ơn các Thầy/Cô ở Khoa Công nghệ thông tin – Trường Đại học Công nghệ đã giảng dạy chúng tôi trong quá trình học tập và góp ý cho tôi hoàn thiện trong quá trình làm luận văn
Xin cảm ơn các bạn bè, đồng nghiệp và đặc biệt là các thành viên trong gia đình đã tạo mọi điều kiện tốt nhất, động viên tôi trong suốt quá trình học tập và nghiên cứu để hoàn thành tốt bản luận văn tốt nghiệp này
Mặc dù đã cố gắng hoàn thiện luận văn với tất cả sự nỗ lực của bản thân, nhưng chắc chắn không thể tránh khỏi những thiếu sót Kính mong quý Thầy/Cô tận tình chỉ bảo
Tác giả
Trang 7LỜI MỞ ĐẦU
1 Đặt vấn đề
Tính toán đám mây (cloud computing) là một thuật ngữ được nhắc đến thường xuyên trong các hội thảo công nghệ thông tin gần đây Tính toán đám mây trở thành một trào lưu công nghệ mới và thu hút sự quan tâm của một số lượng lớn các công ty danh tiếng như Amazon, Google, IBM Một số dịch vụ nổi bật mà tính toán đám mây cung cấp đó là CRM (Customers Relationship Management) của Salesforce.com, Google App Engine của Google hay Amazon EC2 của Amazon
Ưu điểm lớn nhất trong tính toán đám mây là giảm chi phí cho người thuê Với mô hình truyền thống, khi khách hàng muốn sử dụng một dịch vụ họ phải bỏ chi phí đầu
tư ban đầu rất lớn Sở dĩ chi phí lớn như vậy là do toàn bộ cơ sở hạ tầng phần cứng, phần mềm chỉ được phục vụ cố định cho một bên thuê Nhưng với mô hình tính toán đám mây, việc phân phối tài nguyên dựa trên mô hình đa bên thuê (multi-tenant) Điều
đó có nghĩa một tài nguyên phục vụ cho nhiều khách hàng Hay nói cách khác tài nguyên được chia sẻ đến nhiều người dùng và có thể luân chuyển sử dụng giữa các người dùng với nhau
Trong tính toán đám mây, việc chia sẻ tài nguyên có thể đến từ chia sẻ máy (shared machine), chia sẻ xử lý (shared process) hay chia sẻ bảng (shared table) Trong cách chia sẻ máy, mỗi bên bên thuê sẽ dùng chung một máy nhưng có một thể hiện cơ sở dữ liệu riêng Với cách chia sẻ xử lý, nhiều bên thuê sẽ chia sẻ một cơ sở dữ liệu nhưng mỗi bên thuê sẽ có bộ các bảng riêng Ở mức độ chia sẻ cao hơn đó là chia sẻ bảng, trong cách chia sẻ này mỗi bên thuê sẽ sử dụng cùng một cơ sở dữ liệu cũng như một
bộ các bảng Với hướng tiếp cận chia sẻ bảng, việc thiết kế một mô hình cơ sở dữ liệu hỗ trợ đa người dùng là vô cùng quan trọng
Với nhu cầu đặt ra như vậy luận văn đi nghiên cứu một số kĩ thuật ánh xạ lược đồ cơ
sở dữ liệu quan hệ đặc biệt là kĩ thuật ánh xạ lược đồ dùng bảng trục (pivot tables), bảng đoạn (chunk tables), bảng phổ quát (universal tables) giúp giải quyết một phần nhỏ vấn đề chia sẻ tài nguyên cụ thể ở đây là chia sẻ cơ sở dữ liệu trong tính toán đám mây Bên cạnh đó, luận văn cũng tiến hành so sánh hiệu suất thực thi các thao tác thường dùng của các bên thuê khi sử dụng phần mềm tính toán toán đám mây như: Thêm bản ghi, cập nhật, hoặc chọn bản ghi, đưa ra những đánh giá cho từng phương pháp cụ thể
2 Bố cục luận văn
Bố cục luận văn được chia ra làm 4 chương chính theo trình tự nghiên cứu từ tổng quan về tính toán đám mây đến những vấn đề đặt ra trong khi xây dựng một sản phẩm ứng dụng tính toán đám mây đặc biệt là vấn đề thiết kế mô hình cơ sở dữ liệu sao cho
Trang 8phù hợp và làm tối ưu khả năng thực thi của sản phẩm đó trong môi trường đa người thuê trong tính toán đám mây Cụ thể luận văn được bố trí theo thứ tự như sau:
Chương 1- Tổng quan: Chương này trình bày những khái niệm về tính toán đám mây cũng như các tính chất của tính toán đám mây Tìm hiểu các mô hình dịch vụ chính trong tính toán đám mây và các mô hình triển khai các dịch vụ tính toán đám mây Những ưu và nhược điểm của tính toán đám mây trong
doanh nghiệp
Chương 2- Một số kĩ thuật ánh xạ lược đồ cơ sở dữ liệu quan hệ trong tính toán đám mây: Chương này trình bày một số kĩ thuật ánh x ạ lược đồ (schema mapping techniques) trong cơ sở dữ liệu quan hệ đang được sử dụng như XML, bảng trục (pivot tables), bảng đoạn (chunk tables), bảng riêng (private tables), bảng phổ quát (universal tables), và đưa ra những yếu điểm và
ưu điểm của từng phương pháp
Chương 3- So sánh một số kĩ thuật ánh xạ lược đồ cơ sở dữ liệu:
Chương này trình bày việc đánh giá hiệu suất của những thủ tục INSERT, UPDATE, SELECT với ba kĩ thuật ánh xạ lược đồ cơ sở dữ liệu sử dụng bảng phổ quát (universal tables) và bảng đoạn (chunk tables), bảng trục (pivot tables)
Chương 4- Kết luận và hướng phát triển: Tổng kết và đánh giá những
điểm làm được và chưa làm được của luận văn và nêu ra hướng phát triển của
đề tài trong những lần nghiên cứu tiếp theo
Trang 9CHƯƠNG 1 TỔNG QUAN
Nội dung của chương 1 trình bày những vấn đề chung nhất của tính toán đám mây như: khái niệm, những tính chất cơ bản của tính toán đám mây, trình bày sơ lược về một số dịch vụ tính toán đám mây và một số mô hình triển khai trong tính toán đám mây
1.1 Giới thiệu chung về tính toán đám mây
1.1.1 Khái niệm về tính toán đám mây
Khái niệm và mô hình tính toán đám mây mới xuất hiện gần đây, và đang phát triển rất mạnh mẽ như một trào lưu mới Các công ty cung cấp dịch vụ đám mây ngày càng nhiều không chỉ thị trường ngoài nước (Amazon, Google, DataSynapse, Salesforce)
mà thị trường trong nước cũng khá phát triển Không nằm ngoài xu thế, Việt Nam cũng đang dần tiếp cận với các dịch vụ đám mây thông qua dự án của một số doanh nghiệp như VNTT, FPT
Với mô hình lưu trữ truyền thống chi phí cho phần cứng, phần mềm, mạng, chi phí cho nhân lực là rất lớn Với thực tế như vậy, việc phát triển một dịch vụ đáng tin cậy có thể thay họ quản lý tốt những nguồn tài nguyên là hết sức cấp thiết Tính toán đám mây ra đời đã phần nào giải quyết được những nhu cầu này Các công ty không cần phải quan tâm đến cơ sở hạ tầng, công nghệ mà chỉ cần tập trung vào công việc của họ Ý tưởng chính của tính toán đám mây là đưa toàn bộ phần mềm, phần cứng lên mạng Internet Hình 1.1 đã chỉ ra cái nhìn tổng quan về tính toán đám mây các doanh nghiệp, các văn phòng sử dụng các thiết bị như máy tính cá nhân , điện thoại, thậm chí cả một máy server thông qua mạng Internet để sử dụng các dịch vụ của tính toán đám mây như: bảng tính, game, cơ sở dữ liệu Thuật ngữ “đám mây” được sử dụng xuất phát từ ý nghĩ người sử dụng hệ thống không biết được những gì ẩn phía sau
Hình 1.1 Mô hình chung của tính toán đám mây
Trang 10Đặc điểm nổi bật của tính toán đám mây chính là khả năng co giãn linh hoạt, sự tiện lợi và giảm tối đa chi phí cho người dùng Chính điều này thu hút sự quan tâm của rất nhiều doanh nghiệp khi bước chân vào lĩnh vực tính toán đám mây Nhưng tính toán đám mây thực sự phát triển vào giữa những năm 2007 khi Amazon đẩy mạnh việc nghiên cứu và triển khai các dịch vụ tính toán đám mây Ngay sau đó, các ông chủ lớn của lĩnh vực công nghệ thông tin như Microsoft, Google, IBM tham gia góp phần thúc đẩy tính toán đám mây phát triển trong một tầm vóc mới
Sự phát triển mạnh mẽ của tính toán đám mây đã thu hút rất nhiều nhà khoa học, các trường đại học và cả các công ty công nghệ thông tin đầu tư nghiên cứu Vì là một công nghệ mới nên có những tranh cãi về việc định nghĩa tính toán đám Theo thống
kê của tạp chí “Cloud Magazine” thì hiện tại có hơn 200 định nghĩa khác nhau về tính
toán đám mây Mỗi hướng nghiên cứu đưa ra định nghĩa và cách tiếp cận khác nhau dẫn đến những định nghĩa khác nhau Dưới đây là ví dụ một số định nghĩa về tính toán đám mây [10]:
Tính toán đám mây là dịch vụ công nghệ thông tin (IT), dịch vụ này được cung cấp không phụ thuộc vào vị trí của người sử dụng dịch vụ
Tính toán đám mây là một kiểu tính toán mới ở đó việc cung cấp các tài nguyên IT
có khả năng mở rộng và co giãn, các tài nguyên này được cung cấp dạng dịch vụ cho nhiều người dùng thông qua mạng Internet
Theo những định nghĩa trên, tính năng chủ yếu của tính toán đám mây là cung cấp cơ
sở hạ tầng và các ứng dụng về IT dưới dạng dịch vụ có khả năng mở rộng được Ian Foster và Rajkumar Buyya đã định nghĩa tính toán đám mây dưới góc độ kỹ thuật và đang được sử dụng khá phổ biển và có một số điểm tương đồng
Theo Ian Foster, tính toán đám mây là một mô hình tính toán phân tán có tính co giãn linh hoạt về mặt kinh tế, là nơi chứa sức mạnh tính toán lớn, lưu trữ dựa trên nền tảng
và dịch vụ cung cấp Sự ảo hóa tài nguyên và thay đổi linh hoạt để phù hợp với nhu cầu khách hàng trên Internet [8]
Theo Rajkumar Buyya, “đám mây” là một loại hệ thống phân tán và xử lý song song gồm các máy tính ảo kết nối với nhau và được cấp phát động cho người dùng dựa trên
sự thỏa thuận dịch vụ giữa nhà cung cấp và người sử dụng Như hình vẽ 1.2 khi khách hàng có nhu cầu sử dụng dịch vụ tính toán đám mây họ sẽ liên lạc với một hệ thống máy tính cung cấp dịch vụ đám mây Các máy tính này bao gồm tập hợp các máy tính
ảo hóa Bản thân người dùng cũng không biết chính xác việc liên kết Liên kết này sẽ thay đổi tùy vào việc cân bằng tải và sự cân bằng tài nguyên khi sử dụng [11][15]
Trang 11Hình 1.2 Mô hình tính toán đám mây theo định nghĩa của Rajkumar Buyya
Tính toán đám mây là sự nâng cấp từ mô hình máy chủ tính toán lớn (mainframe) sang
mô hình client-server Điều đó thể hiện rất rõ ở chỗ người dùng không cần phải có kiến thức chuyên sâu về các công nghệ, cũng không cần phải tốn nhân lực để dùng cho việc quản trị hay bảo trì hệ thống Toàn bộ các công việc đó đã có các chuyên gia của bên cung cấp dịch vụ đảm nhiệm
Nói tóm lại tính toán đám mây ra đời đã đáp ứng được những vấn đề sau [21]:
Vấn đề về lưu trữ dữ liệu: Khi đã sử dụng tính toán đám mây dữ liệu không còn được lưu trữ một cách cục bộ mà được lưu trữ trong một kho dữ liệu khổng lồ như Google hoặc Microsoft Họ sẽ chịu trách nhiệm bảo trì, bảo mật thông tin cho khách hàng
Vấn đề cung cấp tài nguyên phần mềm: Một số các dịch vụ phổ biến như IaaS (infrastructure as a service), PaaS (platform as a service), SaaS (software as a service) Ngoài ra còn có các dịch vụ như: Storage-as-a-Service, Database-as-a-Service, Information-as-a-Service, Security-as-a-Service
Vấn đề sức mạnh tính toán: Bằng cách sử dụng dụng các siêu máy tính để tính toán, hoặc các hệ thống tính toán song song, phân tán, tính toán lưới
Trang 121.1.2 Tính chất cơ bản của tính toán đám mây
Công nghệ tính toán đám mây có năm tính chất nổi bật so với mô hình truyền thống [18]
1.1.2.1 Tự phục vụ theo nhu cầu
Khi có nhu cầu, khách hàng chỉ cần gửi yêu cầu cho bên cung cấp dịch vụ tính toán đám mây thông qua môi trường mạng (internet) mà không cần phải tương tác trực tiếp với bên cung cấp dịch vụ Người dùng có thể tự phục vụ yêu cầu của mình như tăng thời gian sử dụng server, tăng dung lượng lưu trữ mà không cần phải tương tác trực tiếp với nhà cung cấp dịch vụ, mọi nhu cầu về dịch vụ đều được xử lý trên môi trường web (Internet)
1.1.2.2 Truy xuất trên diện rộng
Với tính toán đám mây, nguồn tài nguyên là sẵn sàng trên mạng do vậy việc cung cấp các dịch vụ này cũng thông qua môi trường internet Nhà cung cấp dịch vụ đám mây không cần quan tâm về vị trí và cách bạn truy cập Do đó, người dùng có kết nối mạng
là có thể sử dụng dịch vụ Hơn nữa, tính toán đám mây ở dạng dịch vụ nên không đòi hỏi khả năng xử lý cao ở phía client, vì vậy người dùng có thể truy xuất bằng các thiết
bị di dộng như điện thoại, PDA, laptop
1.1.2.3 Tài nguyên kết hợp
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 (multi-tenant) dựa trên mô hình đa người dù ng Trong mô hình đa người dùng , tài nguyên sẽ được phân phát động tùy theo nhu cầu của người dùng
Tính toán đám mây dựa trên công nghệ ảo hóa, nên các tài nguyên trong hình 1.3 có thể là dung lượng lưu trữ, xử lý, băng thông,… đa phần là tài nguyên ảo Các tài
Tenant 1
Tenant 3 Tài nguyên
Hình 1.3 Mô hình dùng chung tài nguyên trong tính toán đám mây
Trang 13khác nhau Số lượng tenant 1, 2… phụ thuộc vào nhu cầu của bên thuê dịch vụ Ví dụ như khách hàng A thuê 20 CPU mỗi ngày từ 8 giờ đến 12 giờ, một khách hàng B thuê
10 CPU tương tự mỗi ngày từ 12 giờ đến 18 giờ thì hai khách hàng này có thể dùng chung 10 CPU đó
1.1.2.4 Khả năng co giãn nhanh chóng
Đây là tính chất đặc biệt nhất, nổi bật nhất và quan trọng nhất của tính toán đám mây
Đó 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 Khi nhu cầu tăng cao, hệ thống sẽ tự mở rộng bằng cách thêm tài nguyên vào Khi nhu cầu giảm xuống, hệ thống sẽ tự giảm bớt tài nguyên Khả năng co giãn giúp nhà cung cấp tận dụng được tài nguyên giúp giảm chi phí cho khách hàng Ví dụ khách hàng có nhu cầu sử dụng 2 CPU Với những thời gian có số lượng truy cập ít chỉ cần dùng 1 CPU khi đó các nhà quản lý dịch vụ tính toán đám mây sẽ cắt bớt và cho khách hàng khác thuê Khi số lượng truy cập tăng cao thì hệ thống lại tự thêm vào
1.1.2.5 Tính đo lường được
Hệ thống tính toán đám mây tự động kiểm soát và tối ưu hóa việc sử dụng tài nguyên (dung lượng lưu trữ, đơn vị xử lý, băng thông…) Lượng tài nguyên sử dụng có thể được kiểm tra và báo cáo thông qua việc trang bị một hệ thống đo lường 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
1.1.3 Các mô hình của tính toán đám mây
Các mô hình tính toán đám mây được phân thành hai loại:
Các mô hình dịch vụ (Service Models): Phân loại các dịch vụ của các nhà cung cấp dịch vụ tính toán đám mây
Các mô hình triển khai (Deployment Models): Phân loại cách thức triển khai dịch vụ tính toán đám mây đến với khách hàng
1.1.3.1 Mô hình dịch vụ
Hiện tại có rất nhiều nhà cung cấp dịch vụ tính toán đám mây cung cấp nhiều loại dịch
vụ khác nhau Tuy nhiên có ba loại dịch vụ tính toán đám mây cơ bản là: dịch vụ cơ sở
hạ tầng (Infrastructure as a Service – IaaS), dịch vụ nền tảng (Platform as a Service – PaaS) và dịch vụ phần mềm (Software as a Service – SaaS) Cách phân loại này
thường được gọi là “mô hình SPI” [3]
Trang 14sử dụng phải trả dựa trên cơ sở tính toán chức năng và lượng tài nguyên sử dụng IBM Blue Cloud, Sun Grid, Amazone EC2 là một số dịch vụ cơ sở hạ tầng nổi tiếng
Đặc trưng cơ bản:
Cung cấp tài nguyên như một dịch vụ: CPU, không gian lưu trữ
Khả năng mở rộng linh hoạt
Chi phí thay đổi tùy thuộc vào người dùng sử dụng tài nguyên
Nhiều người dùng có thể sử dụng cùng một tài nguyên
Ưu điểm:
Giảm bởt chi phí không gian phần cứng, và nguồn nhân lực
Giảm chi phí điện năng
Tăng tính tự động hóa và giảm bớt sự can thiệp của các nhà quản lý
Giảm rủi ro lợi tức đầu tư (ROI)
Hệ thống được quản lý bởi SLA sẽ giảm bớt được lỗ thủng (Ví dụ một số các giao ước như : số lượng phần trăm dị ch vụ s ẵn dùng, số người sử dụng có thể phục vụ cùng một lúc , lịch trình thay đ ổi được thông báo trước , cung cấp báo cáo thống kê định kì)
Nhược điểm:
Các vấn đề bảo mật bên trong , sự tập trung hóa đòi hỏi các biện pháp an ninh khác hoặc mới
Cloud Clients Web browser, mobile app, thin client, terminal…
Software as a Service Email, CRM, Virtual desktop, communication…
Platform as a Service Database, Web server, Development tools…
Infrastructure as a Service Vitual machine, storage, load balancers…
Hình 1 4 Mô hình dịch vụ trong tính toán đám mây
Trang 15 Năng xuất và hiệu quả kinh doanh phụ thuộc nhiều vào khả năng của nhà cung cấp
Tốn thời gian để hoàn thiện các công cụ quản lý hệ thống
Nền tảng hướng dịch vụ
Nhà cung cấp dịch vụ sẽ cung cấp một nền tảng (platform) cho khách hàng Khách hàng sẽ tự phát triển ứng dụng của mình nhờ các công cụ và môi trường phát triển được cung cấp hoặc cài đặt các ứng dụng sẵn có trên nền tảng đó Khách hàng không cần phải quản lý hoặc kiểm soát các cơ sở hạ tầng bên dưới bao gồm cả mạng, máy chủ, hệ điều hành, lưu trữ, các công cụ, môi trường phát triển ứng dụng nhưng quản lý các ứng dụng mình cài đặt hoặc phát triển Google App Engine là một dịch vụ nền tảng nổi tiếng
Khả năng tích hợp nhiều nguồn của dịch vụ web
Giảm chi phí ngoài lề khi tích hợp các dịch vụ về bảo mật, khả năng mở rộng, kiểm soát lỗi
Giảm chi phí khi trừu tượng hóa công việc lập trình ở mức cao để tạo dịch vụ, giao diện người dùng và các yếu tố ứng dụng khác
Hướng việc sử dụng công nghệ để đạt được mục đích tạo điều kiện dễ dàng hơn cho việc phát triển ứng dụng đa người dùng cho những người không chỉ trong nhóm lập trình mà có thể kết hợp nhiều nhóm cùng làm việc
Trang 16Phần mềm hướng dịch vụ
Đây là mô hình dịch vụ mà trong đó nhà cung cấp dịch vụ sẽ cung cấp cho khách hàng một phần mềm dạng dịch vụ hoàn chỉnh Khách hàng chỉ cần lựa chọn ứng dụng phần mềm nào phù hợp với nhu cầu và chạy ứng dụng đó trên cơ sở hạ tầng đám mây Mô hình này giải phóng người dùng khỏi việc quản lý hệ thống, cơ sở hạ tầng, hệ điều hành, toàn bộ sẽ do nhà cung cấp dịch vụ quản lý và kiểm soát để đảm bảo ứng dụng luôn sẵn sàng và hoạt động ổn định SaaS có thể hiểu đơn giản như một ứng dụng được cài đặt ở một máy chủ từ xa, và các ứng dụng này có thể truy cập qua Web Hiện nay có một số SaaS rất thông dụng như Google Docs, Email, hay Google Calendar
Tránh được chi phí về vốn cho phần mềm và phát triển tài nguyên
Giảm rủi ro lợi tức đầu tư
Giảm ảnh hưởng của phần cứng
Nhược điểm:
Yêu cầu cao về bảo mật
Hình 1.5 Mô hình Software as a Service
Trang 17Ngoài 3 loại mô hình dịch vụ trên, tính toán đám mây còn cung cấp một số mô hình như: Cơ sở dữ liệu như một dịch vụ (Database as a Service), lưu trữ như một dịch vụ (Storage as as Service), thông tin như một dịch vụ (Information as a Service), Kiểm thử như một dịch vụ (Testing as a Service)
1.1.3.2 Mô hình triển khai
Cho dù sử dụng loại mô hình dịch vụ nào đi nữa thì các dịch vụ này cũng được triển khai dưới ba mô hình chính là : Đám mây công c ộng (Public Cloud), đám mây riêng (Private Cloud ) và đám mây lai (Hybrid Cloud) Hiện nay, theo tổ chức NIST [19] (National Institute of Standards and Technology) họ phân chia thêm mô hình triển khai đám mây cộng đồng (Community Cloud)
Đám mây công cộng
Mô hình triển khai đám mây cộng cộng còn được gọi là đám mây ngoại (external cloud), trong mô hình này các dịch vụ đám mây được các nhà cung cấp dịch vụ đám mây cung cấp cho mọi người sử dụng rộng rãi Các dịch vụ này đều được tập trung trên hệ thống đám mây Chúng tồn tại ngoài tường lửa của công ty
Một số lợi ích khi bên thuê sử dụng dịch vụ đám mây công cộng là chi phí đầu tư thấp, giảm rủi ro đến mức thấp nhất do các nhà cung cấp dịch vụ đã gánh vác nhiệm vụ quản
lý hệ thống, cơ sở hạ tầng cũng như bảo mật Một lợi ích khác khi sử dụng mô hình đám mây công cộng là khả năng co giãn theo nhu cầu người sử dụng Thêm vào đó khi
sử dụng đám mây công cộng nhà cung cấp sẽ có nhiệm vụ cung cấp cho người tiêu dùng những phần tử công nghệ thông tin tốt nhất
Tuy nhiên đám mây công cộng có một số trở ngại, đó là vấn đề mất kiểm soát và an toàn dữ liệu Trong mô hình này mọi dữ liệu đều nằm trên dịch vụ đám mây, do nhà cung cấp dịch vụ đám mây đó bảo vệ và quản lý Chính điều này khiến cho khách hàng, nhất là các công ty lớn, các công ty coi dữ liệu như một điều “sống còn” cảm thấy không an toàn đối với những dữ liệu quan trọng của mình khi sử dụng dịch vụ đám mây
Đám mây riêng
Trong mô hình triển khai đám mây riêng, cơ sở hạ tầng và các dịch vụ được xây dựng
để phục vụ cho một tổ chức hay một doanh nghiệp duy nhất Điều này giúp khắc phục được những nhược điểm của đám mây công cộng, cụ thể là doanh nghiệp có thể kiểm soát tối đa đối với dữ liệu, bảo mật và chất lượng dịch vụ Đám mây riêng có thể được xây dựng và quản lý bởi chính đội ngũ kĩ sư tin học của doanh nghiệp hoặc có thể thuê một nhà cung cấp dịch vụ đảm nhiệm công việc này
Mặc dù tốn chi phí đầu tư nhưng mô hình triển khai đám mây riêng lại cung cấp cho doanh nghiệp khả năng kiểm soát và quản lý chặt chẽ những dữ liệu quan trọng
Trang 18Hình 1.6 cho thấy cách thức hoạt động và mô hình giữa hai mô hình triển khai đám mây riêng và đám mây công cộng Công ty và doanh nghiệp có thể chọn cách triển khai theo đám mây riêng và cũng có thể sử dụng các dịch vụ của nhà cung cấp triển khai theo cách triển khai đám mây công cộng
Hình 1 6 Mô hình đám mây riêng và đám mây chung
Đám mây lai
Nhƣ đã phân tích ở trên, mô hình triển khai đám mây công cộng chi phí thấp, dễ áp dụng nhƣng không an toàn Ngƣợc lại, mô hình triển khai đám mây riêng an toàn hơn nhƣng tốn chi phí và khó áp dụng Chính vì điều này mô hình triển khai đám mây lai
ra đời, việc kết hợp hai mô hình này lại với nhau sẽ khai thác đƣợc ƣu điểm cũng nhƣ khắc phục đƣợc nhƣợc điểm của chúng
Trang 19Hình 1 7 Mô hình triển khai tính toán đám mây lai
Mô hình triển khai đám mây lai là sự kết hợp của hai mô hình triển khai đám mây công cộng và đám mây riêng hình 1.7 Trong đó doanh nghiệp sẽ “out-source” các chức năng nghiệp vụ và dữ liệu không quan trọng, sử dụng các dịch vụ mô hình triển khai đám mây chung để giải quyết và xử lý các dữ liệu này Đồng thời, doanh nghiệp
sẽ giữ lại các chức năng nghiệp vụ và dữ liệu tối quan trọng trong tầm kiểm soát ( ƣu điểm của mô hình triển khai đám mây riêng)
Một khó khăn khi áp dụng mô hình triển khai đám mây lai là làm sao triển khai cùng một ứng dụng trên cả hai phía cộng cộng và đám mây riêng sao cho ứng dụng đó có thể hoạt động một cách hiệu quả
Hình 1 8 Mô hình quan hệ giữa các mô hình triển khai của tính toán đám mây
Trang 20Doanh nghiệp có thể chọn để triển khai các ứng dụng triển khai theo ba hướng triển khai công cộng, riêng, hay lai tùy theo nhu cầu cụ thể Mỗi mô hình đều có những điểm mạnh và điểm yếu riêng Các doanh nghiệp phải cân nhắc đối với các mô hình tính toán đám mây mà họ chọn Họ có thể sử dụng nhiều mô hình để giải quyết các vấn đề khác nhau Với một ứng dụng có tính tạm thời, doanh nghiệp có thể triển khai theo mô hình triển khai đám mây công cộng bởi vì giúp tránh việc phải mua thêm thiết
bị chỉ để giải quyết một nhu cầu tạm thời Tương tự, nhu cầu về một ứng dụng thường trú hoặc một ứng dụng có những yêu cầu cụ thể về chất lượng dịch vụ hay vị trí của dữ liệu thì nên triển khai trên mô hình đám mây riêng hoặc đám mây lai Mạng riêng ảo (hình 1.8) thường được cung cấp khi áp dụng mô hình triển khai trong đám mây lai giúp cho việc bảo mật được tốt hơn
Đám mây cộng đồng
Cơ sở hạ tầng của đá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ó cùng một mối quan tâm chung (ví dụ: chung sứ mệnh, yêu cầu an ninh, chính sách) Một đám mây cộng đồng có thể được thiết lập bởi một số tổ chức có yêu cầu tương tự và tìm cách chia sẻ cơ sở hạ tầng để thực hiện một số lợi ích của tính toán đám mây
Tùy chọn này là tốn kém hơn vì có ít người sử dụng nhưng có thể đáp ứng về sự riêng
tư, an ninh hoặc tuân thủ các chính sách tốt hơn
1.2 Lợi ích và khó khăn của tính toán đám mây
Tính toán đám mây có phải là giải pháp tối ưu cho các doanh nghiệp hay không điều
đó phụ thuộc vào quy mô của công ty và tính chất kinh doanh mà doanh nghiệp đó theo đuổi Đối với các doanh nghiệp hoạt động mà dữ liệu của công ty mang tính chất
là sống còn trong việc kinh doanh thì công ty đó nên xây dựng một hệ thống riêng Nhưng đối với các doanh nghiệp vừa và nhỏ thì mô hình đám mây có lẽ là giải pháp tối ưu do họ không phải đầu tư vào cơ sở hạ tầng và cũng không mất phí cho việc quản
lý, bảo trì vận hành hệ thống Phần này sẽ tìm hiểu kĩ hơn về những lợi ích và khó khăn của tính toán đám mây
1.2.1 Những lợi ích của tính toán đám mây
Lợi ích của tính toán đám mây đã được thể hiện khá mạnh mẽ trong những năm gần đây Do là một công nghệ khá mới, nên chúng đều có những lợi ích và những rủi ro tiềm ẩn Với các công ty bước vào lĩnh vực tính toán đám mây, họ thu được những lợi ích nổi bật sau [5]:
Lợi ích về chi phí
Chí phí ở đây có thể là chi phí về xây dựng và vận hành, nguồn lực con người khi phải bảo trì hệ thống Khi người dùng sử dụng các dịch vụ của tính toán đám mây,
Trang 21Người dùng chỉ cần trả những chi phí cho những tài nguyên sử dụng như thời gian sử dụng, dung lượng lưu trữ, Với những tài nguyên đã thuê nhưng chưa dùng đến (do nhu cầu thấp) thì khách hàng không phải trả tiền Ngoài ra một chi phí khá lớn trong các doanh nghiệp hiện nay là số tiền trả để mua phần mềm bản quyền Ví dụ : Theo như hãng SAP công bố thì chi phí để bảo trì vận hành phần mềm hàng năm chiếm khoảng 22% giá trị phần mềm
Sử dụng tài nguyên hiệu quả hơn
Nhờ khả năng co giãn (elasticity) nên tài nguyên luôn được sử dụng một cách hợp lý nhất, theo đúng nhu cầu của khách hàng, không bị lãng phí hay dư thừa Đó chính là
cơ chế hỗ trợ đa người dùng trong tính toán đám mây
Một yếu tố khác ảnh hưởng đến việc sử dụng tài nguyên đó là cách “gán” (cấp phát) tài nguyên cho khách hàng Mô hình truyền thống cấp phát tài nguyên theo kiểu đơn bên thuê: một tài nguyên được cấp phát “tĩnh” trực tiếp cho một khách hàng theo quan
hệ một - một tài dù cho khách hàng đó có những lúc không có nhu cầu sử dụng thì tài nguyên đó sẽ ở trạng thái rảnh, dư thừa chứ không được thu hồi lại
Hình 1 9 Đơn người dùng Tính toán đám mây hiện thực việc phân phối tài nguyên theo kiểu đa bên thuê: một tài nguyên có thể được cấp phát “động” cho nhiều khách hàng khác nhau, các khách hàng này sẽ luân phiên sử dụng tài nguyên được cấp phát chung Với mô hình đa bên thuê trong tính toán đám mây, một tài nguyên có thể phục vụ cho nhiều khách hàng khác nhau Như vậy khi khách hàng không có nhu cầu, tài nguyên rảnh sẽ được hệ thống thu hồi lại và cấp phát cho khách hàng khác có nhu cầu
Trang 22Hình 1.10 Đa người dùng
Lợi ích về sự quản lý
Với tính toán đám mây, các doanh nghiệp sẽ tránh được những rắc rối trong quản trị
IT bởi vì các doanh nghiệp này không cần phải quản lý phần cứng, phần mềm Trách nhiệm quản lý thuộc về phí nhà cung cấp dịch vụ
Lợi ích về sự linh hoạt
Trong thời đại kinh tế toàn cầu, việc các doanh nghiệp làm việc ở các vùng miền khác nhau là điều không tránh khỏi Khi sử dụng dịch vụ tính toán đám mây khoảng cách về
vị trí địa lý, khoảng cách về không gian không còn là vấn đề trở ngại Chính điều này, giúp cho các doanh nghiệp có thể hoạt động trên toàn cầu, giúp cho việc kinh doanh trở lên linh hoạt
1.2.2 Những khó khăn của tính toán đám mây
Bảo mật
Việc sử dụng các dịch vụ của tính toán đám mây cũng gây ra một số vấn đề trở ngại cho doanh nghiệp Khi dữ liệu của người sử dụng dịch vụ lưu trữ trên hệ thống của nhà cung cấp dịch vụ thì có điều gì đảm bảo cho người sử dụng là dữ liệu của mình sẽ
an toàn, không bị rò rỉ ra bên ngoài Hiện nay, về mặt kỹ thuật thì vẫn chưa có cách nào hiệu quả để giải quyết vấn đề trên
Ví dụ: tháng 8 năm 2008 khi dịch vụ lưu trữ dữ liệu trực tuyến của Linkup bị hỏng,
Tài nguyên
Trang 23cố này thì uy tín và doanh thu của công ty hạ xuống Khoảng 20.000 người dùng dịch
vụ của Linkup đã từ bỏ nhà cung cấp nay để tìm đến một nhà cung cấp dịch vụ mới Vấn đề bảo mật dữ liệu trong tính toán đám mây đang là một thách thức thực đối với các nhà cung cấp dịch vụ dựa trên nền tảng dự toán đám mây Hiện nay có một giải pháp là những người dùng dịch vụ đám mây phải mã hóa dữ liệu trước khi đưa lên hệ thống đám mây và khi muốn sử dụng dữ liệu này thì phải thực hiện công việc giải mã này ở máy cục bộ (local)
Việc bảo mật dữ liệu ngoài các vấn đề về kỹ thuật thì nó còn liên quan đến các vấn đề khác như con người, các đạo luật Việc sử dụng các luật bảo vệ người sử dụng dịch vụ đám mây khi họ đưa dữ liệu của mình lưu trữ trên “hệ thống đám mây”, thì các nhà cung cấp dịch vụ phải bảo đảm dữ liệu của khách hàng không bị rò rỉ ra bên ngoài
Việc gây ra thắt cổ trai trong việc truyền dữ liệu
Đối với các ứng dụng, dữ liệu tăng tuyến tính theo thời gian Và ngoài ra có thể có ứng dụng chạy trên nền tảng tính toán đám mây mà dữ liệu có thể lưu ở các vị trí khác nhau Khi lúc ứng dụng này chạy có thể dẫn đến việc vận chuyển giữa các dữ liệu giữa các data center Việc luân chuyển dữ liệu càng nhiều khi số lượng khách hàng sử dụng dịch vụ tính toán đám mây càng lớn Chính điều này dẫn đến việc ùn tắc dữ liệu
Khó khăn trong lưu trữ
Khi nhu cầu sử dụng tăng khách hàng muốn mở rộng khả năng lưu trữ, nhà cung cấp dịch vụ đám mây có nhiệm vụ cung cấp đủ dung lượng cho người sử dụng hoặc ngược lại Chính điều này gây ra khó khăn trong việc quản lý hệ thống lưu trữ Khi một khách hàng mua một khoảng dung lượng thì phải cung cấp cho họ như thế nào? (đúng như yêu cầu hay nhiều hoặc ít hơn), tăng độ phức tạp cấu trúc dữ liệu (cấu trúc dữ liệu làm sao hổ trợ vấn đề lưu trữ, vấn đề duyệt, vấn đề mở rộng, ), hiệu suất truy vấn có thể bị ảnh hưởng do phân mảnh Điều này dẫn đến vần đề nghiên cứu tạo ra một hệ thống lưu trữ sao cho tiện lợi trong phục vụ nhu cầu khả năng lưu trữ của người sử dụng
1.3 Tổng kết chương
Trong chương này đã trình bày những cái nhìn tổng quan về tính toán đám mây từ định nghĩa, các mô hình dịch vụ, mô hình triển khai, cũng như ưu và nhược điểm của tính toán đám mây
Trang 24CHƯƠNG 2 MỘT SỐ KĨ THUẬT ÁNH XẠ LƯỢC ĐỒ CƠ
SỞ DỮ LIỆU QUAN HỆ TRONG TÍNH TOÁN ĐÁM MÂY
Chương 2 trình bày một số kĩ thuật ánh xạ lược đồ cơ sở dữ liệu quan hệ để phù hợp với ứng dụng đa người dùng trong tính toán đám mây Một số kĩ thuật trình bày trong chương này là: kĩ thuật dùng bảng riêng, bảng mở rộng, sử dụng XML trong IBM DB2 ,bảng phổ quát, bảng trục, bảng đoạn
2.1 Đặt vấn đề
Như đã đề cập trong chương 1 giới thiệu tổng quan về tính toán đám mây một ưu điểm của tính toán đám mây chính là giúp giảm chi phí cho phần cứng , phần mềm Việc giảm chi phí đến từ rất nhiều những phương pháp khác nhau Một trong những phương pháp mà người ta có thể nhận ra đầu tiên đó là sự hợp nhất nhiều khách hàng vào cùng một nhóm để dễ quản lý cũng như việc lưu trữ dữ liệu của họ Vấn đề này trong tính toán đám mây được gọi là việc quản lý dữ liệu đa người thuê (multi tenant)
Để hiểu được điều đó , trước tiên ta đi tìm hiểu v ề thuộc tính đa người thuê trong tính
toán đám mây là gì ? Đa người thuê (multi – tenant) là một nguyên lý cấu trúc, trong
đó một ứng dụng chạy một thể hiện - instance phục vụ đồng thời nhiều bên thuê [1][4]
Một ứng dụng đa ngườ i thuê cho phép khách hàng có thể chia nhau cùng một tài nguyên phần cứng bằng cách cung cấp cho h ọ một ứng dụng chia sẻ hoặc một thể hiện của cơ sở dữ liệu, cho phép họ có thể cấu hình ứng dụng để phù hợp với nhu cầu cũng như môi trường chuyên biệt như thể họ đang sử dụng môi trường riêng của họ
Tóm lại trong định nghĩa về đa người thuê đều tập trung vào khả năng ứng dụng đó chia sẻ nguồn tài nguyên phần cứng , cung cấp khả năng cấu hình tùy chọn cao của phần mềm, các hướng kiến trúc mà người dùng đảm bảo sử dụng một ứng dụng đơn và một cơ sở dữ liệu Ở đây có 2 thuật ngữ chúng ta cần quan tâm đó là đa người thuê và
đa thể hiện So với đa người thuê thì đa th ể hiện phù hợp với số lượng các bên thuê thấp và chi phí bảo trì rất cao [1]
Đề giảm chi phí dịch vụ cần giảm chi phí trên từng bên thuê một Để làm điều này như đã đề cập ở trên là sự hợp nhất các bên thuê vào trong cùng một nhóm hay nói cách khác chính là chia sẻ phần cứng , phần mềm, Sẽ mang lại lợi ích lớn hơn so v ới việc tách biệt các bên thuê (isolated) Hiện nay có rất nhiều phương pháp để làm giảm chi phí theo hướng tiếp cận chia sẻ (shared aproach) [2] [7][13]
Chia sẻ máy (Shared machine)
Chia sẻ xử lý (Shared process)
Chia sẻ table (Shared table)
Trang 25Chia sẻ máy : Nhiều bên thuê sẽ dùng chung một máy , nhưng mỗi một bên thuê sẽ có
một thể hiện cơ sở dữ liệu riêng (private database instance) Với phương pháp này chỉ hợp nhất được số lượng ít bên thuê vì dung lượng bộ nhớ sẽ tăng lên nhanh chóng
Chia sẻ xử lý : Nhiều bên thuê sẽ chia sẻ một cơ sở dữ liệu Nhưng mỗi bên thuê sẽ có
một một bộ các bảng riêng chỉ dành cho tenants đó Với phương pháp này chi phí sẽ nhỏ hơn so với phương pháp chia sẻ máy nhưng dung lượng lưu trữ cũng tăng lên một cách nhanh chóng Dung lượng bộ nhớ là tăng tuyến tính với số lượng người sử dụng Dựa vào thống kê [2] bảng dưới có thể hình dung rõ hơn về vấn đề này
Bảng 2 1 Bảng dung lượng lưu trữ yêu cầu với những loại cơ sở dữ liệu
Memory
1 instance
Memory 10,000 instances
Disk
1 instance
Disk 10,000 instances
Hình 2 1 Các mức độ chia sẻ trong tính toán đám mây
Trang 26Chia sẻ bảng : Nhiều bên thuê sẽ sử dụng cùng một cơ sở dữ liệu cũng như các bộ
bảng
Trong hình 2.1 cả ba mức độ chia sẻ đều thuộc mức chia sẻ cơ sở dữ liệu (Shared Database) dựa trên nền tảng của chia sẻ phần cứng (Shared Physical Server) và chia sẻ
hệ điều hành ( Shared OS)
Trên đây là một số phương pháp các doanh nghiệp và người thuê có thể lựa chọn Điều chúng ta quan tâm ở đây chính là sự chia sẻ (shared) hay sự tách biệt (isolated) Việc lựa chọn cách nào cũng có một vài điểm đáng quan tâm sau:
Cân nhắc về tính bảo mật : Bảo mật là một trong những vấn đề quan tâm hàng đầu
mà SaaS phải giải quyết Vì ứng dụng của bạn sẽ lưu trữ dữ liệu nhạy cảm của các
khách hàng bên ngoài tường lửa của khách hàng, vì vậy khách hàng sẽ có những kỳ vọng cao về an ninh Do vậy SLAs cần phải cung cấp đảm bảo an toàn an ninh dữ liệu một cách mạnh mẽ
Cân nhắc về hiệu suất : Rõ ràng rằng khi xây dựng phần mềm theo hướng chia sẻ thì
số lượng người dùng truy cập vào tài nguyên đó sẽ tăng lên rất nhiều Tuy nhiên ứng dụng vẫn phải cung cấp đúng và đủ tài nguyên mà khách hàng yêu cầu Việc sử dụng chung tài nguyên sẽ dẫn đến những ảnh hưởng lẫn nhau về mặt hiệu suất Công nghệ
ảo hóa có thể giải quyết vấn đề này nhưng lại gặp phải những vấn đề là không sử dụng tài nguyên một cách triệt để Ngoài những vấn đề trên các giải pháp cũng phải cân
nhắc tới sự co giãn (scalability), bảo trì (maintenance)
Trong việc thực thi các dịch vụ nghiệp vụ trên máy chủ , nhiều người dùng thường được hợp nhất (consolidated) vào cùng một c ơ sở dữ liệu để làm giảm t ổng chi phí (ownership) Chi phí ở đây bao gồm chi phí trực tiếp và chi phí không trực tiếp Chi phí trực tiếp có thể kể đến ở đây như: bản quyền phần mềm, bảo trì, yêu cầu phần cứng Chi phí không trực tiếp như chi phí sửa chữa, hỗ trợ công nghệ, đào tạo người sử dụng
Tổng các chi phí phải trả thông thường được chia ra làm 3 loại chính sau:
Chi phí về vốn (Capital expenses)
Chi phí hoạt động (Operation expenses)
Chi phí người dùng cuối (End user expenses)
Theo thống kê của Embarcadero [22] So sánh tổng chi phí- total cost of ownership của
mô hình ứng dụng truyền thống và mô hình nhiều người truy cập như sau:
Trang 27Bảng 2 2 Bảng so sánh chi phí giữa mô hình truyền thống và nhiều người truy cập
Năm thứ 1 Năm thứ 2 Năm thứ 3 Tổng chi phí cho 3
năm Phân tích chi phí software All -
Chi phí người dùng cuối
Đào tạo người