You are on page 1of 9

DATABASE – CÂU HỎI CHƯƠNG 1

Câu 1: Nêu tầm quan trọng của cơ sở dữ liệu?


 Dư thừa dữ liệu là gì?
-Dư thừa dữ liệu là điều kiện xảy ra khi cùng một phần dữ liệu tồn tại ở nhiều nơi
trong cơ sở dữ liệu trong khi sự không nhất quán dữ liệu là điều kiện xảy ra khi
cùng một dữ liệu tồn tại ở các định dạng khác nhau trong nhiều bảng.
 Không nhất quán dữ liệu là gì?
- Tính không thống nhất và dư thừa này sẽ làm tăng chi phí truy xuất và lưu trữ,
hơn nũa, nó sẽ dẫn đến tính không nhất quán của dữ liệu: các bản sao của cùng một
dữ liệu có thể không nhất quán .
 Những khó khăn nào trong việc truy xuất dữ liệu?
- Môi trường của hệ thống xử lý file thông thường không cung cấp các công cụ cho
phép truy xuất thông tin một cách hiệu quả và thuận lợi
 Sự cô lập dữ liệu là gì?
- Các giá trị dữ liệu được lưu trữ trong cơ sở dữ liệu phải thoả mãn một số các ràng
buộc về tính nhất quán của dữ liệu ( ràng buộc nhất quán / consistency contraints ).
Trong hệ thống xử lý file thông thường, rất khó khăn trong việc thay đổi các
chương trình để thoả mãn các yêu cầu thay đổi ràng buộc. Vấn đề trở nên khó khăn
hơn khi các ràng buộc liên quan đến các hạng mục dữ liệu nằm trong các file khác
nhau.mát trong khi lưu trữ hay truyền tải. Nói cách khác tính toàn vẹn là tính
không bị hiệu chỉnh của dữ liệu.
 Tính bất thường trong truy xuất cạnh tranh là gì?
-Một hệ thống cho phép nhiều người sử dụng cập nhật dữ liệu đồng thời, có
thể dẫn đến kết quả là dữ liệu không nhất quán. Điều này đòi hỏi một sự giám sát.
Hệ thống xử lý file thông thường không cung cấp chức năng này.
 Vấn đề an toàn là gì?
Một người sử dụng hệ cơ sở dữ liệu không cần thiết và cũng không có quyền truy
xuất tất cả các dữ liệu. Vấn đề này đòi hỏi hệ thống phải đảm bảo được tính phân
quyền, chống truy xuất trái phép … Các bất lợi nêu trên đã gợi mở sự phát triển
các DBMS.
Phần sau của giáo trình sẽ đề cập đến các quan niệm và các thuật toán được sử
dụng để phát triển một hệ cơ sở dữ liệu nhằm giải quyết các vấn đề nêu trên .
 Nêu lịch sử phát triển của cơ sở dữ liệu?
- Lịch sử của cơ sở dữ liệu được xem như bắt đầu vào những năm 60 của thế kỷ
trước, khi máy tính bắt đầu được sử dụng tương đối rộng rãi. CSDL có quy mô lớn
đầu tiên được công ty IBM thực hiện cho Cục Quản trị Hàng không và Không gian
Quốc gia (National Aeronautics and Space Administration hay NASA) của Mỹ để
hỗ trợ cho việc quản lý dự án Apollo dùng để thám hiểm mặt trăng. Sau đó hệ cơ
sở dữ liệu này được thương mại hóa với tên IMS (Information Management
System).
- Năm 1970, Edgar Codd, một nhà khoa học làm việc cho IBM, đề xuất một số
khái niệm về hệ cơ sở dữ liệu quan hệ (relational) đánh dấu một bước chuyển biến
quan trọng trong lĩnh vực này. Tuy nhiên dường như IBM không mặn mà lắm với
những ý tưởng của Codd, mặc dù họ cũng tạo ra một dự án nhỏ, System R, để
nghiên cứu các đề xuất của Codd. Tuy vậy họ cũng tạo ra được ngôn ngữ SEQUEL
(viết tắt của Structured English Query Language), tiền thân của SQL mà hiện
chúng ta thường sử dụng.
- Năm 1979, Relational Software Inc (RSI), sau đổi tên là Oracle, là công ty đầu
tiên sử dụng mô hình quan hệ để thương mại hóa và dần dần chiếm lĩnh thị trường
quản lý dữ liệu. Cũng trong thời gian này IBM cũng bắt đầu thương mại hóa SQL.
Chẳng bao lâu SQL trở thành tiêu chuẩn để sử dụng với CSDL quan hệ.
Câu 2: Nêu các khái niệm
 Khái niệm cơ sở dữ liệu?
