1. So sánh cơ sở dữ liệu SQL và NoSQL, phát biểu nào sau đây thường đúng về cơ sở dữ liệu NoSQL?
A. Cung cấp tính toàn vẹn dữ liệu ACID mạnh mẽ hơn SQL.
B. Thường có lược đồ (schema) linh hoạt hơn so với SQL.
C. Tối ưu hóa cho các giao dịch phức tạp và quan hệ phức tạp giữa dữ liệu.
D. Được thiết kế tốt nhất cho dữ liệu có cấu trúc cố định và quan hệ rõ ràng.
2. Trong quản trị cơ sở dữ liệu, thuật ngữ 'data warehouse' (kho dữ liệu) dùng để chỉ điều gì?
A. Một loại cơ sở dữ liệu được tối ưu hóa cho các giao dịch trực tuyến (OLTP).
B. Một hệ thống lưu trữ dữ liệu lịch sử, tích hợp từ nhiều nguồn, phục vụ cho mục đích phân tích và báo cáo (OLAP).
C. Một cơ sở dữ liệu nhỏ gọn được sử dụng cho các ứng dụng di động.
D. Một hệ thống quản lý siêu dữ liệu.
3. Thuật ngữ 'ACID properties' dùng để mô tả các đặc tính quan trọng của giao dịch (transaction) trong cơ sở dữ liệu. 'I' trong ACID đại diện cho thuộc tính nào?
A. Atomicity (Tính nguyên tử).
B. Consistency (Tính nhất quán).
C. Isolation (Tính độc lập).
D. Durability (Tính bền vững).
4. Khi thiết kế cơ sở dữ liệu, 'mối quan hệ một-nhiều' (one-to-many relationship) giữa hai bảng có nghĩa là gì?
A. Một bản ghi trong bảng thứ nhất có thể liên quan đến nhiều bản ghi trong bảng thứ hai, và ngược lại.
B. Một bản ghi trong bảng thứ nhất chỉ có thể liên quan đến tối đa một bản ghi trong bảng thứ hai.
C. Một bản ghi trong bảng thứ nhất có thể liên quan đến nhiều bản ghi trong bảng thứ hai, nhưng một bản ghi trong bảng thứ hai chỉ có thể liên quan đến tối đa một bản ghi trong bảng thứ nhất.
D. Các bản ghi trong hai bảng không có mối quan hệ trực tiếp.
5. Khái niệm ' khóa ngoại' (foreign key) được sử dụng để làm gì trong mô hình cơ sở dữ liệu quan hệ?
A. Xác định duy nhất mỗi bản ghi trong một bảng.
B. Liên kết một bảng với một bảng khác, thiết lập mối quan hệ giữa chúng.
C. Mã hóa dữ liệu trong một cột cụ thể.
D. Tăng tốc độ truy xuất dữ liệu trong một bảng.
6. Trong ngữ cảnh cơ sở dữ liệu, 'transaction' (giao dịch) đề cập đến điều gì?
A. Một bản sao lưu dữ liệu.
B. Một đơn vị công việc logic duy nhất, có thể bao gồm nhiều thao tác cơ sở dữ liệu.
C. Một loại chỉ mục để tăng tốc độ truy vấn.
D. Một phương pháp mã hóa dữ liệu để bảo mật.
7. Loại ràng buộc dữ liệu nào đảm bảo rằng một cột không được chứa giá trị NULL?
A. UNIQUE constraint
B. PRIMARY KEY constraint
C. NOT NULL constraint
D. FOREIGN KEY constraint
8. Lỗi 'deadlock' (bế tắc) trong cơ sở dữ liệu xảy ra khi nào?
A. Khi có quá nhiều người dùng truy cập cơ sở dữ liệu cùng một lúc.
B. Khi một giao dịch cố gắng truy cập vào dữ liệu mà nó không có quyền.
C. Khi hai hoặc nhiều giao dịch chờ đợi lẫn nhau để giải phóng tài nguyên mà chúng cần, dẫn đến tình trạng không giao dịch nào có thể tiếp tục.
D. Khi dung lượng lưu trữ cơ sở dữ liệu đã đầy.
9. Sao lưu cơ sở dữ liệu (database backup) là một hoạt động quan trọng trong quản trị cơ sở dữ liệu. Mục đích chính của việc sao lưu là gì?
A. Tăng tốc độ truy vấn dữ liệu.
B. Giảm dung lượng lưu trữ cơ sở dữ liệu.
C. Phục hồi dữ liệu trong trường hợp xảy ra sự cố hoặc mất mát dữ liệu.
D. Cải thiện bảo mật cho cơ sở dữ liệu.
10. Trong quản lý giao dịch cơ sở dữ liệu, 'two-phase locking' (khóa hai pha) là một giao thức được sử dụng để đảm bảo điều gì?
A. Tối ưu hóa tốc độ truy vấn.
B. Đảm bảo tính toàn vẹn tham chiếu.
C. Đảm bảo tính tuần tự hóa (serializability) của các giao dịch đồng thời.
D. Giảm thiểu dung lượng lưu trữ dữ liệu giao dịch.
11. Loại cơ sở dữ liệu nào phù hợp nhất cho việc lưu trữ và truy vấn dữ liệu có cấu trúc phức tạp, mối quan hệ linh hoạt, như mạng xã hội hoặc đồ thị tri thức?
A. Cơ sở dữ liệu quan hệ (Relational Database).
B. Cơ sở dữ liệu hướng đối tượng (Object-Oriented Database).
C. Cơ sở dữ liệu NoSQL dạng đồ thị (Graph Database).
D. Cơ sở dữ liệu hướng cột (Columnar Database).
12. Phương pháp 'database sharding' (phân mảnh cơ sở dữ liệu) được sử dụng để giải quyết vấn đề gì?
A. Tăng cường bảo mật cơ sở dữ liệu.
B. Cải thiện khả năng chịu lỗi của cơ sở dữ liệu.
C. Mở rộng khả năng lưu trữ và xử lý dữ liệu bằng cách phân chia dữ liệu trên nhiều máy chủ.
D. Giảm chi phí lưu trữ cơ sở dữ liệu.
13. Trong SQL, mệnh đề 'WHERE' được sử dụng để làm gì?
A. Sắp xếp kết quả truy vấn.
B. Lọc các bản ghi dựa trên một điều kiện cụ thể.
C. Gộp nhóm các bản ghi có giá trị giống nhau ở một số cột.
D. Chọn các cột cần hiển thị trong kết quả truy vấn.
14. Trong ngữ cảnh cơ sở dữ liệu phân tán (distributed database), 'data replication' (sao chép dữ liệu) được sử dụng để làm gì?
A. Tăng tốc độ truy vấn dữ liệu.
B. Cải thiện khả năng chịu lỗi và tính sẵn sàng của hệ thống bằng cách tạo ra nhiều bản sao dữ liệu trên các node khác nhau.
C. Giảm dung lượng lưu trữ dữ liệu.
D. Mã hóa dữ liệu để bảo mật.
15. Trong SQL, sự khác biệt chính giữa câu lệnh 'DELETE' và 'TRUNCATE TABLE' là gì?
A. 'DELETE' xóa toàn bộ bảng, còn 'TRUNCATE TABLE' chỉ xóa dữ liệu bên trong bảng.
B. 'DELETE' là DDL command, còn 'TRUNCATE TABLE' là DML command.
C. 'TRUNCATE TABLE' nhanh hơn 'DELETE' và không ghi log giao dịch cho mỗi hàng bị xóa.
D. 'DELETE' tự động commit giao dịch, còn 'TRUNCATE TABLE' cần commit thủ công.
16. Công cụ 'ER diagram' (biểu đồ thực thể-kết hợp) được sử dụng trong giai đoạn nào của quá trình thiết kế cơ sở dữ liệu?
A. Giai đoạn triển khai cơ sở dữ liệu.
B. Giai đoạn bảo trì cơ sở dữ liệu.
C. Giai đoạn thiết kế cơ sở dữ liệu ở mức logic và mức khái niệm.
D. Giai đoạn tối ưu hóa hiệu suất cơ sở dữ liệu.
17. Trong SQL, mệnh đề 'GROUP BY' thường được sử dụng kết hợp với hàm tổng hợp (aggregate function) như COUNT, SUM, AVG để làm gì?
A. Sắp xếp dữ liệu theo nhóm.
B. Lọc dữ liệu trong các nhóm.
C. Tính toán các giá trị tổng hợp cho mỗi nhóm bản ghi.
D. Kết hợp dữ liệu từ nhiều bảng dựa trên nhóm.
18. Ưu điểm chính của cơ sở dữ liệu trên đám mây (cloud database) so với cơ sở dữ liệu truyền thống (on-premise) là gì?
A. Bảo mật dữ liệu cao hơn.
B. Chi phí ban đầu thấp hơn và khả năng mở rộng linh hoạt hơn.
C. Hiệu suất truy vấn nhanh hơn.
D. Khả năng tùy biến cao hơn.
19. Chuẩn hóa cơ sở dữ liệu (database normalization) nhằm mục đích chính là gì?
A. Tăng tốc độ truy vấn dữ liệu.
B. Giảm thiểu sự dư thừa dữ liệu và cải thiện tính toàn vẹn dữ liệu.
C. Tăng cường bảo mật cho cơ sở dữ liệu.
D. Đơn giản hóa quá trình sao lưu và phục hồi dữ liệu.
20. Kỹ thuật 'indexing' (tạo chỉ mục) trong cơ sở dữ liệu được sử dụng để làm gì?
A. Mã hóa dữ liệu để bảo mật.
B. Tăng tốc độ truy vấn dữ liệu bằng cách tạo ra một cấu trúc dữ liệu cho phép tìm kiếm nhanh hơn.
C. Nén dữ liệu để tiết kiệm không gian lưu trữ.
D. Sao lưu dữ liệu để phòng ngừa mất mát dữ liệu.
21. Câu lệnh SQL nào sau đây được sử dụng để truy xuất dữ liệu từ một bảng?
A. UPDATE
B. DELETE
C. SELECT
D. INSERT
22. Trong cơ sở dữ liệu hướng đối tượng, khái niệm nào sau đây tương ứng với một bảng trong cơ sở dữ liệu quan hệ?
A. Object (Đối tượng).
B. Class (Lớp).
C. Attribute (Thuộc tính).
D. Method (Phương thức).
23. Trong mô hình dữ liệu quan hệ, khái niệm nào sau đây dùng để mô tả cấu trúc của dữ liệu, bao gồm tên thuộc tính, kiểu dữ liệu và ràng buộc?
A. Instance
B. Schema
C. Tuple
D. Domain
24. Khi nào thì việc phi chuẩn hóa (denormalization) cơ sở dữ liệu có thể là một lựa chọn thiết kế hợp lý?
A. Khi ưu tiên hàng đầu là giảm thiểu sự dư thừa dữ liệu.
B. Khi hiệu suất truy vấn đọc dữ liệu là yếu tố quan trọng hơn so với việc duy trì chuẩn hóa.
C. Khi cơ sở dữ liệu chủ yếu được sử dụng cho các giao dịch ghi dữ liệu (write-heavy).
D. Khi cần đảm bảo tính toàn vẹn tham chiếu nghiêm ngặt giữa các bảng.
25. Trong ngữ cảnh bảo mật cơ sở dữ liệu, 'SQL injection' là loại tấn công nào?
A. Tấn công từ chối dịch vụ (Denial of Service).
B. Tấn công bằng cách chèn mã SQL độc hại vào các truy vấn cơ sở dữ liệu.
C. Tấn công giả mạo danh tính (Phishing).
D. Tấn công bằng cách khai thác lỗ hổng tràn bộ đệm (Buffer Overflow).
26. Khi thiết kế một cơ sở dữ liệu cho một ứng dụng thương mại điện tử, yếu tố nào sau đây cần được ưu tiên hàng đầu về mặt hiệu suất?
A. Giảm thiểu dung lượng lưu trữ dữ liệu.
B. Đảm bảo tính toàn vẹn dữ liệu tuyệt đối.
C. Tối ưu hóa tốc độ truy vấn đọc dữ liệu sản phẩm, giỏ hàng và đơn hàng.
D. Đơn giản hóa lược đồ cơ sở dữ liệu.
27. Trong quản trị cơ sở dữ liệu, 'data mining' (khai phá dữ liệu) là quá trình làm gì?
A. Bảo vệ dữ liệu khỏi truy cập trái phép.
B. Tối ưu hóa hiệu suất cơ sở dữ liệu.
C. Phân tích dữ liệu lớn để khám phá ra các mẫu, xu hướng hoặc thông tin hữu ích ẩn chứa trong dữ liệu.
D. Sao lưu và phục hồi dữ liệu.
28. Ưu điểm chính của việc sử dụng hệ quản trị cơ sở dữ liệu (DBMS) là gì so với việc quản lý dữ liệu bằng file hệ thống truyền thống?
A. Tốc độ truy cập dữ liệu nhanh hơn.
B. Khả năng quản lý dữ liệu tập trung, nhất quán và kiểm soát truy cập tốt hơn.
C. Chi phí lưu trữ dữ liệu thấp hơn.
D. Dễ dàng chia sẻ dữ liệu giữa các ứng dụng khác nhau.
29. Trong SQL, câu lệnh 'JOIN' được sử dụng để làm gì?
A. Lọc dữ liệu từ một bảng.
B. Kết hợp dữ liệu từ hai hoặc nhiều bảng dựa trên một cột chung.
C. Sắp xếp dữ liệu trong một bảng.
D. Thêm dữ liệu vào một bảng.
30. Công nghệ 'in-memory database' (cơ sở dữ liệu trong bộ nhớ) tập trung vào việc cải thiện hiệu suất cơ sở dữ liệu bằng cách nào?
A. Sử dụng ổ cứng thể rắn (SSD) thay vì ổ cứng cơ học (HDD).
B. Lưu trữ toàn bộ dữ liệu trong bộ nhớ chính (RAM) thay vì trên ổ đĩa.
C. Sử dụng các thuật toán nén dữ liệu tiên tiến.
D. Tối ưu hóa các truy vấn SQL.