MÔ HÌnh quan hệ nguyên nhân ra đỜi của mô HÌnh quan hệ



tải về 1.86 Mb.
trang1/17
Chuyển đổi dữ liệu17.08.2016
Kích1.86 Mb.
  1   2   3   4   5   6   7   8   9   ...   17



Giáo trình CƠ SỞ DỮ LIỆU Trang




MỤC LỤC


  1. .

MÔ HÌNH QUAN HỆ


    1. NGUYÊN NHÂN RA ĐỜI CỦA MÔ HÌNH QUAN HỆ (RELATIONAL MODEL)

Trong nhiều năm, công nghệ tính toán và thông tin phát triển từ những hệ thống lớn, đắt tiền, độc quyền đến các hệ thống mở mạnh và không đắt tiền. Sự phát triển này mang lại lợi ích to lớn cho người dùng cuối bởi sự phát triển của các gói ứng dụng số như xử lý văn bản, bảng tính điện tử, văn phòng xuất bản, hệ quản lý cơ sở dữ liệu, máy tính trợ giúp công nghệ phần mềm....
Trước khi máy tính hóa cơ sở dữ liệu đươc giới thiệu, dữ liệu được lưu trữ theo kiểu điện tử thành nhiều tập tin riêng biệt sử dụng hệ tập tin (từ đây về sau ta gọi hệ tập tin theo lối cu). Những tập tin này được xử lý bằng các ngôn ngữ thế hệ thứ ba như COBOL, FORTRAN, PASCAL và ngay cả BASIC để tạo ra các giải pháp cho các vấn đề của doanh nghiệp. Mỗi ứng dụng, chẳng hạn như hệ tính lương, hệ kho hay hệ thống kế toán sẽ có một tập các tập tin riêng chứa dữ liệu riêng. Các ứng dụng như vậy tạo ra ba vấn đề sau:

  • Có sự liên kết chặt chẽ giữa cấu trúc luận lý và cấu trúc vật lý của các tập tin và chương trình ứng dụng khai thác chúng. Điều này khiến việc tạo nên các ứng dụng này rất khó khăn, tốn nhiều thời gian và do vậy mà tốn kém trong bảo trì hệ thống.

  • Có sự dư thừa dữ liệu rất lớn qua việc trùng lắp các tập tin trong các ứng dụng khác nhau. Điều này tạo ra những vấn đề như: dữ liệu thiếu nhất quán, không gian đĩa bị lãng phí, thời gian bảo trì và lưu phòng hờ các tập tin gia tăng, vấn đề về quản trị như không chú trọng bảo mật và tổ chức dữ liệu thiếu thống nhất. Một ví dụ điển hình về sự trùng lắp dữ liệu là:

Hệ quản lý nguồn nhân lực bao gồm ba hệ chính:

  1. Hệ lương, hệ này duy trì ngày công và lương cho tất cả nhân viên.

  2. Hệ nhân sự, hệ này duy trì lý lịch cá nhân, dữ liệu về tổ chức, công việc đào tạo và vị trí thăng tiến.

  3. Hệ hưu, hệ này quản trị các qui tắc liên quan đến nghỉ hưu, loại nghỉ hưu. Chi tiết về hưu của từng nhân viên.

Vấn đề phức tạp là Hệ lương thông thường được quản lý bởi phòng tài chánh, trong khi Hệ nhân sự và Hệ hưu được quản lý bởi phòng tổ chức. Rõ ràng, có nhiều dữ liệu về nhân viên là chung cho cả ba hệ. Thường những hệ này thực hiện và giữ gìn riêng biệt và chúng tạo sự trùng dữ liệu nhân viên mà chúng dùng.

  • Người sử dụng có ít khả năng khai thác trực tiếp dữ liệu.

    1. CƠ SỞ DỮ LIỆU VÀ HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU (DATABASE AND DATABASE MANAGEMENT SYSTEM)