-Cơ sở dữ liệu (Database) là một tập hợp các dữ liệu có tổ chức, thường được
lưu trữ và truy cập điện tử từ hệ thống máy tính. Khi cơ sở dữ liệu phức tạp
hơn, chúng thường được phát triển bằng cách sử dụng các kỹ thuật thiết kế và
mô hình hóa chính thức.
 Đặc trưng của CSDL?
 Sự hiện hữu: Qui chế kiểm soát hiện có, đang tồn tại.
 Tính hiệu lực: Qui chế kiểm soát đang hoạt động có hiệu lực.
 Tính liên tục: Các qui chế kiểm soát hoạt động liên tục trong kì của các báo
cáo tài chính đã lập.
 Ưu điểm của CSDL?
 Giảm sự trùng lặp thông tin xuống mức tối thiểu nhất. Do đó đảm bảo
thông tin có tính nhất quán và toàn vẹn dữ liệu.
 Đảm bảo dữ liệu có thể được truy xuất theo nhiều cách khác nhau.
 Nhiều người có thể sử dụng chung một cơ sở dữ liệu.
 Vấn đề cần giải quyết?
- Để đạt được các ưu điểm trên, CSDL đặt ra những vấn đề cần giải quyết. Đó là:
 Tính chủ quyền của dữ liệu: Do tính chia sẻ của CSDL nên chủ quyền của
CSDL dễ bị xâm phạm.
 Tính bảo mật và quyền khai thác thông tin của người sử dụng: Do có nhiều
người được phép khai thác CSDL nên cần thiết phải có một cơ chế bảo mật
và phân quyền hạn khai thác CSDL.
 Tranh chấp dữ liệu: Nhiều người được phép cùng truy cập vào CSDL với
những mục đích khác nhau: Xem, thêm, xóa hoặc sửa dữ liệu. Cần phải có
cơ chế ưu tiên truy cập dữ liệu hoặc giải quyết tình trạng xung đột trong quá
trình khai thác cạnh tranh. Cơ chế ưu tiên có thể được thực hiện bằng việc
cấp quyền (hay mức độ) ưu tiên cho từng người khai thác.
 Đảm bảo dữ liệu khi có sự cố: Việc quản lý dữ liệu tập trung có thể làm tăng
nguy cơ mất mát hoặc sai lệnh thông tin khi có sự cố mất điện đột xuất hoặc
đĩa lưu trữ bị hỏng. Một số hệ điều hành mạng có cung cấp dịch vụ sao lưu
ảnh đĩa cứng (cơ chế sử dụng đĩa cứng dự phòng – RAID), tự động kiểm tra
và khắc phục lỗi khi có sự cố. Tuy nhiên, bên cạnh dịch vụ của hệ điều hành,
để đảm bảo an toàn cho CSDL, nhất thiết phải có một cơ chế khôi phục dữ
liệu khi có sự cố xảy ra.
 Các đối tượng sử dụng CSDL?
- Nhóm thứ nhất là những người tương tác thường xuyên với CSDL (actors on the
scene). Phần lớn công việc của nhóm này liên quan đến bản thân cơ sở dữ liệu.
Thuộc nhóm này ta có những đối tượng chính sau:
 Quản trị cơ sở dữ liệu (database administrator hay DBA) có nhiệm vụ cấp
quyền truy cập CSDL cho những người có liên quan và giám sát hoạt động
của những người này, quản lý các phần cứng và phần mềm tương ứng, chịu
trách nhiệm về tình trạng vận hành, về hỏng hóc, về an toàn của hệ CSDL.
 Thiết kế cơ sở dữ liệu (database designer hay DBD) có nhiệm vụ xác định
