Bài 12. Hệ quản trị cơ sở dữ liệu và hệ cơ sở dữ liệu
HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU VÀ HỆ CƠ SỞ DỮ LIỆU
SAU BÀI HỌC NÀY EM SẼ:
Một CSDL lưu dữ liệu trên hệ thống máy tính dưới dạng các tệp có cấu trúc, được thiết kế để nhiều người dùng có thể cùng khai thác dữ liệu trong CSDL đó. Tuy nhiên, không phải tất cả người dùng đều biết về cấu trúc các tệp lưu dữ liệu và tự viết chương trình khai thác dữ liệu. Theo em, có thể giải quyết vấn đề này như thế nào?
1. KHÁI NIỆM HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU
Hoạt động 1
Để tạo ra, lưu trữ và sửa đổi một văn bản trên máy tính, chúng ta cần một phần mềm soạn thảo văn bản. Để tạo ra và cập nhật một bảng tính điện tử, chúng ta cần một phần mềm bảng tính.
Theo em, một phần mềm hỗ trợ làm việc với các CSDL cần thực hiện được những yêu cầu nào dưới đây?
Để hỗ trợ làm việc với các CSDL, người ta đã xây dựng những bộ phần mềm chuyên dụng gọi là hệ quản trị cơ sở dữ liệu (Database management systems, sau đây sẽ gọi tắt là hệ QTCSDL) với các nhóm chức năng sau:
a) Nhóm chức năng định nghĩa dữ liệu
Với các chức năng này, người dùng có thể:
b) Nhóm chức năng cập nhật và truy xuất dữ liệu hay là nhóm chức năng thao tác dữ liệu với các chức năng sau:
c) Nhóm chức năng bảo mật, an toàn CSDL
Điều quan trọng là các chức năng nói trên của hệ QTCSDL được xây dựng một cách tổng quát, theo mô hình CSDL không phụ thuộc các CSDL và ứng dụng cụ thể.
Ngoài ba nhóm chức năng chính nêu trên, các hệ QTCSDL còn cung cấp giao diện lập trình ứng dụng (Application Programing Interface - API) dưới dạng thư viện hàm riêng cho từng ngôn ngữ lập trình. Nhờ có API, những người phát triển ứng dụng CSDL có thể gửi truy vấn đến CSDL từ phần mềm mà họ phát triển để giải quyết các yêu cầu công việc cụ thể.
Những hệ QTCSDL được dùng phổ biến hiện nay là Oracle, MySQL, SQL Server, DB2, PostGreSQL, SQLlite,... Cũng có thể nhắc đến Microsoft Access, tuy nhiên do có nhiều hạn chế về hiệu suất, hệ QTCSDL này không được sử dụng cho các ứng dụng phức tạp, đặc biệt với các ứng dụng trực tuyến đang trở nên phổ biến.
2. HỆ CƠ SỞ DỮ LIỆU
Hoạt động 2. Thảo luận về tra cứu trực tuyến điểm thi
Khi lên mạng để tra cứu điểm thi vào lớp 10, thông thường trên màn hình chỉ yêu cầu nhập vài dữ liệu tối thiểu. Ví dụ, sau khi nhập số báo danh, gần như ngay lập tức em nhận được đầy đủ thông tin họ tên, trường lớp, điểm thi cùng kết quả xét tuyển. Vậy, ngoài CSDL điểm thi, hệ thống tra cứu trực tuyến cần có những gì để có thể cung cấp cho em thông tin như vậy?
Câu trả lời dễ suy đoán là đã có một phần mềm tổ chức giao tiếp với người dùng (tra cứu điểm thi) làm cầu nối giữa người dùng với CSDL điểm thi.
Vì mục đích hỗ trợ nhiều người dùng, các hệ QTCSDL nhiều người dùng thường được xây dựng theo mô hình hai thành phần, có thể được cài đặt trên cùng một máy tính hay được cài đặt trên các máy tính khác nhau. Một thành phần có nhiệm vụ chính là thực hiện các nhiệm vụ tính toán, xử lí dữ liệu (được gọi là phần "chủ"), thành phần còn lại (được gọi là phần mềm "khách") có nhiệm vụ tổ chức giao diện tương tác với người dùng, kết nối với phần "chủ", gửi các yêu cầu tính toán, xử lí dữ liệu đến phần "chủ" và nhận lại, hiển thị kết quả tính toán, xử lí dữ liệu. Hai thành phần này luôn được cung cấp trong một gói cài đặt hệ QTCSDL và thành phần chủ thường được gọi luôn là hệ QTCSDL.