Khởi đầu, sự giới thiệu CSDL và HQTCSDL nhằm giải quyết các vấn đề của hệ thông tin dựa trên các tập tin theo lối cũ (C1.I). Điều này tạo ra việc phát triển trên hai mươi lăm năm qua một hệ CSDL quan hệ thương mại xuất hiện cuối những năm thập niên 70 và các năm đầu của thập niên 80. Trước khi xem xét CSDL và hệ QTCSDLQH giải quyết một vài vấn đề của hệ thông tin theo lối cũ như thế nào chúng ta cần làm rõ vài khái niệm.

      1. CSDL là gì?

Một cơ sở dữ liệu có thể định nghĩa tạm như sau: một chỗ chứa có tổ chức tập hợp các tập tin dữ liệu có tương quan, các mẫu tin và các cột.

Ngày nay CSDL tồn tại trong mỗi ứng dụng thông dụng, ví dụ:



  • Hệ kho và kiểm kê.

  • Hệ đặt chỗ máy bay

  • Hệ nguồn nhân lực.

  • hệ dịch vụ công cộng như cấp nước, điện, khí đốt

  • Điều khiển quá trình chế tạo và sản xuất

      1. Hệ quản trị CSDL

Một hệ quản trị CSDL (HQTCSDL) là:

  • một tập các phần mềm quản lý CSDL và cung cấp các dịch vụ xử lý CSDL cho các những người phát triển ứng dụng và người dùng cuối.

  • HQTCSDL cung cấp một giao diện giữa người sử dụng và dữ liệu.

  • HQTCSDL biến đổi CSDL vật lý thành CSDL logic.

Dựa vào cách tổ chức dữ liệu, HQTCSDL được chia thành năm loại:



  • loại phân cấp như hệ IMS của IBM

  • loại mạng như IDMS của Cullinet Software

  • Loại tập tin đảo như ADABAS của Software AG

  • Loại quan hệ như như ORACLE của Oracle, DB2 của IBM, ACCESS của Microsoft Access

  • Loại đối tượng là một tiếp cận khá mới trong thiết kế HQTCSDL và việc sử dụng loại này sớm trở nên phổ biến

Hiện tại, loại HQTCSDL chính được sử dụng trong công nghệ là loại HQTCSDL quan hệ (RDBMS). Loại này đã chiếm lĩnh trong công nghệ trên 10-15 năm cuối cùng khi đánh bật loại HQTCSDL phân cấp và gần đây là HQTCSDL mạng.

      1. Người dùng (User)

Người dùng khai thác CSDL thông qua HQTCSDL có thể phân thành ba loại: người quản trị CSDL, người phát triển ứng dụng và lập trình, người dùng cuối.

  • Người quản trị CSDL, hàng ngày, chịu trách nhiệm quản lý và bảo trì CSDL như:

  • sự chính xác và toàn vẹn của dữ liệu và ứng dụng trong CSDL, sự bảo mật của CSDL

  • lưu phòng hờ và phục hồi CSDL

  • giữ liên lạc với người phát triển ứng dụng, người lập trình và người dùng cuối.

  • bảo đàm sự hoạt động trôi chảy và hiệu quả của CSDL và HQTCSDL

  • Người phát triển và lập trình ứng dụng là những người chuyên nghiệp về máy tính có trách nhiệm thiết kế, tạo dựng và bảo trì hệ thông tin cho người dùng cuối.

  • Người dùng cuối là những người không chuyên về máy tính nhưng họ là các chuyên gia trong các lãnh vực khác có trách nhiệm cụ thể trong tổ chức. Họ khai thác CSDL thông qua hệ được phát triển bởi người phát triển ứng dụng hay các công cụ truy vấn của HQTCSDL.

      1. CSDLQH và Hệ tập tin theo lối cũ

Tiếp cận CSDL đã giải quyết 3 vấn đề của hệ tập tin theo lối cũ:

        1. Vấn đề 1: cấu trúc logic và cấu trúc vật lý

Kiến trúc bên trong HQTCSDL quan hệ tách biệt rõ ràng giữa:



  • cấu trúc luận lý của tất cả tập tin và chương trình ứng dụng khai thác tập tin này và

  • cấu trúc vật lý của csdl và phần lưu trữ các tập tin.