những dữ liệu nào cần được lưu trữ, cấu trúc của những dữ liệu ấy, phương
pháp thể hiện và lưu trữ các dữ liệu này. Những nhân viên này cũng cần nắm
bắt yêu cầu của những đối tượng khác (chủ yếu thuộc nhóm thứ nhất) để
thiết kế cơ sở dữ liệu đáp ứng được một cách tốt nhất những yêu cầu ấy, thí
dụ tạo ra những khung hiển thị dễ sử dụng, phù hợp, đáp ứng nhanh nhu cầu
của người dùng, tạo ra các chương trình xử lý dữ liệu (tính toán, vẽ biểu đồ).
Vai trò của những người thiết kế dữ liệu đặc biệt quan trọng trong giai đoạn
đầu, khi thiết kế và bắt đầu triển khai. Khi CSDL đã hoạt động ổn định, họ
có thể chuyển sang các bộ phận khác.
 Người dùng cuối (end user) là những người cần tìm kiếm thông tin và cập
nhật thông tin. Đây là đối tượng phục vụ chủ yếu của CSDL. Họ có thể là
một người bên ngoài tổ chức như khách hàng, hay bên trong tổ chức như
nhân viên phòng kế toán cần dữ liệu để lập bảng lương, hay nhân viên kho
cần cập nhật nguyên liệu hay hàng hóa tồn kho. Họ cũng có thể là những
chuyên gia, sử dụng dữ liệu để phân tích tình hình kinh doanh hay năng lực
tài chính chẳng hạn.
Nhóm thứ hai thường được gọi là những nhân vật hậu trường (worker behind
scene), làm việc chủ yếu với HQTCSDL và các chương trình ứng dụng. Nhóm này
gồm có:
 Những người thiết kế và xây dựng các thành phần chính của HQTCSDL như
các mođun để thực hiện các chức năng như truy vấn, tạo từ điển, truy xuất
dữ liệu, thực hiện các giao tiếp với hệ điều hành, với các trình biên dịch của
các ngôn ngữ, xây dựng các chương trình ứng dụng.
 Những người tạo nên các công cụ, các tiện ích bổ sung nhằm mở rộng, hay
nâng cao các tính năng của hệ CSDL. Các công cụ, tiện ích này có thể là
những thành phần bổ sung được cung cấp kèm theo phần mềm, hoặc ở dạng
tùy chọn và được mua và/hoặc cài đặt riêng biệt.
 Những người cung cấp các dịch vụ có liên quan như bảo trì phần cứng, sửa
chữa các hỏng hóc.
 Khái niệm hệ quản trị cơ sở dữ liệu?
- Hệ quản trị cơ sở dữ liệu chính là các chương trình, phần mềm giúip bạn lưu trữ
cơ sơ dữ liệu cần đảm bảo được các tính cấu trúc trong cơ sở dữ liệu, và đặc biệt
hơn thì hệ quản trị cơ sở dữ liệu cung cấp tính năng hỗ trợ quá trình đọc, chỉnh sửa
hay thêm và xoá dữ liệu trên cơ sở dữ liệu một cách dễ dàng nhất.
 Nêu các thành phần
- Bộ xử lý truy vấn và bộ truy xuất dữ liệu
 Ngôn ngữ giao tiếp là gì?

- Ngôn ngữ định nghĩa dữ liệu trong một hệ QTCSDL cho phép ta dễ dàng
khai báo kiểu dữ liệu, các cấu trúc dữ liệu thể hiện thông tin và các ràng buộn
trên dữ liệu. Có thể coi ngôn ngữ định nghĩa dữ liệu là hệ thống các kí hiệu để
mô tả CSDL.

 Từ điển dữ liệu là gì?


- Từ điển dữ liệu (Data Dictionary) là một tập hợp các mô tả về các đối tượng hoặc
mục dữ liệu trong một mô hình dữ liệu vì lợi ích của các lập trình viên và những
người khác cần tham khảo chúng. Thường thì một từ điển dữ liệu là một kho meta
data (Meta Data) tập trung .
 Biện pháp bảo mật là gì?