Các hệ QTCSDL cũng cung cấp công cụ (giao diện lập trình ứng dụng) để người dùng có thể tự viết phần mềm khách chuyên biệt theo nhu cầu. Phần mềm khách chuyên biệt như thế được gọi là phần mềm ứng dụng CSDL.
Nói một cách khái quát thì phần mềm ứng dụng CSDL là phần mềm được xây dựng tương tác với hệ QTCSDL nhằm mục đích hỗ trợ người dùng khai thác thông tin từ CSDL một cách thuận tiện theo các yêu cầu xác định. Có thể có nhiều phần mềm ứng dụng CSDL được xây dựng với các mục tiêu, yêu cầu khác nhau cùng truy xuất, khai thác thông tin từ một CSDL. Khi lên mạng tra cứu điểm thi vào lớp 10, em đã tương tác với một phần mềm ứng dụng CSDL tra cứu điểm thi được thiết kế với giao diện đơn giản, dễ dàng nhất cho người dùng. Sau khi tiếp nhận thông tin (ví dụ số báo danh), nó sẽ kết nối với hệ QTCSDL quản lí điểm thi, yêu cầu lấy ra những thông tin cần thiết (họ tên, trường lớp, điểm tất cả các môn thi cùng kết quả xét tuyển) và hiển thị kết quả nhận được cho em. Ngoài phần mềm ứng dụng CSDL tra cứu điểm thi, có thể còn có nhiều phần mềm như phần mềm xét tuyển, phần mềm thống kê đánh giá kết quả toàn bộ kì thi,...
Các ứng dụng mua bán trực tuyến, đặt xe công nghệ, thanh toán điện tử,... mà các em thường gặp trong cuộc sống đều là các phần mềm ứng dụng CSDL của một hệ thống CSDL cụ thể.

Hệ QTCSDL và hệ CSDL khác nhau như thế nào?
3. HỆ CƠ SỞ DỮ LIỆU TẬP TRUNG VÀ PHÂN TÁN
a) Hệ CSDL tập trung
Hệ CSDL mà CSDL được lưu trữ tập trung trên một máy tính được gọi là hệ cơ sở dữ liệu tập trung.
Hệ CSDL tập trung bao gồm cả những CSDL một người dùng trên một máy (như các CSDL của Microsoft Access); người dùng vừa là người thiết kế, tạo lập và bảo trì CSDL, vừa là người viết phần mềm ứng dụng CSDL, vừa là người dùng đầu cuối hệ thống, khai thác thông tin theo những mục tiêu đã được đặt ra.

