Thursday, April 7, 2016
bài giảng hệ quản trị cơ sở dữ liệu
Hình 1.2: Mô hình hệ quản trị cơ sở dữ liệu
9
Mỗi hệ quản trị cơ sở dữ liệu có một ngôn ngữ định nghĩa dữ liệu riên
g (DDL - Data
Definition Languague). Đây là ngôn ngữ dùng để định nghĩa, khai báo cấu trúc c
ủa của cơ sở dữ
liêu. Những người thiết kế và quản trị cơ sở dữ liệu thực hiện các công việc khai bá
o cấu trúc cơ sở
dữ liệu. Các chương trình khai báo cấu trúc CSDL được viết bằng ngôn ngữ DD
L mà hệ quản trị
CSDL cho phép.
Các chương trình ứng dụng được viết bằng các ngôn ngữ lập trình C+
+/C#/Java/Delphi… kết
hợp với các ngôn ngữ thao tác dữ liệu (DML - Data Manipulation Language) th
ông qua các thư
viện hoặc đối tượng kết nối CSDL được ngôn ngữ lập trình hỗ trợ: ODBC, RDO, A
DO,…
Các hệ quản trị cơ sở dữ liệu quan hệ ngày nay phổ biến sử dụng các ngôn ng
ữ DDL và DML
dựa trên ngôn ngữ SQL.
Đối với hệ quản trị cơ sở dữ liệu SQL Server của Microsoft thì ngôn ngữ d
ùng để tương tác
với cơ sở dữ liệu là T – SQL. Đây là một phiên bản của ngôn ngữ SQL. Ngôn n
gữ T – SQL trên
SQL Server bao gồm nhiều câu lệnh khác nhau, có thể chia thành 2 nhóm:
Nhóm ngôn ngữ định nghĩa dữ liệu DDL: với các lệnh cho phép tạo, thay đổi
cấu trúc và xóa
các đối tượng CSDL: database, table, view,…
Nhóm ngôn ngữ thao tác dữ liệu DML: với các lệnh (như SELECT / INSE
RT / UPDATE /
DELETE) cho phép lấy về dữ liệu cụ thể, thay đổi giá trị của dữ liệu.
Hình 1.3: Tƣơng tác với hệ quản trị cơ sở dữ liệu
Nhìn chung các hệ quản trị cơ sở dữ liệu có nguyên lý hoạt động như sau (xem hình
1.4):
Các yêu cầu của chương trình ứng dụng được chuyển tới hệ quản trị CSDL
(theo con đường
số 1). Tại đây hệ quản trị CSDL sẽ tham khảo các từ điển dữ liệu (Meta DataBase)
để tìm kiếm các
ánh xạ cấu trúc ngoài với cấu trúc quan niệm và cấu trúc vật lý (các ngõ a, b và c).
Tại đây hệ quản
1
0
trị CSDL có thể sẽ tham khảo tới vùng đệm của nó để xác định xem câu trả lời đ
ã có sẵn ở đó
chưa, nếu có thì trả lại cho chương trình ứng dụng thông qua con đường số 8b; ngư
ợc lại sẽ yêu cầu
hệ điều hành truy xuất thông tin theo con đường số 2. Tới đây hệ điều hành sẽ gửi y
êu cầu truy xuất
thông tin trong CSDL thông qua hệ thống xuất nhập của HĐH (các con đường số 3
và 5). Nếu việc
truy xuất không thành công nó sẽ trả lại yêu cầu về cho hệ quản trị CSDL (có thể t
hông qua các mã
lỗi) qua con đường số 6; nếu thành công thì dữ liệu sẽ được chuyển vào vùng đệ
m của hệ quản trị
CSDL. Qua xử lý, hệ quản trị CSDL sẽ chuyển dữ liệu vào vùng đệm của chương tr
ình ứng dụng đề
nó xử lý (qua con đường 8a) và cho ra kết quả trả lời của chương trình ứng dụng q
ua con đường số
10.
Hình 1.4: Hoạt động của hệ quản trị cơ sở dữ liệu
1.3. Các mô hình dữ liệu
Sự cần thiết tổ chức lưu trữ dữ liệu theo một cách thức xác định và chặt ch
ẽ đã dẫn đến sự
phát triển các mô hình dữ liệu. Từ những mô hình mạng, mô hình phân cấp và mô h
ình dữ liệu quan
hệ là những mô hình cơ sở dữ liệu kinh điển, truyền thống cho đến các mô hình cơ
sở dữ liệu phân
tán, cơ sở dữ liệu hướng đối tượng...là những mô hình dữ liệu hiện đại được áp dụ
ng nhiều trên thị
trường hiện nay.
Đối tượng nghiên cứu các hệ CSDL là các thực thể và các mối liên kết giữa c
ác thực thể. Một
mô hình CSDL phải có khả năng biểu diễn thực thể và liên kết giữa các thực thể. Cá
c liên kết là một
dạng đặc biệt của thực thể. Các cách tiếp cận CSDL là các cách nhìn và các cách b
iểu diễn liên kết
của người sử dụng.
Nghiên cứu mô hình cơ sở dữ liệu dựa trên các yêu cầu sau:
1
1
• Mục tiêu độc lập dữ liệu: Phải xác định rõ ràng các khía cạnh logic và
khía cạnh vật
lý của việc quản trị cơ sở dữ liệu, bao gồm việc thiết kế các hệ cơ sở dữ l
iệu, các thao tác
và tìm kiếm dữ liệu bằng các công cụ ngôn ngữ con dữ liệu.
•
Mục tiêu trao đổi: Mô hình dữ liệu đơn giản về cấu trúc, sao cho người
sử dụng có cách
nhìn trong suốt khi truy nhập vào các hệ cơ sở dữ liệu và có khả năng t
rao đổi với nhau
về cơ sở dữ liệu.
•
Mục tiêu xử lý tệp: Người sử dụng có thể sử dụng ngôn ngữ bậc cao
để biểu diễn các
phép toán trên trên các mảng thông tin, kỹ thuật xử lý theo lô (batch), m
à không phải xử
lý tuần tự theo từng bản ghi.
•
Mô hình được xây dựng trên cơ sở lý thuyết vững chắc, chặt chẽ.
Một mô hình dữ liệu là một hệ thống hình thức toán học, bao gồm:
-
Hệ thống các ký hiệu biểu diễn dữ liệu.
-
Tập hợp các phép toán thao tác trên cơ sở dữ liệu.
Đặc trưng của một mô hình dữ liệu bao gồm:
-
Tính ổn định khi thiết kế mô hình dữ liệu.
-
Tính đơn giản có nghĩa là dễ hiểu và dễ thao tác.
-
Tính dư thừa cần phải kiểm tra kỹ lưỡng .
-
Tính đối xứng phải được bảo toàn và
-
Có cơ sở lý thuyết vững chắc.
Tổ chức dữ liệu theo mô hình nào là tốt nhất. Thực tế chưa có mô hình dữ liệ
u nào là tốt nhất.
Tốt nhất phụ thuộc vào yêu cầu truy xuất và khai thác thông tin của đơn vị quản lý
nó. Nó được sử
dụng ở đâu và vào lúc nào là tốt nhất. Tuy nhiên, thường người ta dựa vào các tiê
u chí sau để nói
rằng mô hình dữ liệu tốt nhất khi:
Mục đích: Phần lớn các mô hình dữ liệu sử dụng hệ thống ký hiệu
để biểu diễn dữ
liệu và làm nền tảng cho các hệ ứng dụng và ngôn ngữ thao tác
dữ liệu. Các mô
hình thực thể quan hệ không có hệ thống ký hiệu để xây dựng cá
c phép toán thao
tác dữ liệu, mà sử dụng để thiết kế lược đồ khái niệm, cài đặt tro
ng một mô hình
dữ liệu với một hệ quản trị cơ sở dữ liệu nào đó.
Hướng giá trị hay hướng đối tượng: Các mô hình dữ liệu qua
n hệ và mô hình
logic là các mô hình dữ liệu hướng giá trị. Trong các mô hình d
ữ liệu hướng giá
trị có tính khai báo (declarativeness) và có tác động đến các ngôn
ngữ được nó hỗ
trợ. Các mô hình mạng, phân cấp, mô hình dữ liệu hướng đối tượ
ng cung cấp đặc
tính nhận dạng đối tượng, nên có thể xem chúng là các mô hình
hướng đối tượng.
Mô hình thực thể quan hệ cũng được có đặc tính nhận dạng hướn
g đối tượng.
Tính dư thừa: Tất cả các mô hình dữ liệu đều có khả năng hỗ
trợ lưu trữ dữ liệu
vật lý và hạn chế sự dư thừa dữ liệu. Tuy nhiên các mô hình d
ữ liệu hướng đối
1
2
tượng giải quyết sự dư thừa tốt hơn, bằng cách tạo ra sử dụng c
on trỏ trỏ đến
nhiều vị trí khác nhau.
Giải quyết mối quan hệ nhiều – nhiều: Phần lớn trong các mô
hình cơ sở dữ liệu
có chứa các mối quan hệ nhiều – nhiều, một – nhiều hay quan hệ
môt – một. Một
quan hệ có nhiều phần tử của các quan hệ khác và ngược lại. Tuy
nhiên trong mô
hình dữ liệu mạng không chấp nhận mối quan hệ nhiều – nhiều.
1.3.1. Mô hình cơ sở dữ liệu quan hệ (Relational model)
Mô hình này dựa trên lý thuyết tập hợp và đại số quan hệ. Vì tính chất chặt
chẽ của toán học
về lí thuyết tập hợp nên mô hình này đã mô tả dữ liệu một cách rõ ràng, mềm dẻ
o và là mô hình
thông dụng nhất hiện nay. Hầu hết các hệ quản trị cơ sở dữ liệu thông dụng hiện na
y đều tổ chức dữ
liệu theo mô hình dữ liệu quan hệ.
Mô hình cơ sở dữ liệu quan hệ (gọi tắt là Mô hình Quan hệ) do E.F Codd đề
xuất năm 1971.
Mô hình này bao gồm:
-
Một hệ thống các ký hiệu để mô tả dữ liệu dưới dạng dòng và cột như:
quan hệ, bộ, thuộc
tính, khóa chính, khoá ngoại, ...
-
Một tập hợp các phép toán thao tác trên dữ liệu như phép toán tập hợp, phép
toán quan hệ.
-
Ràng buộc toàn vẹn quan hệ.
1.3.2. Mô hình phân cấp (Hierarchical model)
1.3.2.1 Cấu trúc biểu diễn dữ liệu phân cấp
Trong mô hình CSDL phân cấp, dữ liệu được biểu diễn bằng cấu trúc cây.
Một CSDL phân
cấp là tập các cây (rừng cây). Trong mỗi một cây chỉ chứa một và chỉ một xuất
hiện của bản ghi
gốc, gọi là bản ghi đỉnh, và dưới nó là tập các xuất hiện của các bản ghi phụ thuộc.
Các bản ghi phụ
thuộc có thể là tuỳ ý hoặc không tồn tại. Một bản ghi gốc có thể có một số bất kỳ
các bản ghi phụ
thuộc và các bản ghi phụ thuộc có thể có một số các bản ghi phụ thuộc mức thấp
hơn... Hình 2.1
biểu diễn một mô hình CSDL phân cấp về tuyến cáp và các loại cáp. Dữ liệu được
biểu diễn bằng 4
cấu trúc cây đơn giản, trong đó gốc là xuất hiện kiểu bản ghi loại cáp bao gồm các t
hông tin mã cáp,
tên cáp, số lượng, mã nước sản xuất, tên nước sản xuất. Các bản ghi phụ thuộc là
kiểu các bản ghi
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment