Các ứng dụng tập trung dữ liệu mới mạng xã hội, IoT,…; Cơ sở dữ liệu quan hệ không phù hợp với loại ứng dụng này; Hệ thống lưu trữ dữ liệu mới – NoSQL: Cung cấp khả năng mở rộng t
Trang 1ĐẠI HỌC QUỐC GIA TP.HCM TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN
KHOA CÔNG NGHỆ THÔNG TIN
ĐỒ ÁN MÔN HỌC
CƠ SỞ DỮ LIỆU NÂNG CAO
GIẢNG VIÊN: TS NGUYỄN TRẦN MINH THƯ
Trang 2NỘI DUNG TRÌNH BÀY
KẾT LUẬN
Trang 3GIỚI THIỆU
PH
Ầ N
1
Trang 4GIỚI THIỆU VÀ ĐỘNG LỰC
C12
005
Trang 5 Các ứng dụng tập trung dữ liệu mới (mạng xã hội, IoT,…);
Cơ sở dữ liệu quan hệ không phù hợp với loại ứng dụng này;
Hệ thống lưu trữ dữ liệu mới – NoSQL:
Cung cấp khả năng mở rộng theo chiều ngang khá linh hoạt cho việc đọc/ghi đơn giản của hệ cơ
sở dữ liệu trên các máy chủ phân tán;
Khả năng phân phối và sao chép dữ liệu,…
Trang 6• Không hỗ trợ giao tác ACID nên kém về sự nhất quán dữ
Trang 7Hãy thử kết hợp của cả hai mô hình RDBMS và NoSQL
• Để đảm bảo được hiệu suất cao các giao dịch OLTP
• Để đảm bảo dữ liệu phân tích thời gian thực
Trang 9NỀN TẢNG
PH
Ầ N
2
Trang 10BIG DATA
16C
12005
• Trong thập kỉ qua, trong hầu hết mọi lĩnh vực trong nền
kinh tế đã chuyển định hướng theo dữ liệu.
• Sự bùng nổ của dữ liệu đã làm tăng nhu cầu sử dụng các
hệ thống lưu trữ dữ liệu.
Trang 11BigData chứa nhiều thông tin quý giá
Chính vì thế, những dữ liệu này phải được thu thập, tổ chức, lưu trữ, tìm kiếm, chia sẻ theo một cách khác so với bình thường
Trang 12MÔ HÌNH GIAO DỊCH CƠ SỞ DỮ LIỆU
Tính nguyên tố: một giao dịch có nhiều thao
tác khác biệt thì toàn bộ được thực hiện hoặc
không một thao tác nào thực hiện
Tính nhất quán: một giao dịch sẽ tạo ra một trạng thái mới khi hợp lệ dữ liệu hoặc chuyển toàn bộ về trạng thái trước khi giao dịch
Tính đọc lập: một giao dịch đang thực thi và chưa được xác nhận phải đảm bảo tách biệt khỏi giao dịch khác
Tính bền vững: dữ liệu được lưu trữ cho cả trường hợp lỗi hệ thống vẫn đảm bảo trạng thái chuẩn xác
Add Image
Add Image
Add ImageAdd Image
Trang 13• Strong Consistency: tính nhất quán mạnh mẽ
• High Availability: tính sẵn sàng cao
• Partition Tolerance: tính hoạt động liên tục
Các khía cạnh khác nhau trong hệ thống phân tán
Trang 1412005
Thuật ngữ BASE [Brewer:2000]
• Basically Available: về cơ bản đảm bảo được tính sẳn
sàng
• Soft-state: trạng thái của hệ thống có thể thay đổi theo
thời gian
• Eventually consistent: hệ thống sẽ trở nên nhất quán
theo thời gian
Trang 15NEWSQL DATABASES
PH
Ầ N
3
Trang 16ĐỊNH NGHĨA NEWSQL
– 16
C12
005
MATT ASSLET – 451 GROUP (APRIL 4th, 2011)
Các hệ thống cung cấp khả năng mở rộng và tính linh hoạt của NoSQL trong
khi vẫn giữ được hỗ trợ cho các truy vấn SQL và ACID hoặc để cải thiện hiệu
suất cho khối lượng công việc thích hợp
Trang 17MICHAEL STONEBRAKER – BLOG@CACM (JUNE 16th, 2011)
Một định nghĩa hẹp hơn cho việc triển khai hệ thống của NewSQL:
• Sử dụng lock-free kiểm soát truy cập đồng thời của lược đồ
• Sử dụng shared-nothing kiến trúc phân tán
• Hỗ trợ truy vấn SQL
• Hỗ trợ ACID cho các giao dịch
• Hiệu năng cao cho mỗi node
• Khả năng mở rộng
Trang 18NewSQL là một hệ thống quản lý cơ sở dữ liệu quan hệ hiện đại
nhằm cung cấp hiệu năng khả thi tương tự cho các hệ thống
NoSQL để xử lý giao dịch trực tuyến (OLTP) trong khi vẫn đảm
bảo duy trì ACID của một hệ thống cơ sở dữ liệu truyền thống.
Trang 20PHÂN LOẠI
C12
005
New Architecture databases
NouDB, Clustrix, VoltDB, Drizzle, MenSQL
New MySQL storage engines
InnoDB, Akiban, TokuDB (commercial), InfiniDB, Xeround, GenieDB
Các hệ thống này được thiết kế mới để đạt được khả năng mở rộng và hiệu năng hoạt động của Share Nothing của các nodes.
Công cụ lưu trữ được tối ưu hóa cao cho SQL với giao diện lập trình tương tự như SQL.
Hệ thống này tự động chia CSDL trên nhiều nodes
Transparent clustering/ sharding
dbShards (commercial), ScaleBase (commercial), ScalArc, Schooner MySQL
Trang 21NEW ARCHITECTURE DATABASES
Cung cấp kiểm soát truy xuất đồng thời.
Quản lý kiểm soát truy xuất đồng thời trong cơ sở dữ liệu truyền thống:
2PL (2 phase locking)
MVCC (Milti Version Concurrency Control)
Basic Timestamp Concurrency Control
Optimistic Concurrency Control
T/O with Partion-Level Locking
Cung cấp kiểm soát truy xuất đồng thời.
Quản lý kiểm soát truy xuất đồng thời trong cơ sở dữ liệu truyền thống:
2PL (2 phase locking)
MVCC (Milti Version Concurrency Control)
Basic Timestamp Concurrency Control
Optimistic Concurrency Control
T/O with Partion-Level Locking
Trang 22NEW MYSQL STORAGE ENGINES
16C
12005
Cung cấp lưu trữ tối ưu hóa cho SQL.
Sử dụng MySQL Cluster
Trong node riêng biệt phân thành 3 loại như sau:
Data node: lưu trữ data;
Management node: cấu hình và giám sát các cụm;
Application node or SQL node: kết nối tất cả các node dữ liệu thực hiện lưu trữ và
phục hồi dữ liệu
Tính nhất quán sẽ được kiểm soát bởi application node
Cung cấp lưu trữ tối ưu hóa cho SQL.
Sử dụng MySQL Cluster
Trong node riêng biệt phân thành 3 loại như sau:
Data node: lưu trữ data;
Management node: cấu hình và giám sát các cụm;
Application node or SQL node: kết nối tất cả các node dữ liệu thực hiện lưu trữ và
phục hồi dữ liệu
Tính nhất quán sẽ được kiểm soát bởi application node
Trang 23TRANSPARENT CLUSTERING / SHARDING
Sử dụng middleware sharding
Tất cả các node có thể kết nối với middleware
Middleware sẽ kiểm soát tất cả các quá trình để đảm bảo tính nhất quán
Sử dụng middleware sharding
Tất cả các node có thể kết nối với middleware
Middleware sẽ kiểm soát tất cả các quá trình để đảm bảo tính nhất quán
Trang 24005
o SQL là cơ chế chính cho tương tác các ứng dụng
o Đảm bảo các giao dịch được thực hiện một cách đáng tin cậy
o Cơ chế kiểm soát đồng thời không khóa để đọc theo thời gian thực sẽ không xung đột với ghi
o Cung cấp một kiến trúc hiệu suất cao hơn cho mỗi nút so với các giải pháp RDBMS
Trang 25Tính năng Traditional RBDMS NoSQL NewSQL
Tính phụ thuộc vào
store, document store Cả hai
Lưu trữ Trên đĩa và bộ nhớ
cache
Trên đĩa và bộ nhớcache
Trên đĩa và
bộ nhớ cache
Trang 27 NewSQL là một xu hướng cơ sở dữ liệu tương lai
NewSQL tuân thủ ACID, dựa trên SQL, khả năng mở rộng, phân phối, sẵn có cao của hệ thống RDBMS
Cơ sở dữ liệu NewSQL đang trở nên đòi hỏi nhiều hơn do sự gia tăng của các ngành công nghiệp theo định hướng dữ liệu VD: IoT
RDBMS
NoSQLNewSQL
Trang 28CẢM ƠN CÔ VÀ CÁC BẠN ĐÃ LẮNG NGHE
Any Questions?