b) Hệ CSDL phân tán
Khi một tổ chức có nhiều đơn vị phân tán về mặt địa lí, họ có thể chọn giải pháp tổ chức hệ CSDL phân tán để giải quyết các bài toán quản lí liên quan. Khác với hệ QTCSDL tập trung, quản lí dữ liệu tập trung trong một CSDL đặt trên một máy tính, hệ CSDL phân tán cho phép người dùng truy cập dữ liệu được lưu trữ ở nhiều máy tính khác nhau của mạng máy tính. Như vậy, để thiết lập một hệ CSDL phân tán, trước tiên cần xây dựng một CSDL phân tán tương ứng.
Ví dụ: Một doanh nghiệp có trụ sở chính tại Hà Nội và các chi nhánh tại Đà Nẵng, TP. Hồ Chí Minh, Cần Thơ. Mỗi máy tính tại trụ sở Hà Nội, Đà Nẵng, TP. Hồ Chí Minh, Cần Thơ hình thành một trạm; các trạm này được kết nối với nhau bởi một mạng máy tính.
Cơ sở dữ liệu phân tán là tập hợp dữ liệu được phân tán trên các trạm khác nhau của một mạng máy tính. Dữ liệu được lưu trữ tại mỗi trạm hình thành một CSDL cục bộ của trạm này. Mỗi trạm phải thực hiện các ứng dụng cục bộ. Ứng dụng cục bộ là ứng dụng chạy tại một trạm và chỉ sử dụng dữ liệu cục bộ của trạm này để cho ra kết quả cuối cùng. Mỗi trạm phải tham gia thực hiện ứng dụng toàn cục, còn được gọi là ứng dụng phân tán. Ứng dụng toàn cục là ứng dụng chạy tại một trạm và sử dụng dữ liệu của ít nhất hai trạm để cho ra kết quả cuối cùng.
Các chương trình ứng dụng chạy tại mỗi trạm, các hệ quản trị CSDL tại mỗi trạm và các CSDL của mỗi trạm hình thành hệ CSDL phân tán.

So với hệ CSDL tập trung, thiết kế và triển khai hệ CSDL phân tán phức tạp, khó khăn hơn trong đảm bảo tính nhất quán và bảo mật dữ liệu, chi phí duy trì cao hơn. Tuy nhiên, hệ CSDL phân tán có ưu điểm:
Những hệ CSDL lớn dùng trong những tổ chức lớn, có nhiều người truy xuất trên phạm vi địa lí rộng lớn thường được tổ chức ở dạng hệ cơ sở dữ liệu phân tán để tối ưu hoá được tốc độ, giảm tải đường truyền khi truy xuất, cập nhật dữ liệu. Ví dụ điển hình là các CSDL của Facebook, Google, Amazon,... được cài đặt trên nhiều máy chủ ở nhiều quốc gia và hỗ trợ khai thác thông tin theo mô hình khách chủ trên nền web.
Lưu ý: Cần phân biệt hệ CSDL phân tán với hệ CSDL tập trung nhưng xử lí dữ liệu phân tán. Một ví dụ cụ thể của mô hình CSDL tập trung nhưng xử lí dữ liệu phân tán là mô hình máy chủ tệp. Toàn bộ CSDL và phần mềm ứng dụng CSDL được đặt trên máy chủ tệp. Các máy tính tham gia vào hệ thống được gọi là máy trạm. Mỗi khi có yêu cầu thao tác từ máy trạm, toàn bộ CSDL và phần mềm được chuyển qua đường truyền của mạng về bộ nhớ RAM của máy trạm. Công việc xử lí dữ liệu được thực hiện trên máy trạm, khi kết thúc toàn bộ dữ liệu lại được lưu về máy chủ tệp.
Hệ CSDL tập trung và hệ CSDL phân tán khác nhau như thế nào?
LUYỆN TẬP
VẬN DỤNG
Tài liệu bài học
Bản scan SGK xem ngay trên web · slide và phiếu mở từ Google Drive (cần đăng nhập Google để tải).
Xem nguyên văn trang sách của bài Hệ quản trị cơ sở dữ liệu và hệ cơ sở dữ liệu ngay dưới đây.
Xem ngay Slide bài giảngBài trình chiếu đã dạy trên lớp (PowerPoint).
Mở Drive Phiếu học tậpPhiếu ghi bài trên lớp của bài Hệ quản trị cơ sở dữ liệu và hệ cơ sở dữ liệu.
Mở Drive Phiếu thực hànhBài tập thực hành kèm theo bài Hệ quản trị cơ sở dữ liệu và hệ cơ sở dữ liệu.
Mở Drive Trắc nghiệm12 câu ôn tập bài Hệ quản trị cơ sở dữ liệu và hệ cơ sở dữ liệu — bấm Kiểm tra để xem đúng/sai ngay.
Làm ngayNội dung SGK · bản scan
Bài Hệ quản trị cơ sở dữ liệu và hệ cơ sở dữ liệu — trang 58–63 của sách giáo khoa.