Tiếp cận này tạo cho người quản trị CSDL có thể thay đổi cấu trúc vật lý hay nơi lưu trữ của tập tin mà không ảnh hưởng đến chương trình ứng dụng.

        1. Vấn đề 2: dư thừa dữ liệu

Khi HQTCSDLQH được giới thiệu, nhiều tổ chức mong tích hợp các tập tin đã phân tán khắp trong tổ chức vào một CSDL tập trung. Dữ liệu có thể chia sẻ cho nhiều ứng dụng khác nhau và người sử dụng có thể khai thác đồng thời các tập con dữ liệu liên quan đến họ. Điều này làm hạn chế sự dư thừa dữ liệu.

        1. Vấn đề 3: Sự khai thác dữ liệu của người sử dụng

Trong hệ QTCSDLQH người dùng có thể trực tiếp khai thác dữ liệu thông qua việc sử dụng các câu truy vấn hay các công cụ báo cáo được cung cấp bởi hệ QTCSDL.

    1. MÔ HÌNH QUAN HỆ (RELATIONAL MODEL)

      1. Mô hình quan hệ là gì ?

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ệ.

Các hệ HQTCSDLQH ngày nay được xây dựng dựa vào lý thuyết của mô hình quan hệ.

Mục đích của môn học này giúp cho sinh viên nắm được kiến trúc tổng quát về mô hình quan hệ và áp dụng nó để lập mô hình dữ liệu quan hệ có hiệu quả trong lưu trữ khai thác.




MASV

HOTENH

MONHOC

TENKHOA

DIEMTHI

99001

TRAN DAN THU

CO SO DU LIEU

CÔNG NGHỆ THỘNG TIN

3.0

99002

NGUYEN HA DA THAO

CO SO DU LIEU

CÔNG NGHỆ THỘNG TIN

8.0

99001

TRAN DAN THU

TIN HOC VAN PHONG

CÔNG NGHỆ THỘNG TIN

6.0

99005

LE THANH TRUNG

TIN HOC VAN PHONG

ANH VAN

5.0

Chẳng hạn với bài toán quản lý điểm thi của sinh viên; nếu lưu trữ dữ liệu theo dạng bảng với các cột MASV, HOTEN, MONHOC,TENKHOA, DIEMTHI thì các gía trị của các cột HOTEN, MONHOC, TENKHOA sẽ bị trùng lắp. Sự trùng lắp này gây nên một số vấn đề:



  • Ta không thể lưu trữ một sinh viên mới khi sinh viên này chưa có điểm thi

  • Khi cần sửa đổi họ tên sinh viên thì ta phải sửa tất cả các dòng có liên quan đến sinh viên này. Điều này dễ gây ra tình trạng dữ liệu thiếu nhất quán.

  • Khi có nhu cầu xóa điểm thi của một sinh viên kéo theo khả năng xóa luôn họ tên sinh viên đó.

Việc lưu trữ dữ liệu như trên không đúng với mô hình quan hệ. Để lưu trữ đúng với mô hình quan hệ ta phải thay MONHOC bằng MAMH, thay TENKHOA bằng MAKHOA, tách một bảng dữ liệu lớn đó ra thành nhiều bảng con, như mô hình dưới.

MASV

MAMH

MAKHOA

DIEMTHI




MASV

HOTEN

99001

CSDL

CNTT

3.0




99001

TRAN DAN THU

99002

CSDL

CNTT

8.0




99002

NGUYEN HA DA THAO

99001

THVP

CNTT

6.0




99005

LE THANH TRUNG

99005

THVP

AV

5.0













MAMH

TENMH

SOTIET




MAKHOA

TENKHOA

CSDL

CO SO DU LIEU

90




CNTT

CONG NGHE THONG TIN

THVP

TIN HOC VAN PHONG

90




AV

ANH VAN

      1. Các khái niệm cơ bản của mô hình quan hệ

        1. Thuộc tính (Attribute, Arity)

Chẳng hạn với bài toán quản lý điểm thi của sinh viên; với đôi tượng sinh viên ta cần phải chú ý đến các đặc trưng riêng như họ tên, ngày sinh, nữ (giới tính), tỉnh thường trú, học bổng, lớp mà sinh viên theo học,. . . các đặc trưng này gọi là thuộc tính.