- Bảo mật cơ sở dữ liệu là những biện pháp, những cách thức khác nhau mà các
doanh nghiệp, tổ chức áp dụng và thực hiện để bảo vệ hệ thống an toàn thông tin
cũng như cơ sở dữ liệu của mình khỏi các mối đe doạ từ những cuộc tấn công an
ninh mạng cả bên ngoài và bên trong cũng như thực thi các giải pháp data loss
prevention nhằm ngăn chặn dữ liệu bị đánh cắp. Các tổ chức phải bảo mật cơ sở dữ
liệu khỏi các cuộc tấn công có chủ ý như các mối đe dọa an ninh mạng, cũng như
các mã nguồn độc hại và những truy cập bất thường và trái phép.
 Cơ chế giải quyết tranh chấp là gì?
- Giải quyết tranh chấp là việc cơ quan, tổ chức có thẩm quyền xem xét và ra quyết
định xử lí các tranh chấp dân sự, hôn nhân và gia đình, kinh doanh, thương mại,
lao động, trên cơ sở xem xét các tài liệu, chứng cứ có trong vụ việc tranh chấp
nhằm bảo vệ quyền và lợi ích hợp pháp của cá nhân, cơ quan, tổ chức.
 Cơ chế sao lưu, phục hồi là gì?
-Sao lưu:
 Full Database Backups : Copy tất cả các file dữ liệu trong một database . Tất
cả những user data và database objects như system tables, indexes, user-
defined tables đều được backup.
 Differential Database Backups : Copy những thay đổi trong tất cả các file dữ
liệu kể từ lần backup gần nhất.
 File or File Group Backups : Copy một data file đơn hay một nhóm file.
 Differential File or File Group Backups : Tương tự như differential database
backup nhưng chỉ copy những thay đổi trong data file đơn hay một file
group.
 Transaction Log Backups : Ghi nhận một cách thứ tự tất cả các giao dịch
(transaction) chứa trong file transaction log kể từ lần transaction log backup
gần nhất. Loại sao lưu này cho phép ta phục hồi dữ liệu trở ngược lại vào
một thời điểm nào đó trong quá khứ mà vẫn đảm bảo tính đồng nhất
(consistent).
-Phục hồi :
 Chế độ Full Recovery: Ðây là chế độ cho phép phục hồi dữ liệu với ít rủi
ro nhất. Nếu một database ở trong chế độ này thì tất cả các hoạt động
không chỉ insert, update, delete mà kể cả insert bằng Bulk Insert, hay bcp
đều được log vào file transaction log. Khi có sự cố thì ta có thể phục hồi
lại dữ liệu ngược trở lại tới một thời điểm trong quá khứ. Khi file dữ liệu
bị hư nếu ta có thể sao lưu được file transaction log thì ta có thể phục hồi
CSDL đến thời điểm transaction gần nhất đã được xác nhận (commited).
 Chế độ Bulk-Logged Recovery: Ở chế độ này các hoạt động mang tính
hàng loạt như Bulk Insert, bcp, Create Index, WriteText, UpdateText chỉ
được log minimum vào File Transaction Log đủ để cho biết là các hoạt
động này có diễn ra mà không log toàn bộ chi tiết như trong chế độ Full
Recovery. Các hoạt động khác như Insert, Update, Delete vẫn được log
đầy đủ để dùng cho việc phục hồi sau này.
 Chế độ Simple Recovery: Ở chế độ này thì File Transaction Log được cắt
xén thường xuyên và không cần sao lưu. Với chế độ này bạn chỉ có thể
phục hồi tới thời điểm backup gần nhất mà không thể phục hồi tới một
thời điểm trong quá khứ.
 Đảm bảo tính độc lập là gì?
- Tính độc lập dữ liệu là tính bất biến của các hệ ứng dụng đối với các thay đổi
trong cấu trúc lưu trữ và chiến lược truy xuất.
Ngôn ngữ giao tiếp giữa người sử dụng và CSDL gồm?
- Ngôn ngữ giao tiếp giữa người dùng và cơ sở dữ liệu bao gồm: Ngôn ngữ mô tả
dữ liệu (Data Definition Language - DLL), Ngôn ngữ thao tác dữ liệu (Data
Manipulation Language - DML), Ngôn ngữ truy vấn dữ liệu (Select Query
Language - SQL), Ngôn ngữ quản lý dữ liệu (Data Control Language.)
 Ngôn ngữ định nghĩa dữ liệu (DDL) là gì?
