SQL Structured Query Language là ngôn ngữ truy vấn phô biến được sử dụng trong hầu hết các hệ quản trị cơ sở dữ liệu quan hệ.. Hệ quản trị cơ sở dữ liệu đóng vai trò quan trọng trong việ
Trang 1
BO GIAO DUC VA DAO TAO TRUONG DAI HQC HOA BINH
CBB Nig
BÀI TIỂU LUẬN
CƠ SỞ DỮ LIỆU NÂNG CAO
ĐÈ TÀI: XÂY DỰNG CƠ SỞ DỮ LIỆU HỆ THÓNG
Trang 2MUC LUC
M.NIEB)/9nII)I001177 4
DANH MỤC BưNG 1L TT HH TH TH HH TH TH HT HH HH HH He 5 BưNG MÔ T4 TỪ VIẾT TLẾT, - 2222222222223 2EESEErrrrrrrrrree 5
CHUONG I: TONG QUAN VE CO SO DỮ LIỆU .òcc si sec 6
1 Khái niệm đế liệu, cơ sở dữ liệu và hệ quan tr; CSDL - -c (55s sc + 6 1.1 Khái niệm dữ liệu . - tH 1n HT ng ng TT kg tr và 6 1.2 Khái niệm ŒSDL . 121 21 S ST TH ng ng kg kết 6 1.3 Khái niệm hệ quản trị CSDL - Ặ ng ng tre 7
2 Các mô hình cơ sở đữ lÏỆU ĂQ Q2n 2n HH HH gu xà 9 2.1 Mô hình đữ liệu file phẳng (Flat file) . 2- 52 52c+scecesseseerssces 9 2.2 Mô hình đữ liệu mạng (Nefwork model)} - cà eHrerre 9
2.3 Mô hình đữ liệu phân cáp (Hierarchical model) - 10 2.4 Mô hình đữ liệu quan hệ (Relational model) .-c sec eeiằ 11
2.5 M6 hinh dé ligu hudng déi trong (Object-Oriented model) 12
3 Hệ quán tr cơ sở dữ liệu là QÌ? Ác SH HH TH kh 12
3.1 Hệ quản trị Œ@SDL mã nguồn mo Enterprise Postgres 13
3.2 Hệ quản tri CSDL Oracle 0111 SH ST TH ng key 16 3.3 Hệ quản trị CSDL MongoDB - - n1 ke 17 3.4 Hệ quản trị CSDL Microsoft SQL Server che 18
4 Cấu trúc cøa một DBMS 0Q HT 1 HT HH TT HT HH TH HH Hiện 21 4.1 Các thành phân của một DBMS - - - ST 1212112 n2 xe 21
4.2 Các kiêu thao tác với DBMS 2n S T222 H1 HH rên 22
5 SQL Va NOSQL na 2
SN eo na 3 2; SEN e0 00v 143) 2¿
5.3 0-00 010.0) ectiiiiii4$555ä]355ŸẢ 2!
6 TAM QUAN trong Ci 96 ôn d ôÔỎ 3(
CHƯƠNG II: ĐẶC TảẢ YÊU CẬU .à.Ặ 2 2 2H21 re 32
Trang 2/56
Trang 31 Tam quan trong cia thiromg mai GiG1 tee ccccscccccscsccctecscecececsseecatecseseeteceeeees 32
1.1 Luéng nghiệp vụ đăng ký tài khoản - 7c Sen sec sererrrerrerree 38
1.2 Luông nghiệp vụ Quán lý bán sách 0c cc cnnseereereerree 39
2 Mô hình phân rã chức zăng c¿a hệ tháng . S-cccccccccseccreeecee 39
21 SO d6 PNA 18 OQẠR:ỞÕHLH,à 4c
2.2 Danh sách chức năng .- - -Ặ TS L SH SH TT TH TH TH kg tr 4(
2.2.1 Mô tá Phân hệ Quản lý bán sách che 4C
2.2.2 Mô tả phân hệ Quản lý đăng ký tài khoản cccc+ se rsey 42
2.2.3 Mô tả phân hệ Quản lý khọ + 525252 S22E 2t xsxcxrxsrererrrrrs 42 2.2.4 Mô tả phân hệ Quán trị hệ thống .- óc cv cccevrreerereree 43
2.2.5 Mô tá phân hệ Quản trị danh mục S53 sexy 43
Đốc gian 6 (AŒœŒRŒgHgHà)., 43
3.1 Danh sách thực thẻ - c1 2-1 1111 1111151111211 T1 11 5111 1 H1 ng 4
3.2 Xác định thuộc tính cho thực thê . ccc sex csksererererrerrree 44
4 Mô hình liên két thực thể E-H 0 2 .STv S22 9212121121181 11 x1 cree 4E
5 Chuyề»n đổi mô hình liên kết thực thể ER sang mô hình logic chuẩn 3NF 47
bà xi oi c0 30) 4
UP c uc cố Ạ RŒẠ 47 5.2.1 Áp dụng kĩ thuật khóa ảo chuyền đổi thực thẻ đảm bảo mô hình logic
3NF áp dụng với hệ quán trị dữ liệu SQL Server cà ằ 47
5.2.2 Diễn giải chỉ tiết từng bảng - - c St vs xrterrrrrerrrsve 49 l@i(0/05.001/0.60)1089).))0NHđăaớĂÀớ ÔỎ 54 F87201) 04 91 .-(.AÄäÄäàH, ÔỎ 56
Trang 3/56
Trang 4DANH MỤC HÌNH Hình 1: Ví dụ về đữ liệu và cơ sở đữ liệU -5-cc cSc St +rrrtrrrrrererrrrerrie 9
Hình 2: Cơ sở đữ liệu dạng file phắng - -Sc c2 x2 ce 9
Hình 3: Thực thê kết nói - -L : 111131311321 15113 111131115111 1 1111 87111 111tr 10
Hình 4: Mô hình dữ liệu phan cp .ccccccccccssssscesececsesesesesesecatecsesesesecesecseseseeseseees 10
Hình 5: Mô hình dữ liệu quan hệ .- - cà nh nen ng ren 11
Hình 6: Mô hình đữ liệu hướng đối tượng - 5-2252 Sex s+xexexeerrereerererree 12
Hình 16: Thống kê đữ liệu người dùng MongoDB, MySQL, MS SQL Server trong
5 năm trở lại đây tại VIỆt Nam - - Q2 nọ nọ kim 25
Hình 17: Phân biệt SQL và No SQL - (2525212322 cxeEEEEEEEerkerrrrerrrre 29 Hình 18: Luồng nghiệp vụ đăng ký tài khoản à- nSnSesererseererrrrrrrree 38 Hình 19: Luồng nghiệp vụ quản lý bán sách 22 27252c+cccccceeseerescee 39 Hin 200.100 0 .Adđ:AHH 3
Hinh 21: Phan hé quan ly DAN SACH oe gaóỘỪỌỪ 4
Hình 22: Phân hệ Quản lý dang ky tai Khoan o c.sceseesessessesseesessessesesesesessessesseeens 42
Hình 23: Phân hệ Quản lý khO - n1 Sn nHnn HH Tnhh kh tr 4 Hình 24: Mô hình liên két thực thê E-H 5 S22 2122112211121 111121 1.2 46
Hình 25:Sơ đỏ thiết kế cơ sở đữ liệU -.- 5c cScScrr2rrrrrrrrrrerrke 48
Trang 4/56
Trang 5DANH MUC BANG
Bảng 1: So sánh SQL và No SL - Ăn HH TH TH nh nh kh kh khi 2
Bảng 2: Báng chức năng của hệ thống bán sách c5 ccctcirterrrrerree 36
Bảng 3: Bảng nhân viên, cán bộ nàng nh nh nh HH Hy 4! Bảng 4: Bảng khách hàng SH TH HH nh nhà Hư HH Hệ 4
Bang 6: Bang phân loại sáCh - Hàng HH HH HH rệt BI
Bang 7: Báng nhà xuất bán c2: 22: 12t 111 1 11 1211111121115113 11111111 1E re 5(
Bảng 8: Bảng Sách - - nhà TH nh HH TH HH ng ng HH KH 5
Bang 10: Bang chỉ tiết Vé S8CN .ececeecceecsseseseecseecesesesesesesceescseseeceteeeneneseseaseeseesens 52
ISBN là chữ viết tắt của International Standard Book Number (Ma
1 ISBN_ | so tiéu chuan quốc tê cho sách), là mã số tiêu chuân quốc tê đề xác
Trang 6CHUONG I: TONG QUAN VE CO SO DU LIEU
1 Khái niệm đữ liệu, cơ sở đữ liệu và hệ quản trị CSDL
1.1 Khái niệm dữ liệu
Dữ liệu là tập hợp các thông tin, số liệu, hoặc sự mô tả về các sự kiện, đối tượng, hoặc hiện tượng trong thế giới thực Dữ liệu có thể được thu thập từ nhiều nguồn khác
nhau và có thể tồn tại dưới nhiều định dạng, bao gồm văn bản, hình ảnh, âm thanh,
video, và số liệu số
Dữ liệu có thê được chia thành hai loại chính:
- Dữ liệu có cấu trúc (Structured Data): La dir liéu co tô chức theo một cấu trúc
cụ thé, thường được lưu trữ trong các bảng, cơ sở dữ liệu quan hệ hoặc các định dạng dễ quản lý khác Ví dụ, dữ liệu trong một bảng Excel hoặc cơ sở dữ
liệu SQL
- _ Dữ liệu không có cấu trúc (Unstructured Data): Là đữ liệu không tuân theo một cấu trúc cụ thé, thường là đữ liệu văn bản, hình ảnh, video, hoặc âm thanh
Ví dụ, nội dung trang web, email, hay hình ảnh chụp từ camera
Khái niệm về đữ liệu là trọng tâm của nhiều lĩnh vực, bao gồm khoa học máy
tính, khoa học đữ liệu, va quan lý thông tin Việc hiệu và xử lý dữ liệu là quan trọng để
rút ra thông tin hữu ích và đưa ra quyết định có ích trong nhiêu lĩnh vực, từ kinh doanh đến nghiên cứu khoa học Đồng thời, quản lý và báo vệ dữ liệu cũng là một vấn đề quan trong dé dam bao an toàn và tuân thủ các quy định về quyền riêng tư
1.2 Khái niệm CSDL
Cơ sở dữ liệu (CSDL) là một hệ thống tô chức và lưu trữ dữ liệu dé có thé dé dang
truy cập, quản lý và cập nhật Cơ sở dữ liệu thường được sử dụng để lưu trữ thông tin trong môi trường máy tính và giúp tô chức dữ liệu một cách có tô chức, hiệu quả và an
toàn
Lợi ích của việc quản lý dữ liệu bằng cơ sở dữ liệu:
- _ Tổ chức đữ liệu hiệu quá: Cơ sở đữ liệu giúp tổ chức dữ liệu một cách có
tô chức và dễ dàng quản lý Dữ liệu được lưu trữ trong các bảng và trường, giúp tạo ra một cấu trúc rõ ràng và dễ theo dõi
- _ Tăng khả năng chia sẻ thông tin: Cơ sở dữ liệu cho phép nhiều người dùng cùng truy cập và sử dụng dữ liệu mà không gặp vấn đề xung đột hoặc mất thông tin Điều này tăng tính khả dụng và chia sẻ thông tin trong tô chức -_ Bảo mật dữ liệu: Các hệ quản trị cơ sở dữ liệu thường có các cơ chế bảo mật tích hợp, bao gồm quán lý quyên truy cập, mã hóa đữ liệu, và theo dõi
Trang 6/56
Trang 7cập trái phép
-_ Tính toàn vẹn đữ liệu: Các cơ sở đữ liệu hỗ trợ tính toàn vẹn đữ liệu thông qua việc sử dụng các ràng buộc, quy tắc và khóa chính Điều này giúp đảm bao rằng đữ liệu được lưu trữ và cập nhật một cách đồng nhất và chính xác
- Tang higu suat va truy xuat nhanh chong: Cơ sở đữ liệu được thiết ké dé cung cap hiệu suất tốt cho các thao tác truy vấn và cập nhật dữ liệu Các chỉ mục và kỹ thuật tối ưu hóa khác giúp tăng tốc quá trình truy cập dữ
liệu
- _ Dễ dàng mở rộng: Khi tổ chức mở rộng và cần lưu trữ lượng lớn dữ liệu hơn, cơ sở đữ liệu có thê được mở rộng mà không gặp nhiều vấn đề về hiệu suất Các hệ quản trị cơ sở dữ liệu hiện đại thường hé tro kha nang mo rong theo nhu cau
- _ Tiết kiệm thời gian và công sức: Cơ sở dữ liệu giúp tự động hóa nhiều nhiệm vụ liên quan đến việc quản lý dữ liệu, giám thiêu công sức và thời gian cần thiết so với việc sử dụng các phương tiện lưu trữ đữ liệu truyền thống như tệp tin
Hỗ trợ phân tích va bao cáo: Cơ sở đữ liệu cung cấp khả năng thực hiện truy vấn phức tạp, phân tích dữ liệu và tạo báo cáo Điều này giúp tô chức đưa ra quyết định dựa trên thông tin hiểu quả từ đữ liệu đã thu thập
Sự khác biệt cơ bản giữa cơ sở dữ liệu và dữ liệu thông thường đó là tính cấu trúc sắp xếp có hệ thông Dữ liệu không thôi có thê là bất cứ thông tin nào chưa được sắp xếp hay cầu trúc theo một trật tự cụ thé ví dụ văn bản trên một ñle được coi là dữ liệu, hay đữ liệu trên một video hay tap tin
Ngược lại với cữ liệu, cơ sở dữ liệu bao gồm đữ liệu được cấu trúc một cách rõ ràng Một tập hợp dữ liệu không có cấu trúc hệ thống nhất định không được coi là một
cơ sở đữ liệu
1.3 Khái niệm hệ quản trị CSDL
Hệ quán trị cơ sở đữ liệu (Hệ quản trị CSDL - DBMS) là một phần mềm hoặc hệ
thống phần mềm được thiết kế để quản lý và tương tác với cơ sở dữ liệu Nhiệm vụ chính của DBMS là cung cấp một giao diện dé định nghĩa, tạo, truy xuất, cập nhật và quản lý cơ sở đữ liệu Dưới đây là một số khái niệm cơ bản liên quan đến Hệ quản trị
CSDL :
- _ Cơ sở đữ liệu (Database): Là nơi lưu trữ đữ liệu theo cách có tổ chức, giúp
dễ dàng quản lý và truy cập thông tin Cơ sở đữ liệu có thê bao gồm một
hoặc nhiều bảng dữ liệu
Trang 7/56
Trang 8- Hệ quản trị cơ sở dữ liệu (DBMS): Là phần mềm hoặc hệ thống phần mềm
quản lý và điều khiên cơ sở dữ liệu DBMS giúp tạo, duy trì, và thao tác dữ liệu một cách hiệu quả
- Bang (Table): La m6t thanh phan co ban trong cơ sở dữ liệu quan hệ Mỗi bảng có các cột (fields) va hang (records), biéu diễn đữ liệu theo cách có
tổ chức
- Truong (Field): La mét don vi nhỏ nhất trong bảng, đại diện cho một loại
đữ liệu cụ thê như số nguyên, chuỗi ký tự, ngày tháng, v.v
-_ Giao dich (Transaction): Là một chuỗi các hoạt động thao tác với cơ sở dữ
liệu, được thực hiện đề đảm bảo tính toàn vẹn và đồng nhất của dữ liệu
- Newodi quan tri co so dik ligu (Database Administrator - DBA): La ngudi
chịu trách nhiệm về việc quán lý, duy trì và bảo vệ cơ sở dữ liệu Công việc
của DBA bao gồm việc thiết lập quyền truy cập, giám sát hiệu suất và đảm bao an toàn của đữ liệu
- _ Ngôn ngữ truy vấn cơ sở dữ liệu (Database Query Language): Là ngôn ngữ được sử dụng để tương tác với cơ sở dữ liệu SQL (Structured Query Language) là ngôn ngữ truy vấn phô biến được sử dụng trong hầu hết các
hệ quản trị cơ sở dữ liệu quan hệ
- Ché độ ACID: La mét tap hop cdc tinh chat (Atomiticy, Consistency, Isolation, Durability) ma mot giao dich can phai tuan theo dé dam bao tính toàn vẹn và an toàn của cơ sở đữ liệu
Hệ quản trị cơ sở dữ liệu đóng vai trò quan trọng trong việc hỗ trợ các ứng dụng
và hệ thống thực hiện các thao tác liên quan đến đữ liệu một cách hiệu quả, an toàn và
có tô chức
Các hệ quản trị cơ sở dữ liệu phé bién hién nay bao gồm: Microsoft Access,
MySQL, Oracle, PostgreSQL, SQL Server
Việc sử dụng các phân mêm (hệ quản trị cơ sở đữ liệu) này sẽ giúp các nhà quản trị hệ thống dễ dàng thực hiện các thao tác như tìm kiếm, lọc, xóa, chỉnh sửa hay tạo mới dữ liệu trên cơ sở đữ liệu Đề làm được điều nay trên các hệ quản trị cơ sở dữ liệu các nhà quản trị hệ thống thường sử dụng ngôn ngữ truy vấn mang tính cấu trúc:
Structured Query Language hay SQL
Ví dụ về đữ liệu và cơ sở dữ liệu:
Trang 8/56
Trang 9các cuốn sách được nhập vào
CSDL như: Tên sách, tên nhà xuất bản, tên tác giả,
cuốn sách theo các tiêu chí khác
nhau như: Theo tên tác giả, tên
nhà xuất bản,
2 Các mô hình cơ sở dữ liệu
2.1 Mô hình dữ liệu file phang (Flat file)
Dùng cho các CSDL đơn giản CSDL dạng file phẳng thường là ñle kiểu văn bản chứa dữ liệu dạng bảng
1 Hai số phận Jetfray Archer | Hodder & Stoughton 1979 lác vào năm 1979 bi nha van người Anh Jeffrey Archer Tựa đề Kane and Abel đựa theo
|câu chuyện của anh em: Cain và Abel trong Kinh Thánh Cựu Ước
Tiếng chim hót trong bụi mận gai (nguyên bán: The Thom Birds, còn được gọi Tiếng chim hót trong 4 theo bản địch tiếng Pháp là Những con chim ẩn mình chờ chéULes oiseaux se
? xd mgn gai | COl9AMoOuiough [Nhà xuất bản Phụ Nữ 1977 cachent pour mouri) là tiều thuyết nổi tiếng nhất của nữ văn sĩ người Uc Colleen
IMcCullough, được xuất bản năm 1977
2.2 Mô hình dữ liệu mạng (Network model)
Các file trong mô hình dữ liệu mạng được gọi là các bản hi Tap hợp các bản ghi cùng kiểu tạo thành một kiêu thực thê dữ liệu Các kiêu thực thê kết nối với nhau thông qua mỗi quan hệ cha-con Mô hình này được biểu diễn bởi một đỗ thị có hướng và các mũi tên chỉ từ kiêu thực thê cha sang kiểu thực thê con Ví đụ như sau:
Trang 9/56
Trang 10' ' ' ' ' ' ' ' ' ' '
1
' ' ' ' ' ' '
' 1 ' '
Customer: 6 ' '
Ỳ v
' A : mm » Order Detail:
Vv Order: 79 >| Product 7
' '
2.3 Mô hình dữ liệu phân cấp (Hierarchical model)
Tổ chức theo hình cây, mỗi nút biêu diễn một thực thê dữ liệu Mỗi nút cha có thê
có một hoặc nhiều nút con nhưng mỗi nút cơn chỉ có một nút cha Do đó mô hình đữ liệu phân cấp có thê có các kiêu quan hệ: 1-1, 1-N Nhược điểm của mô hình nay la một nút con không thê có quá một nút cha nên không biêu diễn được các quan hệ phức
Customer: 6 Order: 56 = Product 48
- Order Detail: Order Detail: Order: 79 Product 7 “| Product 51
Trang 10/56
Trang 112.4 Mô hình dữ liệu quan hệ (Relational model)
Trong mô hình dữ liệu quan hệ không có các liên kết vật lý Dữ liệu được biểu
diễn dưới dạng bảng với các hàng và các cột Dữ liệu trong hai bảng liên kết với nhau
thông qua các cột chung và có các toán tử để thao tác trên các hàng của bảng
Vi du:
6 Company F Francisco Pezez-Olaeta Purchasing Manager Milwaukee WI
26 Company Z Run Liu Accounting Asisstant Miami FL
Bang Order Order ID Customer ID Employee ID Order Date Shipped Date Shipping Free
51 26 9 10/01/2024 10/01/2024 10$
56 6 2 12/01/2024 12/01/2024 0$
79 6 2 15/01/2024 15/01/2024 0$
Bảng Employee Employee ID First Name Last Name Title
2 Andrew Cencini Vice Presedent, Sales
5 Steven Thrope Sales Manager
9 Anne Hellung-Larse Sales Representative
Hinh 5: M6 hinh dit liéu quan hé
Trang 11/56
Trang 122.5 Mô hình dữ liệu hướng đối tượng (Object-Oriented model)
Mô hình này ra đời vào khoảng đầu những năm 90, dựa trên cách tiếp cận của phương pháp lập trình hướng đôi tượng
Cơ sở dữ liệu bao gồm các đối tượng:
-_ Mỗi đối tượng bao gồm các thuộc tính, phương thức của đối tượng
- _ Các đối tượng trao đổi với nhau thông qua các phương thức
-_ Một đối tượng có thê được sinh ra từ việc kế thừa từ đối tượng khác
Ví dụ:
Customer
„+ Các phương thức
ă ,
Update 4=“ “ ¡
Contact ,
' '
» Update Address
Company ID Các thuộc tính = z = =~””
Update Description
‘Check Credit
imit
Paint Mailing Label
Hình 6: A⁄ô hình đữ liệu hướng đối tượng
3 Hệ quản trị cơ sở dữ liệu là gì?
Hiện nay, một lượng vô cùng lớn các thông tin hữu ích với chúng ta đang tổn tại
ở dạng văn bản Việc của chúng ta là phải biết cách quản lý và sử dụng chúng sao cho thật hiệu quả Đề quản lý một lượng dữ liệu lớn phức tạp, người sử dụng phải có những công cụ hỗ trợ tính năng đơn giản trong thao tác nhưng lại hiệu quả trong trích lọc thông tin Từ thực tế đó, hệ quản trị cơ sở dữ liệu ra đời
Hệ quan tri co so dir ligéu (Database Management System - DBMS): La mot hệ thống phân mềm cho phép tạo lập cơ sở dữ liệu và cung cấp cơ chế lưu trữ, truy cập dựa trên các mô hình CSDL,
Trên thị trường phân mềm hiện nay ở Việt Nam xuất hiện khá nhiều phân mềm
hệ quan tri co so dit liệu như: Microsoft Access, Foxpro, SQL Server, Oracle Trong đó:
Trang 12/56
Trang 13cho mô hình quan hệ
IMS cua IBM Ia hệ quản trị CSDL điển hình cho mô hình đữ liệu phân
cấp IDMS là hệ quản trị CSDL điễn hình cho mô hình dữ liệu mạng
Những lợi ích mà DBMS mang lại:
Quản trị các CSDL
Cơ chế an toàn, bảo mật cao
Hỗ trợ các ngôn ngữ giao tiếp Ví dụ như ngôn ngữ truy vấn dữ liệu có cầu
trúc - SQL, ngôn ngữ thao tác dữ liệu - DML, ngôn ngữ mô tả, định nghĩa
dữ liệu - DDL
3.1 Hệ quản trị CSDL mã nguồn mớ Enterprise Postgres
PostgreSQL la m6t hé quản trị cơ sở đữ liệu nguồn mở đa tính năng, được sử dụng bởi hàng triệu người dùng trên toàn cầu Nó là một trong những hệ quản trị cơ sở dữ liệu đầu tiên được phát triển và cho phép người dùng quản lý cá dữ liệu có cầu trúc và không cầu trúc Nó có thể được sử dụng trên hầu hết các nền tảng chính và hoàn toàn tuân thủ ACID (Atomicity, Consitency, Isolation và Durability), với việc hỗ trợ foreien keys, joins, views, triggers va stored procedures (hỗ trợ nhiều ngôn ngữ như
PL/pgSQL, java, C, python, perl, )
Ngoài các tính năng chính của một hệ quản tri CSDL, PostgreSQL còn có các tính năng nổi bật như:
Kiểm soát đồng thời nhiều phiên bản (MVCC)
Cho phép bé sung cac Extensions, dé dang hé tro nhiều loại dữ liệu khác nhu GIS, Time Series
Tinh nang Foreign Data Wrappers cho phép lién kết với các database khác
dé dang
Transactions long nhau (savepoints)
Hỗ trợ nhan ban khéng déng thoi (asynchronous replication) Sao lưu trực tuyén (online backup)
Phục hỏi tại thời diém 16i (point-in-time recovery)
Trong bang xép hang cla DB-Engine, PostgreSQL xép thứ 4, chỉ sau các CSDL cua Oracle va Microsoft Co thé noi PostgreSQL dime dau trong so các CSDL mã nguồn mở
Trang 13/56
Trang 14
1 Oracle Relational, Multi-model
2_ MySQL Relational, Multi-model
3 Microsoft SQL Server Relational, Multi-model PostgreSQL
4 PostgreSQL Relational, Multi-model
Hình 7: (theo: https://db-engines.com/en/ranking) Enterprise Posteres là một hệ quản trị cơ sở đữ liệu quan hệ đăng tin cậy và mạnh
mẽ, dành cho các tô chức đang yêu câu một CSDL với hiệu năng truy vấn mạnh mẽ và tính sẵn sảng cao
Bên cạnh đó, Enterprise Postgres còn cung cấp các tính năng như cài dat dé dàng, sao lưu và phục hỗi thông minh, đảm bảo tích hợp liền mạch vào bất kỳ hệ thông nghiệp
vụ hiện tại nào, cùng với việc hé tro thao tac dé dàng và trực quan cho người quản trị cũng như người dùng cuối
Cac tinh năng cua Enterprise Postgres:
= In-Memory Columnar Index*
« High-speed data load
« High-speed backup/recovery
= WAL duplication
= Mirroring Controller
= Transparent data encryption
(256-bit PCI DSS-compliant)
= One-click backup and recovery
= System usage statistics
= Proprietary database compatibility
Hình 8: Các tính năng của Enterprise Postgres
- _ Công cụ quản lý cơ sở dữ liệu có thê mở rộng và xử lý hàng terabyte dữ
liệu
Hỗ trợ đồng thời cả đữ liệu có câu trúc và dữ liệu phi cau tric nhu JSON,
XML, Key-value
Trang 14/56
Trang 15- Bao mat ma hoa dữ liệu 256-bit (tuân thủ PCI-DSS)
- Che giấu các dữ liệu "nhạy cảm" (Data masking)
-_ Chỉ mục theo cột trên Memory (In-Memory Columnar Index)
- Dự phòng cho WAL file, tăng khả năng sẵn sàng cao
- Bộ điều khiển đồng bộ đữ liệu (Miroring controller)
- _ Khả năng tương thích cao với các hệ quán trị CSDL phổ biến như Oracle,
MS SQL Server, MySQL giúp cho việc di chuyên dữ liệu (migration) từ các hệ quán trị CSDL khac sang Enterprise Postgres dé dang va hiéu qua
chi phi
- Độ tin cậy cao và khá năng sao lưu/phục hồi thông minh
-._ Giao diện quản trị nâng cao (GUI)
© Quan ly cum cluster (High availability)
©_ Sao lưu và phục hồi dễ dàng, chỉ với một cú nhấp chuột
o_ Dashboard thống kê mức độ sử dụng của hệ thống
-_ Hỗ rợ(24x7 hỗ trợ toàn cầu)
Nâng cao độ tin cậy : Tính toàn vẹn dữ liệu và tính liên tục hoạt động là tối quan trọng đối với bất kỳ tô chức nào Rất nhiều rủi ro có thê gây mắt mát đữ liệu, ví dụ như hỏng ô đĩa vật lý, hỏng RAID, Enterprise Postgres giảm thiểu rủi ro này thông qua
dự phòng dữ liệu trên các nhiều thiết bị phân cứng vật lý khác nhau và điều phối dữ liệu phân tán này trong quá trình tự động fail-over và phục hồi
An ninh tốt hơn: Khi khối lượng đữ liệu được lưu trữ trong một hệ thống CNTT
tăng lên, thi nguy co rò rỉ dữ liệu cũng tăng theo Tất cả dữ liệu trong Enterprise Posteres có thê được bảo vệ bằng cách sử dụng thiết lập mã hóa với cơ chế Mã hóa dữ liệu trong suốt (TDE) sử dụng các thuật toán tương tự như được sử dụng bởi Chính phủ Mỹ, cung cấp cho khách hàng khả năng bảo vệ dữ liệu ở mức bảo mật cao nhất Enterprise Postgres tăng cường bảo mật ở nhiều cấp độ bao gồm mã hóa dữ liệu, mã hóa nhật ký và mã hóa kết nối nội bộ Bên cạnh đó là tính nang Data Masking, Data Redaction giúp che giấu những thông tin “nhạy cảm”, tránh rò rỉ thất thoát đữ liệu
Hiệu suất tốt hơn : Chỉ mục theo cột trên bộ nhớ (In-Memory Columnar Index)
của Enterprise Posteres đảm bảo phản hồi nhanh hơn cho các truy vấn phức tạp, cung cấp cho tô chức/doanh nghiệp thông tin cân thiết và kịp thời để đáp ứng các tỉnh huỗng
quan trọng
Nang cao độ tin cậy và cải thiện hiệu năng cùng với sự hỗ trợ dài hạn của đơn vị cung cấp đem lại sự yên tâm và lợi ích đáng kê cho doanh nghiệp
Trang 15/56
Trang 163.2 Hé quan tri CSDL Oracle
Oracle là một hệ quản trị cơ sở dữ liệu quan hệ đa mô hình, chủ yếu được thiết kế điện toán lưới và lưu trữ dữ liệu cho doanh nghiệp Đây là một trong những lựa chọn hàng đầu giúp doanh nghiệp xử lý linh hoạt và đưa ra những giải pháp tối ưu cho việc quản lý thông tin và ứng dụng
Cấu tạo của Oracle
Giống như các phần mềm khác, Oracle được xây dựng dựa trên SQL, một ngôn
ngữ lập trình được tiêu chuân hóa cho các nhà quản trị cơ sở dữ liệu, nhà phân tích dữ
liệu và các chuyên gia về dữ liệu sử dụng quản lý và truy vấn đữ liệu được lưu trữ Các tính năng được hỗ trợ bởi Oracle
Tĩnh khả dụng:
Đề hỗ trợ cho tính khả dụng của cơ sở dữ liệu, Oracle cung cấp tính năng Oracle Data Guard Khi sử dụng các tính năng này, cơ sở đữ liệu dự phòng thứ cấp được duy trì như một bản sao của cơ sở đữ liệu chính và có thê sử dụng các lựa chọn thay thé
trong quá trình chuyén déi dự phòng
Bao mat:
Tinh nang Oracle Advanced Security cung cấp giải pháp báo vệ thông tin nhạy cảm tại nguồn là TDE (mã hóa dữ liệu thời gian thực) và Data Redaction (che giấu dữ liệu) Giải pháp này cho phép mã hóa dữ liệu tại nguỗn và đăng xuất Ngoài ra, Oracle còn phát triển thêm một số tính năng bảo mật khác đê bảo vệ quyền lợi cho người dùng Khả năng mở rộng:
Oracle RAC là điển hình cho khả năng mở rộng của Oracle, cung cấp khả năng như di chuyển phiên bản, thực hiện nâng cấp, truy trì tính liên tục của ứng dụng và quản lý chất lượng dịch vụ
Hiệu suất:
Oracle cung cấp các giải pháp nâng cao hiệu suất như Oracle Advanced
Compression, Oracle Database In- Memory, nhằm tối ưu hiệu suất hoạt động của hệ
thống ở mức tốt nhất
Loi ich cua Oracle mang lại
Chúng tôi đã nói về các tính năng của Oracle database Những tính năng này mang lại lợi thế cho Oracle so với các đối thủ cạnh tranh Tuy nhiên thì những ưu điểm của Oracle la gi? Dưới đây là xem xét những ưu điểm của Oracle
Hiệu suất: Oracle có phương pháp luận và nguyên tac dé dat được hiệu suất cao Vietnix có thê triển khai điều chỉnh hiệu suất trong database của nó đề truy xuất và thay
đổi dữ liệu nhanh hơn Nhằm cải thiện thời gian thực hiện truy vấn
Trang 16/56
Trang 17database trên một server duy nhất Phương pháp Instance Caging được Oracle cung cấp để quản lý việc cấp phát CPU trên server đang chạy các cơ sở đữ liệu cá nhân Instance Caging hoạt động với database resource manager để quán lý các dịch vụ qua nhiều phiên bản
Các phiên bản: Như đã thảo luận ở trên, về các phiên bản khác nhau được cung cấp bởi Oracle Nó mang lại lợi ích cho người dùng khi mua phiên bản theo yêu cầu ứng dụng của họ Họ có thê cập nhật liên tục phiên bản nếu yêu cầu của họ thay đôi trong tương lai
Cluster: Nó sử dụng Real Application Clusters dé cung cấp một hệ thống dữ liệu sẵn Database với RAC có những lợi ích so với các database server truyền thông như: scaling database qua nhiều trường hợp, cân bằng tải, dự phòng dữ liệu và tính khá dụng,
linh hoạt đề tăng khả năng xử lý
Failure Recovery: RMAN (Recovery Manager) la tinh nang cua Oracle DB co chức năng khôi phục hoặc phục hôi các file database trong downtime Nó hỗ tro backup online, lưu trữ Người dùng cũng có thê sử dụng SQL*PLUS để recovery, được gọi là recovery do người dùng quán lý Có một tiện ích có sẵn trong database đê thêm các backup do người dùng quản lý
PL/SQL: Database hỗ trợ PL/SQL extension để lập trình liên tục
3.3 Hệ quản trị CSDL MongoDB
MongoDB la một database hướng tài liệu (documernt), một dạng NoSQL database Vì thế, MongoDB sẽ tránh cầu trúc table-based cua relational database dé thích ứng với các tai ligu nhu JSON co mot schema rat linh hoạt gọt là BSON MongoDB sử dụng lưu trữ di ligu dudi dang Document JSON nén mỗi một collection
sẽ các các kích cỡ và các document khác nhau Các dữ liệu được lưu trữ trong document kiêu JSON nên truy vấn sẽ rất nhanh
Các tính năng của MongoDB gôm có:
Cac ad hoc query: hé tro search bang field, các phép search thông thường, regular
expression searches va range queries
Indexing: bat ki field nao trong BSON document cting có thé duc index Replication: có ý nghĩa là “nhân bản”, là có một phiên bản giống hệt phiên bản đang tồn tại, đang sử dụng Với cơ sở đữ liệu, nhu cầu lưu trữ lớn, đòi hỏi cơ sở dữ liệu toàn vẹn, không bị mat mat trước những sự cỗ ngoài dự đoán là rất cao VÌ Vậy, người
ta nghĩ ra khái nệm “nhân bản”, tạo một phiên bản cơ sở dữ liệu giống hệt cơ sở dữ liệu đang tồn tại và lưu trữ ở một nơi khác, đề phòng có sự cỗ
Trang 17/56
Trang 18quả đã được tính toán Các phép toán tập hợp nhóm các giá tri tir nhiéu Document lai với nhau và có thê thực hiện nhiều phép toán đa dạng trên dữ liệu đã được nhóm đó đề trả về một kết quả duy nhất Trong SQL.,, count(*) và GROUP BY là tương đương với
Aggregation trong MongoDB
Luu trit file: MongoDB duoc ding nhu mothé thống file tận dụng những function trên và hoạt động như một cách phân phối qua sharding
3.4 Hệ quản trị CSDL Microsoft SQL Server
Giới thiệu về SOL server
SQL Server là hệ quản trị cơ sở dữ liệu, được xây dựng dựa trên khái niệm trí tuệ
nhân tạo nhằm tạo điều kiện thuận lợi, cải tiến dịch vụ cơ sở dữ liệu, bảo mật và giảm bớt các khó khăn øặp phải khi phát triển các ứng dụng và lưu trữ dữ liệu
Các phiên bản SQL Server hiện nay được tích hợp với Cloud, điều này đồng nghĩa các tổ chức có thê hưởng lợi từ tính năng bảo mật cao, vừa đồng bộ được dữ liệu trên
nhiều máy tính và các thiết bị hiện đại khác
SQL Server tạo ra nền tảng dữ liệu hợp nhất đi kèm với Hệ thống tệp phân tán Apache Spark và Hadoop (HDFS) đê trở nên thông minh hơn với tất cả dữ liệu Các ưu điểm của SQL server
Các Big Data Cluster và PolyBase
Microsoft triển khai Big Data Clusters (Cụm dữ liệu lớn) vào SQL Server nhằm mang đến sự linh hoạt và khả năng mở rộng cho nền tảng dữ liệu doanh nghiệp Cụm dữ liệu lớn của SQL Server được triển khai dưới dạng vùng chứa trên Kubernetes, kết nối trực tiếp công cụ cơ sở dữ liệu SQL Server với Apache Spark Nhờ vậy, người dùng có thê nhận thông tin chỉ tiết từ tất cả các dữ liệu thông qua truy vấn trên đữ liệu quan hệ để có một bức tranh toàn cảnh
Bộ tính năng này được xem là cải tiễn lớn với PolyBase (một thành phần tùy chọn trong SQL Server) khi kết nối SQL Server với Oracle, Teradata và MongoDB, đồng thời cung cấp kết nỗi với các nguồn dữ liệu khác Microsoft gợi đây là “ảo hóa đữ liệu”
Ảo hóa đữ liệu với PolyBase cho phép bạn sử dụng SQL Server làm trung tâm đữ liệu, truy vấn từ nhiều nguồn dữ liệu PolyBase đã được thêm vào trên bản SOL Server Standard Edition, giúp nhiều người dùng có thê tiếp cận được với nó
Trang 18/56
Trang 19Scale-out query performance with compute poo! Distributed table with data pool
SQL compute node SQL compute node SQL compute node > SUE
Dedicated analytics with Spark poo!
Spark
Hình 9: Mot vi du vé cau trac hé quan tri CSDL SQL Server
Xứ lý truy van thong minh
Tinh nang Query Store duge cho la tinh năng tuyệt vời đã được giới thiệu trong SOL Server Tinh năng này cho phép người dùng có thông tin về thời gian chạy, kế hoạch thực thi cho các truy van Nhờ điều này, quản trị viên cơ sở đữ liệu có thê nhanh
chóng tìm ra nguyên nhân của vấn đề hiệu suất
Trong SQL Server, Microsoft đã thực hiện một số cải tiến bổ sung cho các tính năng Query Store mặc định bằng cách thêm điều chỉnh truy vấn tự động cho các kế hoạch thực thi hồi quy về hiệu suất
Giám sát thông minh
Đề hạn chế một số vấn đề về tranh chấp tài nguyên mà tính năng Query Store gây
ra trên một số hệ thông, SQL Server giới thiệu một tùy chọn cho phép tùy biến việc thu thập dữ liệu Ngoài ra, SQL Server cũng cập nhật một số cái tiền quanh việc thu thập
kế hoạch thực thi
Với những cập nhật này, người dùng có thê nắm bắt các kế hoạch thực thi thực
tế, kiêm tra được số lượng hàng được truy vấn sử dụng, từ đó dễ dàng so sánh chúng với những đữ liệu ước tính mà trình tối ưu hóa truy vấn đã sử dụng và tìm ra vấn đề về hiệu suất một cách nhanh chóng
Khôi phục cơ sở dữ liệu nhanh hơn
Với SQL Server, Microsoft đã cải thiện quá trình phục hồi cơ sở đữ liệu bằng cách triển khai danh sách các phiên bản để cho phép giao dịch được cập nhật nhanh hơn rất nhiều sau khi khôi phục hay cập nhật máy chủ, thời gian khôi phục mẫu chỉ mất vài giây
Trang 19/56
Trang 20e- Ñ«~ + & lÀ | @NeQuey J8 Ø @ 6 @ ú „€>xjJm
‹ I0 0 ee eet aes)
@ ll Aways On Tasks > =
+ 4 Managemen => Take Offline
D Wl Integration § oe : HH
HR SQL Server A) Facets + Í#] XEvent Profil Start PowerShell Stretch »
I ee
Re › Encrypt Columns
lassify Data
Roane Classify Data
Wide Vulnerability Assessment ›
Ti ưu hóa hiệu suất
SOL Server thường xảy ra sự cô khi hệ thống có gắng chèn các bản ghi tuân tự vào một bảng với khối lượng rất cao Vấn đề nay xay ra do sự cạnh tranh trong bộ nhớ,
vi chi có một luỗng có thể truy cập một trang dữ liệu trong một thời điểm nhất định
Đề khắc phục sự cố này, tính năng OL TP trong bộ nhớ được thiết lập thêm Tuy nhiên, điểm yếu của nó là không tương thích được 100% với tất cả các loại dữ liệu, nên không thể sử dụng ở mọi nơi được
Trang 20/56
Trang 21
- Database (Dữ liệu, Siêu dữ liệu): Đáy kiến trúc là thiết bị nhớ ngoài lưu trữ dữ
liệu và siêu đữ liệu Trong phân này không chỉ chứa đữ liệu được lưu trữ trong CSDL
mà còn chứa cả các siêu đữ liệu, tức là thông tin câu trúc của CSDL Ví dụ như tên của các quan hệ, tên các thuộc tính của quan hệ và các kiểu dữ liệu của các thuộc tính nay
- Bộ quản lý lưu trữ: Nhiệm vụ của bộ quản lý lưu trữ là lấy ra các thông tin được yêu cầu từ những thiết bị lưu trữ đữ liệu và thay đổi những thông tin này khi được yêu câu bởi các mức trên nó của hệ thống
- Bộ xử lý câu hỏi: Bộ xử lý câu hỏi không chỉ điều khiển các câu hỏi mà còn điều
khiên cả các yeu cầu thay đổi đữ liệu hay siêu đữ liệu Nhiệm vụ của nó là tìm ra cach tốt nhất đề thực hiện một thao tác được yeu cau va phat ra lénh đối với bộ quản lý lưu trữ và thực thi thao tác đó
- Bộ quản lý giao dịch: Bộ quản lý giao dịch có trách nhiệm đảm bảo tính toàn
vẹn của hệ thống Nó phải đảm báo rằng các thao tác thực hiện thông suốt đồng thời
không cán trở các thao tác khác và đảm bảo hệ thống không bị mất đữ liệu thậm chí ca khi lỗi hệ thống xắy ra
Trang 21/56
Trang 224.2 Cac kiéu thao tac véi DBMS
- Các truy vấn: Đây là thao tác hỏi đáp về đữ liệu được lưu trữ trong CSDL và được thực hiện thông qua giao diện truy vấn chung hoặc thông qua giao diện của các chương trình ứng dụng
- Cập nhật dữ liệu: Đây là các thao tác, thêm, sửa, xóa dữ liệu trong CSDL Giống như các truy vấn, chúng có thê được thực hiện thông qua giao diện chung hoặc thông qua giao diện của các chương trình ứng dụng
- Thay đôi sơ đồ: Các lệnh này thường được thực hiện bởi những người sử dụng được cấp phép, thường là những người quản trị CSDL mới được phép thay đôi sơ đỗ của CSDL, hoặc tạo lập các CSDL mới
SOL được thiết kế để làm việc chủ yếu với các hệ quán lý cơ sở dữ liệu quan hệ
(RDBMS)
SQL chính là viết tắt của Structured Query language, được phát âm là "S-Q-L" hoặc đôi khi là "See-Quel" là ngôn ngữ chuân đê xử lý Cơ sở dữ liệu quan hệ Một cơ
sở dữ liệu quan hệ xác định các mối quan hệ dưới dạng các bảng
Lập trình SỢL có thê được sử dụng hiệu qua dé chèn, tìm kiếm, cập nhật, xóa các
bản ghi cơ sở đữ liệu
Điều đó không có nghĩa là SQL không thê làm được gì ngoài việc đó Nó có thê làm rất nhiều thứ bao gồm, nhưng không giới hạn, tối ưu hóa và duy trì cơ sở đữ liệu Các cơ sở dữ liệu quan hệ như Cơ sở dữ liệu MySQL, Oracle, MS SQL Server, Sybase, vv su dung SQL
Các câu lệnh SQL chủ yếu có thể chia thành các nhóm chức năng chính: DDL (Data Definition Language): Các câu lệnh DDL được sử dụng để định nghĩa cầu trúc của cơ sở đữ liệu, bao gồm tạo bảng, xóa bảng, thay đôi cầu tric bang,
và các đối tượng khác như index va view
Trang 22/56
Trang 23employee_id first_name BETS art birthdate
Hình 12: Hình minh hoạ ví dạ nhóm câu lệnh Data Definition Language
DML (Data Manipulation Language): Các câu lệnh DML được sử dụng để thao tác dữ liệu trong cơ sở dữ liệu Các thao tác này bao gồm truy vấn đữ liệu, chèn
dữ liệu mới, cập nhật đữ liệu, và xóa dữ liệu
is Mere eres) first_name, last_name employees birthdate >=
Hinh 13: DML (Data Manipulation Language)
DCL (Data Control Language): Các câu lệnh DCL được sử dụng đề kiểm soát
quyên truy cập vào dữ liệu Các câu lệnh này bao gồm GRANT (cấp quyền) và REVOKE (hủy quyên)
) Copy code employees user1;
Hình 15: TCL (Transaction Control Language)
SOL cung cấp một cách tiêu chuẩn và mạnh mẽ đê tương tác với cơ sở dữ liệu quan hệ, và nó là một phần quan trọng trong phát triển và quản lý hệ thống thông tin
hiện đạt
Trang 23/56
Trang 245.2 NoSQL là gì?
NoS§QL là một thuật ngữ chung đề cập đến các hệ thống quản lý cơ sở dữ liệu
không phải là cơ sở dữ liệu quan hệ (RDBMS - Relational Database Management
System) Mặc dù NoSQL có thể được hiểu là "Not Only SQL" (Không chi SQL),
nhưng nó thường được hiểu là "Non-SQL" hoặc "No Traditional SQL."
Các cơ sở dữ liệu NoSQL được thiết kế để đáp ứng các nhu cầu và thách thức của các ứng dụng hiện đạt, nơi đữ liệu thường xuyên thay đổi, cần sự mở rộng linh hoạt và phái xử lý các loại dữ liệu khác nhau so với cơ sở dữ liệu quan hệ truyền thống Dưới đây là một số đặc điệm chính của cơ sở dữ liệu NoSQL:
Mô hình dữ liệu phong phú: NoSQL hỗ trợ nhiều mô hình dữ liệu, bao gồm
key-value stores, document stores, wide-column stores, và graph databases Mỗi mô hinh này được tối ưu hóa cho một loại dữ liệu cụ thê
Mở rộng ngang dễ dàng: Các cơ sở dữ liệu NoSQL thường để dàng mở rộng ngang (horizontal scaling), nghĩa là có thể thêm các nút máy chủ mới đê tăng khả năng chịu tải của hệ thống
Khả năng lưu trữ và xử lý dữ liệu lớn: NoSQL thường được thiết kế để xử lý lượng dữ liệu lớn (Big Data) và có khả năng lưu trữ và truy xuất dữ liệu một cách hiệu quả
Tính nhanh và linh hoạt: NoSQL thường tập trung vào việc cung cấp hiệu suất cao và thời gian đáp ứng nhanh chóng, đặc biệt là trong các ứng dụng yêu cầu thời gian thực
Không sứ dụng schema cố định: Khác với cơ sở dữ liệu quan hệ có schema cố định, NoSQL thường linh hoạt hơn, cho phép thay đổi cấu trúc dữ liệu một cách dễ
dang
Da dang loai dir ligu: NoSQL hỗ trợ nhiều định dạng đữ liệu, bao gồm đữ liệu
văn bản, hình anh, âm thanh, và dữ liệu không câu trúc
Phù hợp cho ứng dụng phân tán: Đối với các hệ thông phân tán, NoSQL thường
là lựa chọn lý tưởng do khả năng mở rộng và tính sẵn sàng
Các loại cơ sở đữ liệu NoSQL phố biến bao gồm:
- Document Stores: MongoDB, CouchDB
- Key-Value Stores: Redis, DynamoDB
- Wide-Column Stores: Apache Cassandra, HBase
- Graph Databases: Neo4j, OrientDB
Trang 24/56
Trang 25phủ hợp phụ thuộc vào yêu cầu cụ thê của ứng dụng và môi trường triển khai
@ MongoDB @ MySQL @ Micr Sort: Interest for MongoDB wv
1 Kon Tum Province Le
ey bếp 2 Lang §on Province 5 ma a=
t3 Ƒ tage of searches LEARN MORE ›
MongoDB MySQL Microsoft SQL Ser
` a" $ y ng , , xu, + Add comparison
Vietnam ¥ Past Syears ¥ Allcategories ¥ Web Search ¥
ge
Hinh 16: 7hồng kê đữ liéu MongoDB, MySQL, MS SQL Server trong 5 nam tra
lai day tai Viét Nam
5.3 So sanh SQL va NoSQL
Sy so sanh gitta co so dit ligu NoSQL va SQL (Relational Database Management System - RDBMS) la mét chủ đề phức tạp và phụ thuộc vào nhiều yếu tố như yêu cầu
cụ thể của ứng dụng, môi trường triên khai, và tính chất của dữ liệu Dưới đây là một
số điểm chính đê so sánh gitra NoSOL va SQL:
Mô hình đữ liệu:
SQL: Str dụng mô hình dữ liệu quan hệ với các bảng, quan hệ, và khóa ngoại
Trang 25/56
Trang 26NoSQL: H6 tro nhiéu mé hinh dirliéu khac nhau nhu key-value, document, wide-
column, va graph
Schema:
SQL: Yêu cầu schema cô định và có quy tắc rõ ràng về kiểu dữ liệu
NoSQL: Thường linh hoạt hơn với khả năng thay đổi schema một cách để dàng
và không yêu cầu schema cố định
NoSQL: Thường cung cấp thời gian đáp ứng nhanh chóng cho các truy vẫn đơn
giản và có thê tăng cường hiệu suất trong các ứng dụng đòi hỏi thời øian đáp ứng nhanh
Quyết định chọn lựa:
SQL: Thích hợp cho các ứng dụng có quy mô cơ sở đữ liệu lớn và yêu cầu quan
hệ cứng nhắc giữa dữ liệu
NoSQL: Phù hợp cho các ứng dụng yêu câu linh hoạt trong mô hình dữ liệu và
đòi hỏi khả năng mở rộng dê dàng
SQL: Thường được sử dụng trong các dự án có yêu cầu cao về tính nhất quán và
quan hệ giữa dữ liệu
NoSQL: Thường được sử dụng trong các dự án yêu câu tính linh hoạt và mở rộng
Kết luận, việc lựa chọn giữa NoSQL và SQL phụ thuộc vào nhiều yếu tố, và không có một giải pháp phù hợp cho tất cả các trường hợp Mỗi loại cơ sở dữ liệu có
Trang 26/56
Trang 27dụng và môi trường triển khai
Tham số SQL NoSQL
Cơ sở dữ liệu SQL chủ yếu | Cơ sở dữ liệu NoSQL chủ yếu được
ĐỊh nghĩa | được gọi là RDBMS hoặc Cơ| gọi là cơ sở dữ liệu không liên quan
sở dữ liệu quan hệ hoặc phân tán
RDBMS truyền thống sử dung | Hệ thống cơ sở đữ liệu NoSQL bao
cú pháp và truy vấn SQL để| gồm nhiều loại công nghệ cơ sở dữ
Design for phân tích và lây dữ liệu đê có | liệu khác nhau Các cơ sở dữ liệu
thêm thông tin chỉ tiết Chúng | này được phat trién đê đáp ứng nhu được sử dụng cho các hệ thống cầu trình bày cho sự phát triển của
NoSQL databases có thê dựa trên
SOL databases là cơ sở dữ liệu | ` OSQE dzabases có thể dựa tren
liệu biêu đồ Schema SQL databases co lược đồ NoSQL databases sử dụng lược đồ
được xác định trước động cho dữ liệu phi cấu trúc Khả năng | SQL databases có thêmởrộng | NoSQL databases có thê mở rộng
mở rộng theo chiều dọc theo chiều ngang
Ví dụ SQL Cassandra, Hbase
Phủ hợp cho Đây là Ị lựa chọn lý tưởng cho | Không phù hợp với truy vân phức
môi trường truy vân phức tạp | tạp
_ , | SQL databases khong thi Phù hợp hơn cho kho lưu trữ dữ liệu
Lưu trữ dữ TA X3 TFA aA ky a ,
„ x_ | hợp cho việc lưu trữ dữ liệu | phân cập vì nó hỗ trợ phương thức
Trang 27/56
Trang 28
Tham sé SQL NoSQL
Nhiều loại khác nhau bao gồm các
Variations Một loại có biến thê nhỏ kho khóa-giá trị, cơ sở đữ liệu tài
liệu và cơ sở dữ liệu đồ thu
Ne hát Nó được phát triển vào những | Được phát triển vào cuối những viên Pm | nim 1970 để giải quyết các | năm 2000 để khắc phục các vấn đề
mo nhu Postgres & MySQL,
va thuong mai nhu Oracle
RDBMS database la tuy chọn thích hợp đề giải quyết các vấn
đẻ về ACID
NoSQL được sử dụng tốt nhất để giải quyết các vấn để về tính khả dụng của dữ liệu
Sử dụng khi nó quan trọng hơn để
có dữ liệu nhanh hơn đữ liệu chính xác
Lựa chọn tốt
nhất
Khi bạn cần hỗ trợ truy vấn động
Network Highly available networl Commodity network (Etherne
(Infiniband, Fabric Path, etc! etc.)
Loại lưu trữ (SAN, RAID, etc.) (standard HDDs, JBOD)
Trang 28/56