Các thuộc tính được phân biệt qua tên gọi và phải thuộc vào một kiểu dữ liệu nhất định (số, chuỗi, ngày tháng, logic, hình ảnh,…). Kiểu dữ liệu ở đây là kiểu đơn. Trong cùng một đối tượng không được có hai thuộc tính cùng tên.

Thông thường mỗi thuộc tính chỉ chọn lấy giá trị trong một tập con của kiểu dữ liệu và tập hợp con đó gọi là miền giá trị của thuộc tính đó. Thuộc tính ngày trong tháng thì có kiểu dữ liệu là số nguyên, miền giá trị của nó là 1 đến (tối đa là) 31. Hoặc điểm thi của sinh viên chỉ là các số nguyên từ 0 đến 10.

Thường người ta dùng các chữ cái hoa A,B,C,… để biểu diễn các thuộc tính, hoặc A1,A2,…., An để biểu diễn một số lượng lớn các thuộc tính.



        1. Lược Đồ Quan Hệ (Relation Schema)

Tập tất cả các thuộc tính cần quản lý của một đối tượng cùng với mối liên hệ giữa chúng được gọi là lược đồ quan hệ. Lược đồ quan hệ Q với tập thuộc tính {A1,A2,...,An} được viết là Q(A1,A2,...,An). Tập các thuộc tính của Q được ký hiệu là Q+. Chẳng hạn lược đồ quan hệ sinh viên (Đặt tên là Sv) với các thuộc tính như trên là:

Sv(MASV, HOSV,TENSV,NU, NGAYSINH, MALOP, HOCBONG, TINH)

Thường khi thành lập một lược đồ, người thiết kế luôn gắn cho nó một ý nghĩa nhất định, ý nghĩa đó gọi là tân từ của lược đồ quan hệ đó. Dựa vào tân từ người ta xác định được tập thuộc tính khóa của lược đồ quan hệ (khái niệm khoá sẽ được trình bày ở phần sau).

Khi phát biểu tân từ cho một lược đồ quan hệ, người thiết kế cần phải mô tả đầy đủ ý nghĩa để người khác tránh hiểu nhầm. Chẳng hạn tân từ của lược đồ quan hệ trên là:”mỗi sinh viên có một mã sinh viên (MASV) duy nhất, mỗi mã sinh viên xác định tất cả các thuộc tính của sinh viên đó như họ tên (HOTEN), nữ (NU) ,ngày sinh (NGAYSINH), lớp theo học (MALOP), học bổng (HOCBONG), tỉnh cư trú (TINH).


Nhiều lược đồ quan hệ cùng nằm trong một hệ thống quản lý được gọi là một lược đồ cơ sở dữ liệu.

Ví dụ lược đồ cơ sở dữ liệu để quản lý điểm sinh viên có thể gồm các lược đồ quan hệ sau:

Sv(MASV, HOSV,TENSV, NU, NGAYSINH, MALOP, TINH, HOCBONG)

Lop(MALOP,TENLOP,SISO,MAKHOA)

Kh(MAKHOA,TENKHOA, SOCBGD)

Mh(MAMH, TENMH, SOTIET)

Kq(MASV, MAMH, DIEMTHI)

Phần giải thích các thuộc tính:



MASV

Mã sinh viên

HOTEN

Tên sinh viên

NU

Nữ

NGAYSINH

ngày sinh

LOP

lớp

TENLOP

tên lớp

SISO

sỉ số lớp

MAKHOA

mã khoa

HOCBONG

học bổng

TINH

tỉnh

TENKHOA

tên khoa

SOCBGD

số cán bộ giảng dạy

MAMH

mã môn học

TENMH

tên môn học

SOTIET

số tiết

DIEMTHI

điểm thi

        1. Quan Hệ (Relation)