- DDL là tên viết tắt của Ngôn ngữ Định nghĩa Dữ liệu, liên quan đến các lược đồ
và mô tả cơ sở dữ liệu, về cách dữ liệu sẽ nằm trong cơ sở dữ liệu.
TẠO - để tạo cơ sở dữ liệu và các đối tượng của nó như (bảng, chỉ mục, dạng xem,
thủ tục lưu trữ, hàm và trình kích hoạt)
THAY ĐỔI - thay đổi cấu trúc của cơ sở dữ liệu hiện có
DROP - xóa các đối tượng khỏi cơ sở dữ liệu
TRUNCATE - xóa tất cả các bản ghi khỏi một bảng, bao gồm tất cả các không
gian được phân bổ cho các bản ghi được xóa
COMMENT - thêm ý kiến vào từ điển dữ liệu
RENAME - đổi tên một đối tượng.
 Ngôn ngữ thao tác dữ liệu (DML) là gì?
- DML là tên viết tắt của Ngôn ngữ thao tác dữ liệu liên quan đến thao tác dữ liệu
và bao gồm hầu hết các câu lệnh SQL phổ biến như CHỌN, CHERTN, CẬP
NHẬT, XÓA, v.v. và được sử dụng để lưu trữ, sửa đổi, truy xuất, xóa và cập nhật
dữ liệu trong cơ sở dữ liệu.
CHỌN - lấy dữ liệu từ cơ sở dữ liệu
CHERTN - chèn dữ liệu vào bảng
CẬP NHẬT - cập nhật dữ liệu hiện có trong một bảng
XÓA - Xóa tất cả các bản ghi khỏi bảng cơ sở dữ liệu
MERGE - Hoạt động UPSERT (chèn hoặc cập nhật)
GỌI - gọi chương trình con PL / SQL hoặc Java
KẾ HOẠCH GIẢI THÍCH - giải thích đường dẫn truy cập dữ liệu
BẢNG LOCK - Kiểm soát tương tranh .
 Ngôn ngữ truy vấn có cấu trúc (SQL) là gì?
- SQL được viết tắt từ Structured Query Language, là ngôn ngữ truy vấn có cấu
trúc. Về cơ bản, Ngôn ngữ truy vấn có cấu trúc này được sử dụng để truy xuất dữ
liệu hoặc giao diện khác như tạo, xóa trong cơ sở dữ liệu, lấy các hàng và sửa đổi
các hàng .v.v. với cơ sở dữ liệu quan hệ.
SQL cho phép bạn truy cập và thao tác cơ sở dữ liệu. Nó là ngôn ngữ được dành
riêng cho sử dụng trong lập trình và được thiết kế quản lý dữ liệu được giữ trong
hệ thống quản lý cơ sở dữ liệu quan hệ hoặc để xử lý luồng trong hệ thống quản lý
luồng dữ liệu quan hệ. SQL được sử dụng để giao tiếp với cơ sở dữ liệu.
 Ngôn ngữ quản lý dữ liệu (DCL) là gì?
- Ngôn ngữ kiểm soát dữ liệu (DCL) là một tập hợp con của Ngôn ngữ truy vấn có
cấu trúc (SQL) và cho phép các quản trị viên cơ sở dữ liệu cấu hình truy cập bảo
mật cho các cơ sở dữ liệu quan hệ. ... DCL là tập con của SQL đơn giản nhất, vì nó
chỉ bao gồm ba lệnh: GRANT, REVOKE và DENY.
 Chức năng của DBMS là gì?
- DBMS là phần mềm được thiết kế để có thể xác định, tiến hành các thao tác, truy
xuất và quản lý dữ liệu trong Cơ sở dữ liệu. DBMS thường có khả năng tự thao tác
với dữ liệu, định dạng dữ liệu, tên trường, cấu trúc bản ghi và cấu trúc tệp. Nó
cũng xác định các quy tắc để xác nhận và thao tác với dữ liệu.
 Nêu khái niệm hệ sơ sở dữ liệu
- Hệ cơ sở dữ liệu (HCSDL/ DBS: DataBase System) là một phần mềm cho phép xây
dựng một hệ quản trị cơ sở dữ liệu.

 Nêu các thành phần của hệ cơ sở dữ liệu


- Các thành phần của hệ CSDL :CSDL, hệ QTCSDL, con người.

You might also like