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

No comments:

Post a Comment