1. Bài toán quản lí
Công việc quản lí là rất phổ biến, có thể nói mọi tổ chức đều có nhu cầu quản lí. Công ti cần quản lí tài chính, vật tư, con người,... Khách sạn cần quản lí phòng cho thuê, các dịch vụ, khách thuê phòng, tài chính, trang thiết bị,... Bệnh viện cần quản lí bệnh nhân, thuốc, bệnh án, bác sĩ, các thiết bị y tế,.....
Để thấy rõ hơn các công việc trong công tác quản lí, ta hãy xét ví dụ sau.
Ví dụ. Quản lí học sinh trong nhà trường
Để quản lí học sinh, nhà trường phải có hồ sơ học sinh, đó là học bạ. Học bạ thường gồm các thông tin sau: họ và tên, ngày sinh, giới tính, địa chỉ, là đoàn viên hay không, kết quả học tập và rèn luyện (điểm các môn, xếp loại đạo đức),...
Thông tin về các học sinh trong lớp thường được tập hợp lại thành một hồ sơ lớp. Có thể hình dung hồ sơ lớp như một bảng mà mỗi cột tương ứng với một mục thông tin, mỗi hàng chứa bộ thông tin về một học sinh (h. 1):
Hình 1. Ví dụ hồ sơ lớp
Hồ sơ quản lí học sinh của nhà trường là tập hợp các hồ sơ lớp.
Trong quá trình quản lí, hồ sơ có thể có những bổ sung, thay đổi hay nhầm lẫn đòi hỏi phải sửa đổi lại. Chẳng hạn, khi một học sinh thay đổi địa chỉ thì phải cập nhật địa chỉ mới,... Cần phải ghi điểm trung bình của mỗi môn vào hồ sơ, tính điểm trung bình của cả học kì. Khi một học sinh chuyển đi trường khác thì hồ sơ của học sinh đó cần được rút ra để chuyển đi. Hồ sơ của một học sinh từ trường khác chuyển về cần được bổ sung vào hồ sơ lớp,... Công việc sửa đổi như vậy cần được thực hiện chính xác và thường xuyên (tốt nhất là ngay khi có thay đổi) để đảm bảo hồ sơ luôn phản ánh đúng thực tế. Việc bổ sung, sửa chữa, xoá hồ sơ được gọi là cập nhật hồ sơ.
Việc lập hồ sơ không chỉ đơn thuần là để lưu trữ mà chủ yếu là để khai thác, nhằm phục vụ các yêu cầu quản lí của nhà trường.
Chẳng hạn, giáo viên muốn biết thông tin (như địa chỉ hay kết quả học tập,...) của một học sinh, có thể tìm hồ sơ của học sinh đó để xem. Công việc này gọi là tìm kiếm.
Trong một số trường hợp, giáo viên có thể cần chọn ra một số học sinh theo một điều kiện nào đó. Ví dụ, để chuẩn bị cho kì thi học sinh giỏi môn Tin học, cần phải chọn ra tất cả các học sinh có điểm trung bình môn Tin học trên 8,5 để bồi dưỡng thêm. Trong ví dụ đang xét, điều kiện tìm là "điểm trung bình môn Tin học trên 8,5". Trong nhiều trường hợp, điều kiện tìm có thể phức tạp hơn. Ví dụ, trong công tác đột xuất giúp đỡ các gia đình thương binh, liệt sĩ, cần chọn những học sinh giỏi (để không bị ảnh hưởng đến kết quả học tập), là đoàn viên (để nêu cao ý thức trách nhiệm), lại phải là nam, thì điều kiện tìm là "điểm trung bình các môn trên 8,0 là đoàn viên và giới tính nam".
Giáo viên thường sắp xếp học sinh theo thứ tự điểm trung bình của cả học kì để xếp loại hay theo địa chỉ để chia nhóm học tập, những học sinh trong một nhóm ở gần nhau.
Cuối học kì và cuối năm học, giáo viên thường phải thống kê, tổng hợp, chẳng hạn đếm số đoàn viên, số học sinh đạt loại giỏi, tính điểm trung bình của mỗi môn học của cả lớp,... Đặc điểm của kiểu khai thác này là phải sử dụng dữ liệu của nhiều học sinh.
2. Các công việc thường gặp khi xử lí thông tin của một tổ chức
Ngày nay tin học hoá công tác quản lí chiếm khoảng trên 80% các ứng dụng tin học. Công việc quản lí tại mỗi nơi, mỗi lĩnh vực có những đặc điểm riêng về đối tượng quản lí cũng như về phương thức khai thác thông tin. Tuy nhiên, các bài toán quản lí đều có chung đặc điểm là khối lượng hồ sơ cần xử lí thường là rất lớn nhưng thuật toán xử lí nói chung là không quá phức tạp. Công việc xử lí bao gồm: tạo lập, cập nhật và khai thác hồ sơ.
a) Tạo lập hồ sơ
Để tạo lập hồ sơ, cần thực hiện các công việc sau:
- Tuỳ thuộc nhu cầu của tổ chức mà xác định chủ thể cần quản lí. Chẳng hạn, trong ví dụ ở mục 1, chủ thể cần quản lí là học sinh.
- Dựa vào yêu cầu cần quản lí thông tin của chủ thể để xác định cấu trúc hồ sơ. Ví dụ ở hình 1, hồ sơ mỗi học sinh là một hàng có nhiều thuộc tính (cột).
- Thu thập, tập hợp thông tin cần thiết cho hồ sơ từ nhiều nguồn khác nhau và lưu trữ chúng theo đúng cấu trúc đã xác định. Trong ví dụ trên, đó là hồ sơ lớp dưới, kết quả điểm thi học kì các môn học,...
b) Cập nhật hồ sơ
Thông tin lưu trữ trong hồ sơ cần được cập nhật để đảm bảo phản ánh kịp thời, đúng với thực tế. Sau đây là một số việc thường làm để cập nhật hồ sơ:
- Sửa chữa hồ sơ là việc thay đổi một vài thông tin trong hồ sơ không còn đúng nữa. Chẳng hạn, học sinh Doãn Thu Cúc mới được kết nạp vào Đoàn nên ở thuộc tính Đoàn viên trước đây ghi là 'K' nay sửa thành 'C, hoặc do nhầm lẫn ghi Điểm Tin của học sinh Hồ Minh Hải là 7,8 nay cần sửa thành 8,7 là điểm đúng mà em đó đã đạt được.
- Cần bổ sung thêm hồ sơ cho cá thể mới tham gia vào tổ chức. Chẳng hạn, học sinh Nguyễn Gia Lâm từ nơi khác chuyển tới lớp, cần bổ sung hồ sơ của em đó vào hồ sơ lớp.
- Cần xoá hồ sơ của cá thể mà tổ chức không còn quản lí nữa. Ví dụ, học sinh Trần Văn Giang chuyển sang lớp khác, cần xoá hồ sơ của em đó khỏi hồ sơ lớp (chuyển sang hồ sơ của lớp mới mà em đó chuyển tới).
Ví dụ, sau khi thực hiện cập nhật hồ sơ nêu trên, hồ sơ lớp ở hình 1 sẽ có dạng như ở hình 2 dưới đây:
Hình 2. Hồ sơ lớp ở hình 1 sau khi cập nhật
c) Khai thác hồ sơ
Việc tạo lập, lưu trữ và cập nhật hồ sơ là để khai thác chúng, phục vụ cho công việc quản lí. Khai thác hồ sơ gồm các việc chính sau:
- Sắp xếp hồ sơ theo một tiêu chí nào đó phù hợp với yêu cầu quản lí của tổ chức. Ví dụ, sắp xếp hồ sơ lớp theo bảng chữ cái của tên học sinh; Sắp xếp hồ sơ theo điểm số từ cao xuống thấp của một môn học nào đó.
- Tìm kiếm là việc tra cứu các thông tin có sẵn trong hồ sơ thoả mãn một số điều kiện nào đó. Ví dụ, tìm họ và tên học sinh có điểm môn Tin cao nhất; Tìm họ và tên những học sinh nam, là đoàn viên và có điểm trung bình các môn trên 8,0.
- Thống kê là cách khai thác hồ sơ dựa trên tính toán để đưa ra các thông tin đặc trưng, không có sẵn trong hồ sơ. Ví dụ, tính điểm trung bình từng môn học của cả lớp; Xác định điểm cao nhất, thấp nhất môn Tin; Thống kê số học sinh đạt điểm giỏi các môn Tin, Toán, Lí.
- Lập báo cáo là việc sử dụng các kết quả tìm kiếm, thống kê, sắp xếp các bộ hồ sơ để tạo lập một bộ hồ sơ mới có nội dung và cấu trúc khuôn dạng theo một yêu cầu cụ thể nào đó, thường để in ra giấy. Ví dụ, danh sách các học sinh giỏi của lớp, xếp theo điểm trung bình các môn học từ cao xuống thấp.
Mục đích cuối cùng của việc tạo lập, cập nhật, khai thác hồ sơ là phục vụ, hỗ trợ cho quá trình lập kế hoạch, ra quyết định xử lí công việc của người có trách nhiệm. Ví dụ, cuối năm học, nhờ các thống kê, báo cáo về phân loại học tập mà thầy Hiệu trưởng ra quyết định thưởng cho những học sinh xuất sắc toàn diện hoặc từng mặt. Các giáo viên chủ nhiệm cũng căn cứ vào báo cáo phân loại học tập mà lập kế hoạch ôn tập hè cho học sinh lớp mình.
3. Hệ cơ sở dữ liệu
a) Khái niệm cơ sở dữ liệu và hệ quản trị cơ sở dữ liệu
Bài toán quản lí là bài toán phổ biến trong mọi hoạt động kinh tế - xã hội. Một xã hội càng văn minh thì trình độ quản lí các tổ chức hoạt động trong xã hội đó càng cao.Việc lưu trữ và xử lí thông tin một cách chính xác, kịp thời chiếm vị trí quan trọng trong quản lí, điều hành của mọi tổ chức.
Máy tính điện tử ra đời và phát triển đã trở thành một công cụ có khả năng lưu trữ dữ liệu khổng lồ, tốc độ truy xuất và xử lí dữ liệu rất nhanh. Do vậy, cần thiết phải tạo lập được các phương thức mô tả, các cấu trúc dữ liệu để có thể sử dụng máy tính trợ giúp đắc lực cho con người trong việc lưu trữ và khai thác thông tin. Cơ sở dữ liệu (CSDL) và hệ quản trị cơ sở dữ liệu (hệ QTCSDL) ra đời và phát triển nhằm đáp ứng nhu cầu đó.
Một cơ sở dữ liệu (Database) là một tập hợp các dữ liệu có liên quan với nhau, chứa thông tin của một tổ chức nào đó (như một trường học, một ngân hàng, một công ti, một nhà máy,...), được lưu trữ trên các thiết bị nhớ để đáp ứng nhu cầu khai thác thông tin của nhiều người dùng với nhiều mục đích khác nhau.
Ví dụ, hồ sơ lớp trong mục 1 (h. 1) khi được lưu trữ ở bộ nhớ ngoài của máy tính có thể được xem là một cơ sở dữ liệu (gọi là CSDL Lớp).
Hiện nay, việc ứng dụng CSDL trong hầu hết các hoạt động xã hội trở nên phổ biến, quen thuộc.
Để quản lí tốt và phục vụ người đọc một cách thuận lợi, hầu hết các thư viện ngày nay đều có CSDL. Thông qua việc tra cứu hồ sơ sách lưu trữ trong CSDL trên máy tính, người đọc có thể biết được thông tin về những cuốn sách thuộc phạm vi quan tâm, cần mượn. Nhờ khai thác CSDL của thư viện, người đọc còn có thể biết được nhiều thông tin khác, chẳng hạn thư viện có bao nhiêu đầu sách, những loại sách và lĩnh vực nào đang thu hút sự quan tâm của bạn đọc,...
Hãng Hàng không Quốc gia Việt Nam có CSDL chứa thông tin về các chuyến bay. Tại các phòng bán vé, khi có khách hàng đến mua vé, bằng cách khai thác CSDL của hãng, nhân viên bán vé nhanh chóng cung cấp những thông tin cần thiết giúp khách hàng quyết định chọn chuyến bay thích hợp. Sau khi bán vé cho khách hàng, nhân viên bán vé cập nhật thông tin vào CSDL.
Cùng với sự phát triển nhanh chóng của mạng Internet, từ những năm cuối của thế kỉ XX, số người truy cập và khai thác thông tin từ các cơ sở dữ liệu cũng tăng lên rất nhanh. Qua các trang web, người ta có thể xem kết quả thi đại học, đăng kí các khoá học ở các trường, xem số tiền còn trong tài khoản của mình ở ngân hàng, xem và mua sách trong cửa hàng bán sách trên mạng, tìm hiểu chi tiết về một số mặt hàng nào đó,... Tất cả các công việc này đều được thực hiện nhờ có các CSDL thích hợp.
Kết xuất thông tin từ các CSDL không chỉ phục vụ kịp thời, chính xác công việc quản lí, điều hành nói riêng và việc lưu trữ, khai thác thông tin nói chung mà còn ngày càng trở thành một công việc thường xuyên nhằm đáp ứng, thoả mãn nhu cầu của mỗi người.
Để tạo lập, lưu trữ và cho phép nhiều người có thể khai thác được CSDL, cần có hệ thống các chương trình cho phép người dùng giao tiếp với CSDL. Những hệ thống này đã làm ẩn đi những chi tiết kĩ thuật phức tạp và làm đơn giản những tương tác của người dùng với máy tính.
Phần mềm cung cấp một môi trường thuận lợi và hiệu quả để tạo lập, lưu trữ và khai thác thông tin của CSDL được gọi là hệ quản trị cơ sở dữ liệu (Database Management System).
Người ta thường dùng thuật ngữ hệ cơ sở dữ liệu để chỉ một CSDL cùng với hệ QTCSDL quản trị và khai thác CSDL đó.
Ngoài ra, còn có các phần mềm ứng dụng được xây dựng dựa trên hệ quản trị cơ sở dữ liệu để việc khai thác CSDL trở nên thuận tiện hơn, đáp ứng các yêu cầu đa dạng của người dùng (h. 3).
Hình 3. Các thành phần của hệ cơ sở dữ liệu
Để lưu trữ và khai thác thông tin bằng máy tính cần phải có:
- Cơ sở dữ liệu;
- Hệ quản trị cơ sở dữ liệu;
- Các thiết bị vật lí (máy tính, đĩa cứng, mạng,...).
b) Các mức thể hiện của cơ sở dữ liệu
Để lưu trữ và khai thác thông tin một cách hiệu quả, các hệ CSDL được xây dựng và bảo trì dựa trên nhiều yếu tố kĩ thuật của máy tính. Tuy nhiên, muốn phục vụ cho nhiều người dùng, các hệ CSDL phải được thiết kế sao cho, bằng những tương tác đơn giản với hệ thống, người dùng có thể khai thác thông tin mà không cần biết đến những chi tiết kĩ thuật phức tạp. Như vậy, yêu cầu mức hiểu chi tiết về CSDL là khác nhau giữa những nhóm người làm việc với hệ CSDL trong những vai trò khác nhau. Có ba mức hiểu CSDL là mức vật lí, mức khái niệm, mức khung nhìn.
- Mức vật lí
Có những chuyên gia tin học cần hiểu một cách chi tiết dữ liệu được lưu trữ như thế nào, chẳng hạn, với CSDL Lớp, các tệp hồ sơ được lưu trữ trong vùng nhớ nào; dữ liệu về mỗi học sinh chiếm bao nhiêu byte?... Mức hiểu biết một hệ CSDL chi tiết đến như vậy gọi là mức vật lí của hệ CSDL đó. Một cách đơn giản, ta có thể nói CSDL vật lí của một hệ CSDL là tập hợp các tệp dữ liệu tồn tại trên các thiết bị nhớ.
Hình 4. Mức vật lí của CSDL
- Mức khái niệm
Nhóm người quản trị hệ CSDL hoặc phát triển các ứng dụng thường không cần hiểu chi tiết ở mức vật lí, nhưng họ cần phải biết: Những dữ liệu nào được lưu trữ trong hệ CSDL? Giữa các dữ liệu có các mối quan hệ nào? Chẳng hạn, với CSDL Lớp, họ cần biết với mỗi học sinh phải lưu các thông tin: họ tên, ngày sinh, giới tính, địa chỉ, là đoàn viên hay không, điểm các môn Toán, Lí, Hoá, Văn, Tin... Như vậy, CSDL Lớp có thể được mô tả như một bảng, mỗi cột là một thuộc tính, mỗi hàng tương ứng với dữ liệu về một học sinh.
Mức hiểu CSDL như vậy gọi là mức khái niệm.
Hình 5. Ví dụ về mức khái niệm của CSDL
- Mức khung nhìn
Khi khai thác CSDL, một người dùng có thể không quan tâm đến toàn bộ thông tin chứa trong CSDL mà chỉ cần một phần thông tin nào đó phù hợp với nghiệp vụ hay mục đích sử dụng của mình. Ví dụ, với CSDL Lớp, thông qua giao diện của chương trình ứng dụng, giáo viên chủ nhiệm của lớp nhìn thấy được các thông tin về học sinh của lớp này (h. 6).
Hình 6. Giao diện dành cho giáo viên chủ nhiệm
Trong khi đó, màn hình làm việc của giáo viên môn Tin học (h. 7) có thể sẽ không hiển thị các thuộc tính ngày sinh, giới tính, địa chỉ, là đoàn viên hay không mà chỉ hiển thị họ tên và điểm môn đó.
Hình 7. Giao diện dành cho giáo viên môn Tin học
Màn hình làm việc với CSDL dành cho giáo viên chủ nhiệm hay giáo viên bộ môn còn có thể hiển thị kết quả của các xử lí mang tính thống kê, tổng hợp từ dữ liệu lưu trữ, phù hợp với nhiệm vụ của mỗi người. Chẳng hạn giáo viên chủ nhiệm muốn biết điểm trung bình cộng tất cả các môn học của mỗi học sinh (h. 6), trong khi giáo viên bộ môn lại cần biết điểm trung bình cộng của cả lớp môn học mình giảng dạy và số học sinh đạt điểm trung bình môn trên 8,0 (h. 7).
Thể hiện phù hợp của CSDL cho mỗi người dùng được coi là một khung nhìn của CSDL. Người dùng làm việc với CSDL thông qua khung nhìn nên không cần biết đến những chi tiết kĩ thuật phức tạp và cũng không cần biết đầy đủ tất cả các thông tin được lưu trữ trong CSDL. Mức hiểu CSDL của người dùng thông qua khung nhìn được gọi là mức khung nhìn (còn được gọi là mức ngoài) của CSDL. Như vậy, một CSDL chỉ có một CSDL vật lí, một CSDL khái niệm nhưng có thể có nhiều khung nhìn khác nhau.
Ba mức hiểu về CSDL như trên cũng chính là ba mức mô tả và làm việc với CSDL, phù hợp với vai trò khác nhau của những người có liên quan đến hệ CSDL (h. 8).
Hình 8. Các mức thể hiện của CSDL
Giữa các mức mô tả CSDL đó phải có một sự tương ứng đúng đắn để đảm bảo cho hệ CSDL được xây dựng và khai thác tốt. Tạo lập và kiểm soát sự tương ứng đúng đắn này là trách nhiệm của những người thiết kế CSDL.
c) Các yêu cầu cơ bản của hệ cơ sở dữ liệu
Một hệ CSDL cần có cơ chế để có thể đảm bảo được những yêu cầu sau đây:
- Tính cấu trúc: Dữ liệu trong CSDL được lưu trữ theo một cấu trúc xác định. Ví dụ, CSDL Lớp có cấu trúc là bảng gồm nhiều hàng, nhiều cột. Mỗi cột là một thuộc tính và mỗi hàng là một hồ sơ học sinh.
- Tính toàn vẹn: Các giá trị dữ liệu được lưu trữ trong CSDL phải thoả mãn một số ràng buộc, tuỳ thuộc vào hoạt động của tổ chức mà CSDL phản ánh.
Ví dụ, mỗi thư viện đều có quy định về số sách nhiều nhất mà người đọc được mượn trong một lần, chẳng hạn số sách một người mượn không vượt quá năm cuốn. CSDL của một thư viện phải phù hợp với quy định hạn chế sách mượn của thư viện đó. Những ràng buộc kiểu như vậy được gọi là ràng buộc toàn vẹn dữ liệu.
- Tính nhất quán: Sau những thao tác cập nhật dữ liệu và ngay cả khi có sự cố (phần cứng hay phần mềm) xảy ra trong quá trình cập nhật, dữ liệu trong CSDL phải được đảm bảo đúng đắn.
Ví dụ, chương trình của một ngân hàng thực hiện việc chuyển 100 triệu đồng từ tài khoản A sang tài khoản B. Giả sử trong khi thực hiện chương trình đó, có một sự cố xảy ra (hỏng phần cứng, hỏng phần mềm hay mất điện), rất có thể số tiền còn ở tài khoản A đã bị trừ đi 100 triệu đồng nhưng số tiền còn bên tài khoản B chưa được cộng thêm, dẫn đến tình trạng không nhất quán của CSDL. Để tránh sự không nhất quán như vậy đối với CSDL thì hoặc cả hai hành động rút tiền khỏi A và nhập tiền vào B đều xảy ra hoặc không có hành động nào xảy ra cả. Nếu có nhiều cập nhật dữ liệu xảy ra cùng lúc, tương tác giữa chúng có thể dẫn đến các dữ liệu không nhất quán, chẳng hạn, nếu tại cùng một thời điểm có hai khách hàng cùng muốn đặt mua một vé còn lại duy nhất của chuyến bay X, ở hai đại lí bán vé máy bay. Khi truy cập vào CSDL về chuyến bay X đó, rất có thể cả hai đại lí đều tìm thấy và đồng ý bán chiếc vé duy nhất còn lại cho khách hàng của mình. Điều này có thể dẫn đến kết quả một chỗ ngồi trên chuyến bay X được bán cho hai khách hàng khác nhau. Hệ CSDL phải có cơ chế đảm bảo được tính nhất quán của dữ liệu, nghĩa là không để xảy ra những tình huống như vậy .
- Tính an toàn và bảo mật thông tin: CSDL cần được bảo vệ an toàn, phải ngăn chặn được những truy xuất không được phép và phải khôi phục được CSDL khi có sự cố ở phần cứng hay phần mềm. Mỗi nhóm người dùng CSDL có quyền hạn và mục đích sử dụng khác nhau. Cần phải có những nguyên tắc và cơ chế bảo mật khi trao quyền truy xuất dữ liệu cho người dùng.
Ví dụ, với CSDL Lớp, không thể cho phép bất cứ ai cũng được truy cập và sửa điểm của học sinh. Trong một công ti, những dữ liệu về hoạt động kinh doanh, chiến lược giá cả phải được bí mật, chỉ một số người có trách nhiệm mới được biết.
- Tính độc lập: Vì một CSDL thường phục vụ cho nhiều người dùng với những mục đích khai thác khác nhau nên dữ liệu cần phải độc lập với các ứng dụng, không phụ thuộc vào một vài bài toán cụ thể, không phụ thuộc vào phương tiện lưu trữ và xử lí. Có hai mức độc lập dữ liệu.
Khi cần thiết, để tăng hiệu quả hoặc đáp ứng yêu cầu mới của hệ thống, có thể một số yếu tố thuộc mức vật lí được thay đổi (chẳng hạn thay đĩa từ bằng đĩa quang hoặc dữ liệu được lưu trữ ở dạng nén). Nếu những thay đổi ở mức vật lí không dẫn đến phải viết lại các chương trình ứng dụng, không dẫn đến sự thay đổi các tương tác vốn có giữa những người dùng với CSDL thì ta nói rằng có một sự độc lập ở mức vật lí.
Cũng có khi ta cần thay đổi CSDL ở mức khái niệm, chẳng hạn đến lúc cần quản lí thêm thông tin về số thẻ bảo hiểm cho mỗi học sinh (vốn chưa được lưu trữ trong CSDL). Nếu thêm cột Thẻ BH (số thẻ bảo hiểm) vào bảng mô tả thông tin ở mức khái niệm (h. 9) mà các chương trình ứng dụng đang dùng về cơ bản không phải viết lại, thì ta nói rằng có một sự độc lập ở mức khái niệm. Trong ví dụ vừa nêu, khung nhìn của giáo viên chủ nhiệm cần thay đổi để hiển thị thêm số thẻ bảo hiểm cho mỗi học sinh. Nhưng khung nhìn cho các giáo viên bộ môn sẽ không cần thay đổi. Nghĩa là các chương trình ứng dụng chỉ cần chỉnh sửa ở một số môđun chứ không cần viết lại toàn bộ.
Tính độc lập của hệ CSDL nhằm tạo thuận lợi cho người dùng bằng cách giải phóng họ khỏi sự quan tâm đến những chi tiết cài đặt ở mức thấp.
Hình 9. Hồ sơ lớp đã bổ sung cột Thẻ BH
- Tính không dư thừa: Trong CSDL thường không lưu trữ những dữ liệu trùng lặp hoặc những thông tin có thể dễ dàng suy diễn hay tính toán được từ những dữ liệu đã có. Sự trùng lặp thông tin gây lãng phí bộ nhớ lưu trữ và dễ dẫn đến tình trạng không nhất quán thông tin.
Hình 10. Minh hoạ về sự dư thừa dữ liệu và cách khắc phục
Ví dụ, trong bảng ở hình 10a, ta thấy lặp đi lặp lại thông tin "tổ trưởng của tổ 1 là ..., tổ trưởng của tổ 2 là...". Để tránh sự dư thừa đó, người thiết kế CSDL ở mức khái niệm sẽ dùng hai bảng ở hình 106.
Một ví dụ khác để tránh dư thừa cho CSDL, điểm trung bình cộng mỗi môn học của cả lớp không cần lưu trữ trong CSDL Lớp. Thông tin này có thể được kết xuất từ dữ liệu trong CSDL Lớp và hiển thị trên khung nhìn cần thiết (h. 11).
Hình 11. Báo cáo tổng kết các môn
d) Một số ứng dụng
Việc xây dựng, phát triển và khai thác các hệ CSDL ngày càng nhiều hơn, đa dạng hơn trong hầu hết các lĩnh vực kinh tế, xã hội, giáo dục, y tế,...
- Cơ sở giáo dục và đào tạo cần quản lí thông tin người học, môn học, kết quả học tập,...
- Cơ sở kinh doanh cần có CSDL về thông tin khách hàng, sản phẩm, việc mua bán,...
- Cơ sở sản xuất cần quản lí dây chuyền thiết bị và theo dõi việc sản xuất các sản phẩm trong các nhà máy, hàng tồn trong kho hay cửa hàng và các đơn đặt hàng,...
- Tổ chức tài chính cần lưu thông tin về cổ phần, tình hình kinh doanh mua bán tài chính như cổ phiếu, trái phiếu,...
- Cơ quan điều hành các giao dịch qua thẻ tín dụng cần quản lí việc bán hàng bằng thẻ tín dụng và xuất ra báo cáo tài chính định kì (theo ngày, tuần, tháng, quý, năm,...).
- Ngân hàng cần quản lí các tài khoản, khoản vay, các giao dịch hằng ngày,...
- Hãng hàng không cần quản lí các chuyến bay, việc đăng kí vé và lịch bay,...
- Tổ chức viễn thông cần ghi nhận các cuộc gọi, hoá đơn hàng tháng, tính toán số dư cho các thẻ gọi trả trước,....
- Những ứng dụng khác.
Mỗi tổ chức như trên đều cần phải thiết kế và xây dựng một CSDL riêng. Mỗi CSDL đó không chỉ phục vụ tốt việc thực hiện nghiệp vụ mà còn hỗ trợ cho lãnh đạo ra các quyết định chính xác, kịp thời.
CÂU HỎI VÀ BÀI TẬP
1. Nêu một ứng dụng CSDL của một tổ chúc mà em biết.
2. Hãy phân biệt cơ sở dữ liệu với hệ quản trị cơ sở dữ liệu.
3. Giả sử phải xây dựng một CSDL để quản lí mượn/trả sách ở thư viện, theo em cần phải lưu trữ những thông tin gì? Hãy cho biết những việc phải làm để đáp ứng nhu cầu quản lí của người thủ thư.
4. Hãy nêu ví dụ minh hoạ cho một vài yêu cầu cơ bản đối với hệ CSDL.