Sự thể hiện của lược đồ quan hệ Q ở một thời điểm nào đó được gọi là quan hệ, rõ ràng là trên một lược đồ quan hệ có thể định nghĩa rất nhiều quan hệ. Thường ta dùng các ký hiệu như R, S, Q để chỉ các lược đồ quan hệ, còn quan hệ được định nghĩa trên nó tương ứng được ký hiệu là là r, s, q.

        1. Bộ (Tuple)

Bộ là tập mỗi giá trị liên quan của tất cả các thuộc tính của một lược đồ quan hệ.

Chẳng hạn quan hệ sau có 2 bộ.



MASV

HOTEN

NU

NGAYSINH

MALOP

TINH

HOCBONG

99001

TRAN DAN THU

TRUE

15-03-1977

CĐTH2B

TIEN GIANG

120000

99002

NGUYEN HA DA THAO

TRUE

25-04-1986

TCTH29C

TPHCM

120000

Thường người ta dùng các chữ cái thường (như t,p,q,…) để biểu diễn các bộ. Chẳng hạn để nói bộ t thuộc quan hệ r ta viết: t  r.

Về trực quan thì mỗi quan hệ xem như một bảng, trong đó mỗi cột là thông tin về một thuộc tính, mỗi dòng là thông tin về một bộ. Chẳng hạn sau đây là các thể hiện của các quan hệ định nghĩa trên lược đồ cơ sở dữ liệu quản lý sinh viên ở trên:



rSv






















MASV

HOTEN




NU

NGAYSINH

MALOP

TINH

HOCBONG

99001

TRAN DAN

THU

TRUE

15-03-1977

CĐTH2B

TIEN GIANG

120000

99002

NGUYEN HA DA

THAO

TRUE

25-04-1986

CĐTH2B

TPHCM

120000

99003

PHAM ANH

HUY

FALSE

16-08-1977

CĐTH2B

BAC LIEU




99004

NGUYEN NGOC

THUAN

FALSE

24-12-1980

CĐTH2B

CA MAU




99005

LE THANH

TRUNG

FALSE

20-11-1978

CĐAV1

CA MAU

120000

99006

NGUYEN HONG

VAN

FALSE

19-09-1979

CĐAV1

SOC TRANG




99007

VU THI

LOAN

TRUE

15-03-1975

CĐAV1

CA MAU




99008

TRUONG KIM

QUANG

FALSE

15-05-1975

CĐTH2B

HA NOI




99009

TON THAT

QUYEN

FALSE

26-06-1976

CĐTH2B

VUNG TAU

60000

99010

HA VAN

LONG

FALSE

14-04-1973

CĐAV1

BAC LIEU




99011

BUI VAN

ANH

FALSE

22-12-1972

CĐAV1

AN GIANG




99012

LE HUU

CHI

FALSE

28-08-1977

CĐĐT2

CAN THO

60000

99013

VU THANH

CONG

FALSE

29-03-1979

CĐTH2B

KIEN GIANG

60000

99014

TRAN QUANG

CUONG

FALSE

30-05-1981

CĐĐT2

DONG THAP

120000

99015

PHAM VAN

HAI

FALSE

30-06-1976

CĐĐT2

CA MAU




99016

HUYNH THANH

HOANG

FALSE

29-07-1982

CĐĐT2

TPHCM

80000

99017

TRAN MINH

LAM

FALSE

21-08-1977

CĐTH2B

TRA VINH




99018

PHAN VAN

SANG

FALSE

19-05-1979

CĐDL1

DONG THAP

120000

99019

PHAM THI

HUYEN

FALSE

16-06-1982

CĐDL1

CAN THO

120000

99020

NGUYEN THI

NGAN

TRUE

11-11-1981

CĐTH2B

CA MAU

120000

99021

PHAM TAN

QUANG

FALSE

01-01-1980

CĐDL1

CA MAU




99022

TRAN PHUOC

QUYEN

FALSE

12-12-1979

CĐTH2B

BAC LIEU

60000

99023

LE THI THANH

VAN

TRUE

11-11-1980

CĐDL1

TPHCM

120000
  1   2   3   4   5   6   7   8   9   ...   17


Cơ sở dữ liệu được bảo vệ bởi bản quyền ©hocday.com 2016
được sử dụng cho việc quản lý

    Quê hương