BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC MỞ THÀNH PHỐ HỒ CHÍ MINH
NGUYỄN VĂN HOÀNG – 1751012025
VÕ ĐỨC HIÊN - 1751012018
CƠ SỞ DỮ LIỆU NHƯ MỘT DỊCH VỤ
(DBaaS)
ĐỒ ÁN NGÀNH
NGÀNH KHOA HỌC MÁY TÍNH
TP. HỒ CHÍ MINH,
MỤC LỤC
DANH MỤ C HÌNH VẼ .....................................................................................................................9
DANH MỤ C BẢ NG........................................................................................................................10
DANH MỤ C TỪ VIẾ T TẮ T.........................................................................................................11
TÓ M TẮ T KHÓ A LUẬ N.................................................................................................................1
MỞ ĐẦ U.............................................................................................................................................. 2
Chương 1.
TÌM HIỂ U VỀ ĐIỆ N TOÁ N ĐÁ M MÂ Y.........................................................4
1.1. Định nghĩa điện toán đám mây (Cloud computing)..............................................4
1.2. Các mô hình triển khai...................................................................................................4
1.2.1.
Public cloud...........................................................................................................4
1.2.2.
Private cloud.........................................................................................................4
1.2.3.
Hybrid cloud.........................................................................................................5
1.2.4.
Community cloud................................................................................................6
1.3. Các mô hình dịch vụ điện toá n đá m mâ y.............................................................7
1.3.1.
Dịch vụ cơ sở hạ tầng (Iaas - Infrastructure as a Service)......................8
1.3.2.
Dịch vụ nền tảng (Paas – Platform as a service)........................................8
1.3.3.
Dịch vụ phần mềm (Saas – Software as a service)...................................9
1.4. Một số mô hình dịch vụ hỗ trợ khác..........................................................................9
Chương 2.
DBaaS (Database-as-a-Service).................................................................11
2.1. DBaaS là gì ?..................................................................................................................11
2.2. Lợi ích của việc sử dụng DBaaS..............................................................................11
2.3. Ưu điểm củ a DBaaS....................................................................................................12
2.3.1.
Nă ng Suấ t........................................................................................................... 12
2.3.2.
Dễ sử dụ ng.........................................................................................................12
2.3.3.
Nhanh...................................................................................................................12
2.3.4.
Tính khả dụ ng và khả nă ng mở rộ ng cao..............................................12
2.3.5.
Bả o vệ...................................................................................................................13
2.3.6.
Chi phí DBaaS...................................................................................................13
Chương 3.
MongoDB Atlas.................................................................................................15
3.1. Định nghĩa về MongoDB...........................................................................................15
3.1.1.
NoSQL................................................................................................................. 15
3.1.2.
Ưu điểm của MongoDB..................................................................................15
3.1.3.
Nhượ c điểm củ a MongoDB.........................................................................16
3.2. MongoDB Atlas là gì ?...............................................................................................16
3.3. Cá c tính năng nổ i bậ t củ a MongoDB Atlas........................................................16
3.4. Automation at the Core...............................................................................................17
3.5. Tính linh hoạt và hỗ trợ...............................................................................................17
3.6. Security............................................................................................................................ 18
3.7. Khả năng mở rộng........................................................................................................18
3.8. Hiệu suất cao.................................................................................................................. 18
PHỤ LỤ C.......................................................................................................................................... 19
TÀ I LIỆ U THAM KHẢ O...............................................................................................................20
LỜI CẢM ƠN
NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
DANH MỤC HÌNH VẼ
Hình 1.1: Tên hình 1..................................................................................................3
Hình 1.1: Public cloud & Private cloud.....................................................................3
Hình 1.1: Public cloud & Private cloud 3
DANH MỤC BẢNG
Bảng 1.1: Tên bảng 1................................................................................................3
Bảng 2.1: Tên bảng 1................................................................................................4
DANH MỤC TỪ VIẾT TẮT
TÓM TẮT KHÓA LUẬN
1
MỞ ĐẦU
Chắ c hẳ n mọ i ngườ i khô ng cò n xa lạ vớ i thuậ t ngữ điện
toá n đá m mâ y (Cloud Computing) nữ a. Đâ y là thuậ t ngữ rấ t
quen thuộ c trong nhữ ng nă m gầ n đâ y nhấ t là khi ngà nh cô ng
nghiệp phầ n mềm bướ c và o thờ i kì 4.0. Cloud Computing xuấ t
hiện tạ i Việt Nam thô ng qua doanh nghiệp IBM, doanh nghiệp
nà y là mộ t trong nhữ ng doanh nghiệp tiên phong trong lĩnh vự c
nà y. 9/2008 IBM đã mở trung tâ m điện toá n đá m mâ y và khá ch
hà ng đầ u tiên là Cô ng ty cổ phầ n cô ng nghệ và truyền thô ng Việt
Nam (VNTT). Sau đó , “ô ng lớ n” Microsoft tiếp tụ c phá t triển điện
toá n đá m mâ y tạ i thị trườ ng Việt Nam. Tuy nhiên, điện toá n đá m
mâ y thờ i kì nà y vẫ n đang trong giai đoạ n phá t triển và thử
nghiệm. Nhắ c đến lĩnh vự c nà y tạ i Việt Nam chú ng ta cũ ng
khô ng thể bỏ qua tậ p đoà n FPT. FPT đã kí kết vớ i Microsoft châ u
Á - Trend Micro để hợ p tá c phá t triển điện toá n đá m mâ y tạ i
châ u Á trong đó có Việt Nam. Đâ y là mộ t lĩnh vự c triển vọ ng
trong thờ i kỳ cô ng nghệ 4.0, để tìm hiểu kỹ hơn về lĩnh vự c nà y
chú ng ta hã y cù ng tìm hiểu thô ng qua nhữ ng chương kế tiếp.
2
Chương 1. TÌM HIỂU VỀ ĐIỆN TOÁN ĐÁM MÂY
1.1.
Định nghĩa điện toán đám mây (Cloud computing)
Điện toán đám mây hay Clound Computing là phương thức lưu trữ các nguồn điện
toán có quy mô khổng lồ như phần mềm, dịch vụ, phần cứng… nằm tại các máy
chủ ảo (đám mây) trên môi trường internet thay vì các máy chủ trong 1 văn phòng
hoặc tòa nhà. Người dùng có thể truy cập và sử dụng bất cứ tài nguyên nài trên đám
mây. Vào bất kì lúc nào và bất cứ đâu, chỉ cần người dùng có kết nối internet. Đối
với điện toán truyền thống người dùng sẽ phải chạy các phần mềm, dịch vụ hoặc lấy
tài nguyên thông qua một máy chủ có hoặc máy tính cá nhân trong phạm vi gần.
Hình: Tên hình 1
Bảng 1.1: Tên bảng 1
1.2.
Các mô hình triển khai
Có 4 mô hình điện toán đám mây đang được sử dụng phổ biến hiện nay gồm:
1.2.1. Public cloud
Đang là mô hình phổ biến nhất. tất cả dịch vụ ứng dụng trên mô hình này đều
nằm trên một đám mây. Người dùng sẽ sử dụng và truy cập chung tài nguyên, nhà
cung cấp dịch vụ sẽ trục tiếp quản lý và bảo vệ dữ liệu trên đám mây. Mặc dù mô
hình này có thể phục vụ được cho nhiều người dùng, không có giới hạn về không
thời gian, chi phí đầu tư thấp, giảm thiểu gánh nặng quản lý, cơ sở hạ tầng, có tính
linh hoạt thay đổi quy mô theo nhu cầu người dùng. Nhưng mô hình này tương đối
không an toàn, và kiếm soát dữ liệu khó khăn.
1.2.2. Private cloud
Là mô hình dịch vụ thường được các doanh nghiệp, cá nhân, tập thể tư nhân sử
dụng. Mô hình được bảo vệ trong tường lửa và do doanh nghiệp, tư nhân hoặc công
ty quản lý. Đây là mô hình linh động trong việc quản lý và lưu trữ dữ liệu, có độ an
toàn và bảo mật cao. Thế nhưng, mô hình này khá tốn kém cho việc xây dựng và
3
duy trì hệ thống, chỉ phục vụ cho nội bộ doanh nghiệp hoặc công ty những người
dùng bên ngoài không thể truy cập và sử dụng, khó khăn trong quá trình triển khai
công nghệ.
Tài nguyên được
chia sẻ công khai
Tài nguyên được
chia sẻ riêng tư
Cụm server của người
dùng chuyên dụng
Hỗ trợ nhiều
khách hàng
Kết nối qua Internet, Cáp
quang và Mạng riêng
Hỗ trợ kết nối
internet
Độ bảo mật thấp
Độ bảo mật Cao
Hình 1.1: Public cloud & Private cloud
1.2.3. Hybrid cloud
Hay còn hay còn gọi đám mây lai là sự kết hợp giữa public cloud và private
cloud. Mô hình này cho phép người dùng khai thác thế mạnh của hai mô hình trên
giúp đảm bảo an toàn cho cơ sở dữ liệu và triển khai được nhiều dịch vụ diện toán
đám mây cho người dùng mà không bị giới hạn. Nhưng bên cạnh đó sẽ gặp khó
khăn trong việc quản lý hệ thống và tốn nhiều chi phí để xây dựng cơ sở hạ tầng.
4
Hình 1.2 Hybrid cloud
1.2.4. Community cloud
Là mô hình dùng để chia sẻ hạ tầng, dữ liệu cho nhiều người dùng hoặc tổ chức
khác nhau trong cùng lĩnh vực. Mô hình này giúp các cá nhân, doanh nghiệp hay tổ
chức có chung lĩnh vực có thể chia sẻ dữ liệu, thông tin phục vụ cho công việc của
người dùng. Mô hình này cũng tương tự đám mây lai khó điều hành và quản lý, chi
phí để xây dựng và triển khai mô hình tương đối cao.
5
Hình 1.3 Community Cloud
1.3.
Các mô hình dịch vụ điện toán đám mây
Các nhà cung cấp dịch vụ điện toán đám mây thường cung cấp các dịch vụ của họ
theo 3 mô hình cơ bản sau:
6
Hình 1.4 Cloud Services
1.3.1. Dịch vụ cơ sở hạ tầng (Iaas - Infrastructure as a Service)
Iaas là mô hình dịch vụ pay-per-use (tức là trả tiền cho những gì sử dụng). Chi
phí sử dụng dịch vụ này được tính dựa trên chức năng và lượng tài nguyên mà
khách hàng dùng. Nhà cung cấp dịch vụ Iaas sẽ bán cho khách hàng các server (máy
chủ), thiết bị mạng, bộ nhớ, CPU, storage (không gian lưu trữ), máy tính (có thể
máy thật hoặc máy ảo, tùy nhu cầu), trang thiết bị trung tâm dữ liệu và một số tính
năng bảo vệ an ninh nâng cao. Ví dụ về các dịch vụ IaaS như IBM BlueHouse,
Vmware, Amazon EC2, Microsoft Azure Platform, Sun Parascale Cloud Storage…
1.3.2. Dịch vụ nền tảng (Paas – Platform as a service)
Paas là mô hình dịch vụ giúp các developer có thể phát triển. Nó cho phép triển
khai các ứng dụng, website trên đám mây. Paas về cơ bản cũng khá giống với Iaas
nhưng cấp độ cao hơn một chút. Paas được trang bị thêm các công cụ phát triển
doanh nghiệp thông minh (BI), middleware và nhiều tool khác. Với Paas, người
dùng sẽ có một nền tảng (Platform) được cài đặt sẵn để phù hợp cho việc phát triển
ứng dụng. Một số ví dụ điển hình về PaaS là Force.com của Salesforce.com, Google
App Engine, Yahoo Pipes …
7
1.3.3. Dịch vụ phần mềm (Saas – Software as a service)
Saas là một mô hình dịch vụ điện toán đám mây cao nhất hiện nay. Cho phép
người dùng sử dụng được các ứng dụng dễ dàng trên nền tảng đám mây thông qua
internet. Đơn giản hơn, Saas sẽ cung cấp phần mềm/ứng dụng chạy trên internet. Từ
đó người dùng cuối (end-user) có thể sử dụng ngay. Nhà cung cấp dịch vụ Saas có
thể lưu trữ trên server của họ. Hoặc cho phép người dùng tải xuống và vô hiệu hóa
nó khi hết hạn. Ví dụ điển hình cho mô hình dịch vụ này là Microsoft Office 365.
1.4.
Một số mô hình dịch vụ hỗ trợ khác
Network as a service (NaaS) – là việc bán các dịch vụ mạng từ bên thứ ba
cho những khách hàng không muốn xây dựng cơ sở hạ tầng mạng của riêng
họ. NaaS đóng gói các tài nguyên mạng, dịch vụ và ứng dụng như một sản
phẩm có thể được mua cho một số người dùng, thường là trong một khoảng
thời gian đã ký hợp đồng. Nó có thể bao gồm các dịch vụ như kết nối Mạng
diện rộng (WAN), kết nối trung tâm dữ liệu, băng thông theo yêu cầu
(Bandwidth On Demand), dịch vụ bảo mật và các ứng dụng khác.
Storage as a service (STaaS) – Lưu trữ như một dịch vụ. Cung cấp không
gian lưu trữ trực tuyến trả tiền theo nhu cầu, như Google Drive, Amazon S3,
Fshare, Dropbox. Đây là một loại mô hình kinh doanh đám mây, ở đó một
công ty sẽ cho công ty hoặc cá nhân thuê cơ sở hạ tầng lưu trữ dữ liệu.
Security as a service (SECaaS) – Bảo mật như một dịch vụ. Cung cấp các
giải pháp bảo mật trực tuyến trả tiền theo nhu cầu, như McAfee, Trend
Micro, …Đây là một dịch vụ thuê ngoài trong đó một công ty bên ngoài xử
lý và quản lý bảo mật của người dùng dịch vụ đám mây. Về cơ bản có thể
hiểu là chúng ta sử dụng phần mềm chống virus qua internet.
Data as a service (DaaS) – Dữ liệu như một dịch vụ. Cung cấp dữ liệu (chỉ
đọc) trả tiền theo nhu cầu thông qua các APIs, như Google Maps, Bing
Maps, Amazon Public Data Sets (dữ liệu khoa học về trái đất của NASA,
gồm cả thời tiết và bản đồ, dữ liệu biến đổi di truyền ở người, dữ liệu nhân
khẩu học – điều tra dân số của Hoa Kỳ), Freebase (dữ liệu các sự kiện và
khẳng định rất lớn trên thế giới). Đây là dịch vụ cung cấp dữ liệu có sẵn cho
người dùng theo yêu cầu qua mạng, sử dụng đám mây. Công nghệ này cho
phép lưu trữ hiệu quả hàng loạt dữ liệu mà các ứng dụng phần mềm như một
dịch vụ (SaaS) đôi khi không thể.
Desktop as a service (DaaS) – Desktop như một dịch vụ. Cung cấp môi
trường desktop ảo qua web hoặc thin client, như VMWare Horizon DaaS. Có
thể hiểu đây là một dịch vụ cung cấp điện toán đám mây mà ở đó nhà cung
cấp sẽ cung cấp cho người dùng vitual desktops (máy ảo) thông qua internet.
8
Database as a service (DBaaS) – Cơ sở dữ liệu như một dịch vụ. Cung cấp
CSDL trả tiền theo nhu cầu, như MongoDB, Oracle, …(chúng ta sẽ tìm
hiểu mô hình dịch vụ này)
Test environment as a service (TEaaS) – Môi trường kiểm tra như một
dịch vụ. như Sauce Labs, Perfect Mobile,.. Đây là một dịch vụ quản lý môi
trường thử nghiệm phần mềm đầu cuối. Dịch vụ sẽ cung cấp môi trường
kiểm thử phần mềm cho phép người dùng sử dụng các công cụ kiểm tra và
kiểm thử thực thi để thử nghiệm các ứng dụng và phần mềm.
API as a service (APIaaS) – Giao diện lập trình ứng dụng (Application
Programming Interface) như một dịch vụ. Là nền tảng cho phép tạo và host
các APIs (REST, XML, Web Services), như PhantomJs.Cloud, …Đây là một
nền tảng phần mềm cho phép người dùng tương tác với API của bên thứ ba
cũng như quản lý các API tùy chỉnh của riêng họ.
Backend as a service (BaaS)- Back-end (phần dành cho người quản trị) như
một dịch vụ như Backendless, Telerik Backend Services, Parse, …BaaS giúp
kết nối các ứng dụng di động với các dịch vụ đám mây. Nó tạo ra một giao
diện ứng dụng thống nhất (API) và bộ công cụ phát triển phần mềm (SDK)
để kết nối các ứng dụng di động với các dịch vụ lưu trữ đám mây.
Integrated development environment as a service (IDEaaS) – Môi trường
phát triển tích hợp như một dịch vụ.
Integration platform as a service (IPaaS) – Nền tảng tích hợp như một
dịch vụ là một bộ công cụ tự động hóa để kết nối và tích hợp các ứng dụng
phần mềm, quy trình và dữ liệu vào đám mây.
Trong nhữ ng dịch vụ đã kể ở trên thì dịch vụ DBaaS khá là đá ng chú ý và có
thị trườ ng ngườ i dừ ng rộ ng rã i. Hã y cù ng đi đến chương sau để tìm hiểu kỹ
hơn về dịch vụ nà y.
9
Chương 2. DBaaS (Database-as-a-Service)
2.1.
DBaaS là gì ?
Cơ sở dữ liệu dưới dạng dịch vụ (DBaaS) là một mô hình dịch vụ điện toán đám
mây cung cấp cho người dùng một số hình thức truy cập vào cơ sở dữ liệu mà
không cần thiết lập phần cứng vật lý, cài đặt phần mềm hoặc định cấu hình cho hiệu
suất. Tất cả các tác vụ quản trị và bảo trì đều do nhà cung cấp dịch vụ đảm nhận để
tất cả những gì người dùng hoặc chủ sở hữu ứng dụng cần làm là sử dụng cơ sở dữ
liệu. Tất nhiên, nếu khách hàng chọn kiểm soát nhiều hơn đối với cơ sở dữ liệu, tùy
chọn này có sẵn và có thể khác nhau tùy thuộc vào nhà cung cấp.
2.2.
Lợi ích của việc sử dụng DBaaS
Giảm chi phí hoạt động : Việc sử dụng DBaaS sẽ giúp người dùng tiết kiệm
chi phí hơn so với các dịch vụ dựa trên đám mây khác. Với việc đầu tư cơ sở
hạ tầng cho quản lý cơ sở dữ liệu là một khoản đầu tư không hề nhỏ và nó
mang lại khó khăn đối với hầu hết các công ty thuộc mọi quy mô. Với việc
sử dụng DBaaS cho phép các công ty đầu tư vào các tài nguyên mà họ thực
sự cần, trong khi không phải lo lắng về việc bảo trì cơ sở dữ liệu tại chỗ
Cung cấp nhanh : Việc cung cấp cơ sở dữ liệu nhanh hoặc theo yêu cầu tốn ít
thời gian hơn so với cơ sở dữ liệu vật lý.
Outsourcing (Thuê ngoài) : sử dụng dịch vụ DBaaS cũng có nghĩa là người
dùng thuê dịch vụ quản lý và giám sát dữ liệu. Các thủ tục như sao lưu, điều
chỉnh, tối ưu hóa, vá lỗi, nâng cấp dữ liệu đều có thể được tự động hóa hoặc
do nhà cung cấp phụ trách.
Tính bảo mật cao : Việc duy trì cơ sở dữ liệu từ xa từ các máy chủ khác nhau
tạo ra chơ chế bảo mật “by-default” để ngăn chặn các lỗ hổng bảo mật.
DBaaS giúp ngăn chặn các lỗ hổng bảo mật cơ sở dữ liệu tại chỗ thường gặp.
Hệ thống theo dõi: có thể dễ dàng theo dõi việc sử dụng cơ sở dữ liệu thông
qua DBaaS. Đo lường chi tiết việc sử dụng cơ sở dữ liệu có thể theo dõi thời
gian sử dụng, không gian, tính khả dụng và mức độ tiêu thụ tài nguyên. Nó
còn có thể cung cấp chế độ xem dữ liệu kiểu bảng điều khiển, cho phép tóm
tắt ngắn gọn cho mỗi người dùng.
Nhân lưc: DBaaS giúp giải phóng nhân lực, với cơ sở dữ liệu tại chỗ các
chuyên viên quản trị cơ sở sữ liệu phải tập trung vào việc quản trị cơ sở dữ
liệu thực tế. Còn với DBaaS, nhân viên có thể thoải mái tập trung vào ứng
dụng và phát triển cơ sở dữ liệu.
Khả năng mở rộng : DBaaS cho phép khả năng mở rộng theo yêu cầu,
DBaaS cho phép người dùng co dãn quy mô cơ sở dữ liệu một cách linh hoạt
10
- Xem thêm -