Các mô hình dữ liệu sử dụng các biểu mẫu màn hình được người dùng tạo đặc biệt cho việc này. Mô hình cơ sở dữ liệu phân cấp

Như đã lưu ý, mô hình thông tin hiển thị thế giới thực thành một số khái niệm mà con người có thể đọc được hoàn toàn độc lập với các tham số của môi trường lưu trữ dữ liệu. Có nhiều cách tiếp cận để xây dựng các mô hình như vậy: mô hình đồ thị, mạng ngữ nghĩa, mô hình mối quan hệ thực thể, v.v. Phổ biến nhất trong số này đã được chứng minh là mô hình mối quan hệ thực thể, sẽ được thảo luận trong Chương 2.

Mô hình thông tin phải được ánh xạ vào mô hình dữ liệu hướng máy tính mà DBMS có thể hiểu được. Trong quá trình phát triển lý luận và công dụng thực tế cơ sở dữ liệu cũng như các công cụ công nghệ máy tính DBMS được tạo ra để hỗ trợ các mô hình dữ liệu khác nhau.

Đầu tiên, các mô hình dữ liệu phân cấp bắt đầu được sử dụng. Dễ dàng tổ chức, sẵn sàng trước kết nối nhất định giữa các thực thể, sự tương đồng với các mô hình dữ liệu vật lý giúp có thể đạt được hiệu suất chấp nhận được của các DBMS phân cấp trên các máy tính chậm với lượng bộ nhớ rất hạn chế. Tuy nhiên, nếu dữ liệu không có cấu trúc cây thì sẽ nảy sinh rất nhiều khó khăn khi xây dựng mô hình phân cấp và mong muốn đạt được hiệu suất mong muốn.

Các mô hình mạng cũng được tạo cho các máy tính có nguồn tài nguyên thấp. Đây là những cấu trúc khá phức tạp bao gồm các “bộ” - được đặt tên là cây hai cấp. “Bộ” được kết nối bằng cách sử dụng “bản ghi liên kết”, tạo thành chuỗi, v.v. Khi phát triển các mô hình mạng, nhiều “thủ thuật nhỏ” đã được phát minh để giúp tăng hiệu suất của DBMS, nhưng lại làm phức tạp đáng kể phần sau. Lập trình viên ứng dụng phải biết nhiều thuật ngữ, nghiên cứu một số ngôn ngữ DBMS nội bộ, trình bày chi tiết cấu trúc logic cơ sở dữ liệu để điều hướng giữa các phiên bản, bộ, bản ghi khác nhau, v.v. Một trong những nhà phát triển hệ điều hành UNIX đã nói " Cơ sở mạng- cái này là nhiều nhất đúng cách mất dữ liệu."

Sự phức tạp của việc sử dụng thực tế các DBMS mạng và phân cấp buộc chúng tôi phải tìm kiếm những cách khác để trình bày dữ liệu. Vào cuối những năm 60, các DBMS dựa trên các tệp đảo ngược đã xuất hiện, được đặc trưng bởi tính dễ tổ chức và sự hiện diện của các ngôn ngữ thao tác dữ liệu rất thuận tiện. Tuy nhiên, các DBMS như vậy có một số hạn chế về số lượng tệp để lưu trữ dữ liệu, số lượng kết nối giữa chúng, độ dài của bản ghi và số trường của nó.

Các mô hình phổ biến nhất hiện nay là các mô hình quan hệ, sẽ được thảo luận chi tiết trong Chương 3.

Tổ chức vật lý của dữ liệu có tác động lớn đến đặc tính hoạt động của cơ sở dữ liệu. Các nhà phát triển DBMS đang cố gắng tạo ra những sản phẩm hiệu quả nhất mô hình vật lý dữ liệu, cung cấp cho người dùng một hoặc một công cụ khác để tùy chỉnh mô hình cho cơ sở dữ liệu cụ thể. Sự đa dạng của các cách điều chỉnh mô hình vật lý của DBMS công nghiệp hiện đại không cho phép chúng ta xem xét chúng trong phần này.

Mô hình tổ chức cơ sở dữ liệu

1. Cách tiếp cận phân cấp để tổ chức cơ sở dữ liệu. Cơ sở dữ liệu phân cấp có dạng cây với các phần tử liên kết vòng cung và nút-dữ liệu. Cấu trúc phân cấp ngụ ý sự bất bình đẳng giữa các dữ liệu - một số dữ liệu hoàn toàn phụ thuộc vào dữ liệu khác. Tất nhiên, những cấu trúc như vậy đáp ứng rõ ràng yêu cầu của nhiều vấn đề, nhưng không phải tất cả, các vấn đề thực tế.

2. Mô hình dữ liệu mạng Trong cơ sở dữ liệu mạng, cùng với các kết nối dọc, các kết nối ngang cũng được triển khai. Tuy nhiên, nhiều bất cập về thứ bậc đã được kế thừa, trong đó nhược điểm chính là cần phải xác định rõ ràng trình độ thể chất kết nối dữ liệu và tuân thủ rõ ràng cấu trúc kết nối này khi truy vấn cơ sở dữ liệu.

3. Mô hình quan hệ. Mô hình quan hệ xuất hiện từ mong muốn làm cho cơ sở dữ liệu trở nên linh hoạt nhất có thể. Mô hình này cung cấp một cơ chế đơn giản và hiệu quả để duy trì liên kết dữ liệu.

Trước hết, tất cả dữ liệu trong mô hình được trình bày dưới dạng bảng và chỉ bảng. Mô hình quan hệ là mô hình duy nhất đảm bảo tính đồng nhất của việc trình bày dữ liệu. Cả các thực thể và các kết nối của chính các thực thể này đều được thể hiện trong mô hình theo cùng một cách - những cái bàn . Đúng, cách tiếp cận này làm phức tạp thêm sự hiểu biết về ý nghĩa của thông tin được lưu trữ trong cơ sở dữ liệu và kết quả là việc thao túng thông tin này.

Cho phép bạn tránh những khó khăn khi thao tác phần tử thứ hai mô hình - một ngôn ngữ hoàn chỉnh về mặt quan hệ (lưu ý rằng ngôn ngữ là một phần không thể thiếu của bất kỳ mô hình dữ liệu nào, nếu không có nó thì mô hình sẽ không tồn tại). Tính hoàn chỉnh của một ngôn ngữ khi được áp dụng cho một mô hình quan hệ có nghĩa là nó phải thực hiện bất kỳ phép toán nào của đại số quan hệ hoặc phép tính quan hệ (tính hoàn chỉnh của phép tính quan hệ đã được chứng minh bằng toán học bởi E.F. Codd). Hơn nữa, ngôn ngữ phải mô tả bất kỳ truy vấn nào về các thao tác trên bảng chứ không phải trên các hàng của chúng. Một ngôn ngữ như vậy là SQL.

Yếu tố thứ ba mô hình quan hệ yêu cầu mô hình quan hệ duy trì một số ràng buộc toàn vẹn. Một ràng buộc như vậy nêu rõ rằng mỗi hàng trong bảng phải có một giá trị nhất định định danh duy nhất, gọi điện khóa chính . Giới hạn thứ hai được áp dụng đối với tính toàn vẹn của các liên kết giữa các bảng. Nó tuyên bố rằng các thuộc tính bảng tham chiếu đến khóa chính của các bảng khác phải có một trong các giá trị khóa chính đó.

4. Mô hình hướng đối tượng. Các lĩnh vực sử dụng máy tính mới, chẳng hạn như nghiên cứu khoa học, máy tính hỗ trợ thiết kế và tự động hóa các tổ chức, cơ sở dữ liệu cần thiết để có thể lưu trữ và xử lý các đối tượng mới - thông tin văn bản, âm thanh và video cũng như tài liệu. Những khó khăn chính của mô hình hóa dữ liệu hướng đối tượng xuất phát từ thực tế là không tồn tại một công cụ toán học phát triển mà mô hình dữ liệu hướng đối tượng chung có thể dựa vào. Đây phần lớn là lý do tại sao vẫn chưa có mô hình hướng đối tượng cơ bản. Mặt khác, một số tác giả cho rằng không thể xác định được mô hình dữ liệu hướng đối tượng chung theo nghĩa cổ điển vì khái niệm cổ điển về mô hình dữ liệu không phù hợp với mô hình hướng đối tượng. Bất chấp những ưu điểm của hệ thống hướng đối tượng - triển khai các kiểu dữ liệu phức tạp, giao tiếp với các ngôn ngữ lập trình, v.v. - Ưu thế trong tương lai gần cơ sở dữ liệu quan hệđược đảm bảo.

5.3.3 Mô hình dữ liệu và mô hình khái niệm

Ở trên đã đề cập rằng một lược đồ được tạo bằng cách sử dụng một số ngôn ngữ định nghĩa dữ liệu. Trên thực tế, nó được tạo dựa trên ngôn ngữ định nghĩa dữ liệu của một DBMS mục tiêu cụ thể, đây là một ngôn ngữ tương đối cấp thấp; với sự trợ giúp của nó, rất khó để mô tả các yêu cầu dữ liệu sao cho sơ đồ được tạo có thể hiểu được đối với hầu hết người dùng. danh mục khác nhau. Để đạt được sự hiểu biết như vậy, cần phải tạo ra một mô tả mạch điện theo một số cách, hơn thế nữa. cấp độ cao, mà chúng ta sẽ gọi là mô hình dữ liệu. Trong trường hợp này, bằng mô hình dữ liệu, chúng ta sẽ hiểu một tập hợp các khái niệm tích hợp để mô tả dữ liệu, các kết nối giữa chúng và các hạn chế áp đặt đối với dữ liệu trong một phạm vi nhất định. lĩnh vực chủ đề.

Mô hình là sự thể hiện các đối tượng và sự kiện trong một lĩnh vực chủ đề cũng như các mối quan hệ tồn tại giữa chúng. Một mô hình dữ liệu có thể được coi là sự kết hợp của ba thành phần sau.

· Phần kết cấu, tức là một bộ quy tắc mà cơ sở dữ liệu có thể được xây dựng.

· Phần điều khiển, xác định các loại thao tác được phép với dữ liệu (bao gồm các thao tác cập nhật và truy xuất dữ liệu cũng như các thao tác thay đổi cấu trúc cơ sở dữ liệu).

· Một tập hợp các ràng buộc toàn vẹn dữ liệu đảm bảo tính chính xác của dữ liệu được sử dụng.

Mục đích của việc xây dựng mô hình dữ liệu là trình bày dữ liệu một cách dễ hiểu. Nếu có thể biểu diễn như vậy thì mô hình dữ liệu có thể dễ dàng áp dụng khi thiết kế cơ sở dữ liệu. Để thể hiện kiến ​​trúc ANSI-SPARC, có thể xác định ba kiến ​​trúc sau: mô hình liên quan dữ liệu:

· mô hình bên ngoài dữ liệu hiển thị chế độ xem của từng loại người dùng hiện có trong tổ chức;

· mô hình khái niệm dữ liệu, hiển thị chế độ xem logic (hoặc tổng quát) của dữ liệu, độc lập với loại DBMS được chọn;

· mô hình dữ liệu nội bộ hiển thị sơ đồ khái niệm theo một cách nào đó, có thể hiểu được bởi DBMS mục tiêu đã chọn.

Khá nhiều mô hình dữ liệu đã được đề xuất và xuất bản trong tài liệu. Chúng được chia thành ba loại: mô hình dữ liệu dựa trên đối tượng, mô hình dữ liệu dựa trên bản ghi và mô hình dữ liệu vật lý. Hai cái đầu tiên được sử dụng để mô tả dữ liệu ở cấp độ khái niệm và bên ngoài, và cái cuối cùng ở cấp độ bên trong.

Mô hình dữ liệu đối tượng Khi xây dựng mô hình đối tượng dữ liệu sử dụng các khái niệm như thực thể, thuộc tính và mối quan hệ. Thực thể là một thành phần riêng biệt (nhân viên, sản phẩm, khái niệm hoặc sự kiện) của một lĩnh vực chủ đề phải được thể hiện trong cơ sở dữ liệu. Thuộc tính là một thuộc tính mô tả một số khía cạnh của một đối tượng và giá trị của nó cần được nắm bắt và mối quan hệ là mối quan hệ kết hợp giữa các thực thể. Dưới đây là một số trong những hầu hết loại phổ biến mô hình dữ liệu đối tượng

    • Mô hình mối quan hệ thực thể hoặc mô hình ER.
    • Mô hình ngữ nghĩa.
    • Mô hình chức năng.
    • Mô hình hướng đối tượng.

Hiện nay, mô hình ER đã trở thành một trong những phương pháp chính để thiết kế cơ sở dữ liệu khái niệm. Mô hình hướng đối tượng mở rộng định nghĩa về một thực thể để bao gồm không chỉ các thuộc tính mô tả trạng thái của đối tượng mà còn cả các hành động liên quan đến nó, tức là. Thái độ của anh ta. Trong trường hợp này, đối tượng được cho là đóng gói trạng thái và hành vi.

Mô hình dữ liệu dựa trên bản ghi. Trong mô hình dựa trên bản ghi, cơ sở dữ liệu bao gồm một số bản ghi có định dạng cố định có thể được các loại khác nhau. Mỗi loại bản ghi xác định một số trường cố định, mỗi trường có độ dài cố định. Có ba loại mô hình dữ liệu logic dựa trên bản ghi chính: mô hình quan hệ mô hình dữ liệu quan hệ, mô hình dữ liệu mạng và mô hình phân cấp dữ liệu (mô hình dữ liệu phân cấp).

Có nhiều cách để triển khai các đơn vị dữ liệu cơ bản và do đó có nhiều mô hình dữ liệu được biết đến. Mô hình dữ liệu cung cấp các quy tắc để cấu trúc nó. Theo quy định, các thao tác trên dữ liệu có liên quan đến cấu trúc của chúng. Đẳng cấp mô hình hiện có dữ liệu tương ứng với nhiều ứng dụng và sở thích của người dùng.

Để biểu diễn dữ liệu, các mô hình dựa trên các hình thức biểu diễn thông tin được sử dụng. Những mô hình như vậy được gọi là cú pháp.

Trong tài liệu chuyên ngành có mô tả khá số lượng lớn các mô hình dữ liệu. Các phương pháp phân cấp, mạng và quan hệ được sử dụng rộng rãi. Ngoài chúng, nổi tiếng nhất là mô hình nhị phân và mạng ngữ nghĩa.

Mô hình dữ liệu cổ điển, được sử dụng lâu nhất được coi là dựa trên cấu trúc kiểu cây phân cấp(một đoạn được hiển thị trong Hình 10). Mô hình "cây có thứ tự" cũng thường được sử dụng, trong đó thứ tự tương đối của các cây con là đáng kể. Trong mô hình như vậy, mỗi đơn vị thông tin tiếp theo chỉ được liên kết với một đơn vị thông tin trước đó và những đơn vị thông tin trước đó có thể được liên kết với một số đơn vị thông tin tiếp theo.


Mô hình dữ liệu mạng dựa trên cách biểu diễn thông tin như vậy trong đó một đơn vị thông tin có thể được liên kết với một số đơn vị thông tin khác tùy ý (Hình 11).


Mô hình dữ liệu quan hệ dựa trên phương pháp bảng và các phương tiện trình bày và thao tác dữ liệu. Trong mô hình như vậy, thông tin về lĩnh vực chủ đề được hiển thị trong bảng được gọi là “mối quan hệ” (Hình 12). Một hàng trong bảng như vậy được gọi là bộ và một cột được gọi là thuộc tính. Mỗi thuộc tính có thể lấy một tập hợp con giá trị nhất định từ một khu vực - miền cụ thể.

Phần lớn các DBMS tập trung vào những máy tính cá nhân, là các hệ thống được xây dựng trên cơ sở mô hình dữ liệu quan hệ - DBMS quan hệ.

Mô hình dữ liệu nhị phân là một mô hình đồ thị trong đó các đỉnh phản ánh cách biểu diễn các thuộc tính đơn giản, rõ ràng và các cung biểu thị cách biểu diễn mối quan hệ nhị phân giữa các thuộc tính (Hình 13).


Mô hình nhị phân không được sử dụng rộng rãi, nhưng trong một số trường hợp nó cho thấy công dụng thực tế. Có, trong khu vực trí tuệ nhân tạo Nghiên cứu từ lâu đã được tiến hành để thể hiện thông tin dưới dạng quan hệ nhị phân.

Mạng ngữ nghĩađã được đề xuất làm mô hình dữ liệu bởi các nhà nghiên cứu làm việc trên nhiều vấn đề khác nhau trí tuệ nhân tạo. Giống như trong mô hình mạng và nhị phân, cấu trúc cơ bản web ngữ nghĩa có thể được biểu diễn bằng một đồ thị, tập hợp các đỉnh và cung của chúng tạo thành một mạng. Tuy nhiên, mạng ngữ nghĩa được thiết kế để biểu diễn và hệ thống hóa kiến ​​thức có tính chất rất tổng quát.

Do đó, bất kỳ mô hình đồ thị nào (ví dụ: đồ thị nhị phân có nhãn) đều có thể được coi là một mạng ngữ nghĩa nếu ban đầu nó được nêu rõ ràng ý nghĩa của các đỉnh và cung cũng như cách chúng được sử dụng.

Mạng ngữ nghĩa là nguồn ý tưởng mô hình hóa dữ liệu phong phú, cực kỳ hữu ích để giải quyết vấn đề biểu diễn các tình huống phức tạp. Chúng có thể được sử dụng độc lập hoặc kết hợp với các ý tưởng làm cơ sở cho các mô hình dữ liệu khác. Của họ tính năng thú vịĐó là khoảng cách được đo trên mạng (khoảng cách ngữ nghĩa, hay thước đo) đóng vai trò quan trọng trong việc xác định mức độ gần nhau của các khái niệm có liên quan với nhau. Đồng thời, có thể nhấn mạnh rõ ràng rằng khoảng cách ngữ nghĩa là lớn. Như thể hiện trong hình. 14, CỬA HÀNG tương quan với tính cách của NGƯỜI BÁN, đồng thời NGƯỜI BÁN CÓ TRỌNG LƯỢNG. Mối quan hệ giữa tính cách và chuyên môn là hiển nhiên, nhưng điều này không nhất thiết có nghĩa là mối quan hệ giữa CỬA HÀNG và TRỌNG LƯỢNG.


Phải nói rằng các mô hình dữ liệu như mạng ngữ nghĩa, với tất cả khả năng phong phú của chúng trong việc mô hình hóa các tình huống phức tạp, được đặc trưng bởi sự phức tạp và một số kém hiệu quả về mặt khái niệm.

Chúng ta hãy tìm hiểu chi tiết hơn về quan hệ, thứ bậc và mô hình mạng dữ liệu.

Mô hình quan hệ dữ liệu được đặc trưng bởi các thành phần sau:

– xây dựng thông tin: mối quan hệ với cấu trúc hai cấp độ;

– các thao tác hợp lệ: chiếu, chọn, kết nối và một số thao tác khác;

- những hạn chế: phụ thuộc chức năng giữa các thuộc tính của một mối quan hệ.

Mỗi lớp đối tượng R thế giới vật chất được đưa vào sự tương ứng với một tập hợp các thuộc tính nhất định, chẳng hạn MỘT 1 , MỘT 2 , ..., MỘT. Đối tượng riêng biệt lớp học Rđược mô tả bằng một chuỗi giá trị ( một 1, một 2, ..., MỘT), Ở đâu tôi- giá trị thuộc tính A tôi.

Đường kẻ ( một 1, một 2, ..., MỘT) được gọi là một bộ. Toàn bộ một lớp đối tượng có một tập hợp các bộ dữ liệu tương ứng được gọi là quan hệ. Chúng ta hãy biểu thị mối quan hệ mô tả lớp đối tượng R, cũng thông qua R.

Sự biểu lộ R(A 1, A 2, ..., MỘT) được gọi là lược đồ quan hệ R.

Đối với mỗi thành phần bộ, mối quan hệ của nó với thuộc tính tương ứng phải được chỉ định. Trong mô hình dữ liệu quan hệ, để đảm bảo kết nối này, thứ tự các thành phần của bộ trùng với thứ tự các thuộc tính trong lược đồ quan hệ.

Mỗi mối quan hệ phản ánh trạng thái của một lớp đối tượng tại một thời điểm nào đó. Vì vậy, một sơ đồ quan hệ trong những khoảnh khắc khác nhau các mối quan hệ khác nhau có thể tương ứng với thời gian.

Tập hợp các giá trị quan hệ có thể được biểu diễn dưới dạng bảng trong đó có các sự tương ứng sau:

– tên bảng và danh sách tên cột tương ứng với sơ đồ quan hệ;

– một hàng của bảng tương ứng với một bộ quan hệ;

– tất cả các hàng của bảng (và do đó tất cả các bộ) đều khác nhau;

– thứ tự các hàng và cột là tùy ý (đặc biệt, mô hình dữ liệu quan hệ không yêu cầu sắp xếp các hàng đặc biệt).

Việc mô tả các quá trình xử lý mối quan hệ có thể được thực hiện theo hai cách:

- chỉ ra danh sách các hoạt động, việc thực hiện chúng sẽ dẫn đến kết quả cần thiết (cách tiếp cận theo thủ tục),

– mô tả các thuộc tính mà quan hệ kết quả phải thỏa mãn (phương pháp khai báo).

Hãy xem xét cách tiếp cận thủ tục. Một tập hợp các quan hệ và các phép toán trên chúng được hình thành đại số quan hệ. Thông thường, danh sách các phép toán bao gồm phép chiếu, phép chọn, phép hợp, phép giao, phép trừ và phép nối.

Phép chiếu là một phép toán chuyển các cột của mối quan hệ ban đầu được chỉ định trong điều kiện hoạt động sang mối quan hệ kết quả. Biểu diễn đại số của phép chiếu có dạng

T = R[X],

Ở đâu R– thái độ ban đầu; T- mối quan hệ kết quả; X– danh sách các thuộc tính trong cấu trúc mối quan hệ T(điều kiện chiếu).

Hãy xem xét mối quan hệ 1, chứa thông tin về doanh số bán sản phẩm năm 2010 (Bảng 1).

Bảng 1

Thái độ T 1, chỉ chứa thông tin về phát hành thực tế sản phẩm, thu được là kết quả của việc thực hiện phép chiếu

T 1 = Ô 1[Cửa hàng, Sản phẩm, Sự thật]

và trông giống như một cái bàn. 2.

ban 2

Các cột có thể được chỉ định theo bất kỳ thứ tự nào:

T 1 = VỀ 1 [Sản phẩm, Cửa hàng, Sự thật].

Lựa chọn là một thao tác chuyển sang mối quan hệ kết quả những hàng từ mối quan hệ ban đầu thỏa mãn điều kiện lựa chọn. Điều kiện lựa chọn được kiểm tra trên từng hàng của mối quan hệ riêng lẻ và không thể trải rộng thông tin trên nhiều hàng. Có hai loại điều kiện lấy mẫu đơn giản nhất:

1) Tên thuộc tính 1<знак сравнения>Giá trị cho phép có dấu so sánh =, #, >, ≥<, ≤. Например: Цена > 100.

Tên thuộc tính phải được chứa trong cấu trúc quan hệ nguồn. Ký hiệu đại số cho mẫu có dạng

T = R[P],

Ở đâu R– thái độ ban đầu; T- mối quan hệ kết quả; R- điều kiện lấy mẫu.

Ví dụ: chúng tôi nhận được các giá trị T 2 = VỀ 1 [Sản phẩm = “P 1”] (Bảng 3).

bàn số 3

Các phép toán hợp, giao và trừ được thực hiện trên hai quan hệ ban đầu có cùng cấu trúc.

Chúng ta hãy biểu thị các mối quan hệ ban đầu bằng R 1 và R 2 , kết quả - thông qua T.

Một hiệp hội T = bạn(R 1 , R 2) chứa các hàng có liên quan R 1, hoặc trong R 2 .

Ngã tư T = TÔI(R 1 , R 2) chứa các hàng có trong quan hệ R 1 và R 2 cùng một lúc.

Phép trừ T = M(R 1 , R 2) chứa các dòng từ R 1 cái còn thiếu trong R 2 .

Một thao tác nối quan hệ được thực hiện trên hai quan hệ nguồn và tạo ra một quan hệ kết quả. Mỗi hàng của mối quan hệ nguồn đầu tiên được so sánh lần lượt với tất cả các hàng của mối quan hệ thứ hai và nếu điều kiện nối được đáp ứng cho cặp hàng này thì chúng được nối và tạo thành hàng tiếp theo trong mối quan hệ kết quả. Điều kiện kết nối có dạng

Tên thuộc tính 1<знак сравнения>Tên thuộc tính 2,

trong đó Tên thuộc tính 1 nằm trong một mối quan hệ nguồn và Tên thuộc tính 2 nằm trong một mối quan hệ nguồn khác. Chúng ta sẽ sử dụng ký hiệu sau cho thao tác nối:

T = R tôi [ P] R 2 ,

Ở đâu R 1 và R 2 – quan hệ ban đầu; T- mối quan hệ kết quả; R- điều kiện kết nối.

Một trong những trường hợp kết nối đặc biệt quan trọng nhất được gọi là kết nối tự nhiên và có Các tính năng sau đây:

– dấu so sánh ở điều kiện kết nối là “=”;

– Tên thuộc tính 1 và Tên thuộc tính 2 phải khớp nhau, hay nói đúng hơn là chứa phần giao nhau của danh sách thuộc tính của quan hệ nguồn;

– danh sách các thuộc tính của quan hệ kết quả được hình thành do kết hợp danh sách các thuộc tính của quan hệ ban đầu.

Việc chỉ định một hợp chất tự nhiên không chứa điều kiện phức hợp và có dạng T = R tôi* R 2 .

Cách tiếp cận khai báođể xử lý Cơ sở dữ liệu quan hệ dữ liệu dựa trên việc giải thích các khái niệm và phương pháp logic toán học. Đặc biệt, phép tính quan hệ dựa trên phép tính vị từ. Hãy nêu tên các khái niệm logic toán học cần thiết cho phép tính quan hệ.

1. Ký hiệu biến, hằng. Trong cấu trúc ngôn ngữ của phép tính quan hệ, chúng tương ứng với tên của các thuộc tính và biến cũng như các hằng số.

2. Liên từ logic “and”, “or”, “not” và dấu so sánh =, # (không bằng), >,<, ≥, ≤.

3. Các thuật ngữ, tức là bất kỳ hằng số và biến nào, cũng như các hàm có đối số là các thuật ngữ.

4. Công thức cơ bản là các vị từ có đối số là các thuật ngữ. Các vị từ được kết nối bằng các phép toán “và”, “hoặc”, “không” cũng là các công thức cơ bản. Ví dụ: các công thức cơ bản là các biểu thức Họ = “Petrov” và Số tiền ≤ Tổng.

5. Công thức, tức là kết quả của việc áp dụng các định lượng tổng quát hoặc tồn tại cho các công thức cơ bản. Công thức tương ứng với một truy vấn tới cơ sở dữ liệu quan hệ, được biểu thị dưới dạng phép tính quan hệ.

Nhiệm vụ chính của việc thiết kế cơ sở dữ liệu EIS là xác định số lượng mối quan hệ (hoặc các đơn vị thông tin cấu thành khác) và thành phần thuộc tính của chúng.

Bài toán nhóm các thuộc tính thành các mối quan hệ, tập hợp các thuộc tính này không cố định trước, cho phép có nhiều giải pháp khác nhau. Các phương án nhóm hợp lý phải tính đến các yêu cầu sau:

– tập hợp các mối quan hệ phải đảm bảo sự dư thừa tối thiểu trong việc trình bày thông tin;

– việc điều chỉnh các mối quan hệ không được dẫn đến sự mơ hồ hoặc mất thông tin;

– Việc tái cấu trúc tập hợp các mối quan hệ khi thêm các thuộc tính mới vào cơ sở dữ liệu phải ở mức tối thiểu.

Chuẩn hóa là một trong những phương pháp chuyển đổi quan hệ được nghiên cứu nhiều nhất, cho phép cải thiện các đặc tính của cơ sở dữ liệu theo các tiêu chí được liệt kê.

Có nhiều hạn chế đối với các giá trị được lưu trữ trong cơ sở dữ liệu quan hệ. Việc tuân thủ những hạn chế này ở các khía cạnh cụ thể có liên quan đến sự hiện diện của cái gọi là các hình thức thông thường. Quá trình chuyển đổi các mối quan hệ cơ sở dữ liệu sang dạng thông thường này hoặc dạng thông thường khác được gọi là chuẩn hóa mối quan hệ . Các dạng thông thường được đánh số tuần tự từ 1 theo thứ tự tăng dần. Số biểu mẫu thông thường càng lớn thì càng phải tuân thủ nhiều hạn chế đối với các giá trị được lưu trữ ở khía cạnh liên quan.

Các ràng buộc điển hình của mô hình dữ liệu quan hệ là các phụ thuộc chức năng và đa giá trị, cũng như tính tổng quát của chúng. Về nguyên tắc, tập hợp các hạn chế bổ sung có thể tăng lên và do đó số lượng các hình thức thông thường sẽ tăng lên. Các hạn chế được áp dụng nhằm mục đích giảm thông tin dư thừa trong cơ sở dữ liệu quan hệ.

Mối quan hệ ở dạng chuẩn thứ nhất (1NF) là mối quan hệ thông thường có cấu trúc hai cấp. Các dạng chuẩn tiếp theo (thứ hai và thứ ba) sử dụng các hạn chế liên quan đến khái niệm phụ thuộc hàm. Các phụ thuộc hàm được xác định cho các thuộc tính có cùng quan hệ thỏa mãn 1NF.

Trường hợp đơn giản nhất của sự phụ thuộc hàm bao gồm hai thuộc tính. Trong một mối quan hệ R(MỘT, B, ..., J) thuộc tính MỘT xác định một cách chức năng một thuộc tính TRONG, nếu tại bất kỳ thời điểm nào mỗi giá trị MỘT TRONG(ký hiệu là MỘTTRONG).

Nói cách khác, TRONG về mặt chức năng phụ thuộc vào MỘT (TRONG = f(MỘT)). Việc chỉ định đầu tiên trở nên thuận tiện hơn khi số lượng phụ thuộc chức năng tăng lên và mối quan hệ của chúng trở nên khó phân biệt; nó sẽ được sử dụng trong tương lai. Sự vắng mặt của sự phụ thuộc chức năng được biểu thị là MỘTTRONG.

Đối với thuộc tính MỘTTRONG một số mối quan hệ, các tình huống sau đây có thể xảy ra:

– thiếu sự phụ thuộc chức năng;

- Khả dụng MỘTTRONG(hoặc TRONGMỘT), nhưng không phải cả hai phần phụ thuộc cùng nhau;

– sự hiện diện của sự tương ứng một-một MỘTTRONG.

Khái niệm về sự phụ thuộc hàm mở rộng đến các tình huống có từ ba thuộc tính trở lên ở dạng sau. Nhóm thuộc tính ( MỘT, TRONG, VỚI) xác định chức năng thuộc tính D trong một mối quan hệ T(MỘT, B, C, D, ..., J), nếu mỗi tổ hợp giá trị<một, b, Với> khớp với một giá trị d (MỘT- nghĩa MỘT; b- nghĩa TRONG; Với- nghĩa VỚI; d- nghĩa D). Sự hiện diện của sự phụ thuộc chức năng như vậy sẽ được biểu thị bằng MỘT, TRONG, VỚID.

Sự tồn tại của các phụ thuộc chức năng gắn liền với các phương pháp mã hóa thuộc tính được sử dụng. Vì vậy, đối với nhiều tổ chức, có thể lập luận rằng mỗi bộ phận (với tư cách là đối tượng của lĩnh vực chuyên môn) thuộc về một tổ chức duy nhất. Tuy nhiên, điều này chưa đủ để chứng minh sự phụ thuộc chức năng của Phòng → Cơ quan. Nếu trong mỗi cơ quan, các phòng ban được đánh số tuần tự, bắt đầu bằng 1 thì mối quan hệ chức năng là không chính xác. Nếu mã khoa, ngoài số, còn chứa mã cơ quan (hoặc tính duy nhất của các mã được đảm bảo theo cách khác), thì mối quan hệ chức năng Phòng → Cơ quan là hợp lệ.

Đối với một chỉ báo có nhiều thuộc tính thuộc tính R = (R 1 , R 2 , ..., P n) và thuộc tính cơ sở Q sự phụ thuộc chức năng là hợp lệ RQ, mặc dù không thể nói rằng đây là sự phụ thuộc duy nhất vào các thuộc tính đã chỉ định.

Có thể là manh mối quan hệ là một tập hợp các thuộc tính như vậy, mỗi tổ hợp giá trị của chúng chỉ xuất hiện trong một hàng của quan hệ và không có tập hợp con thuộc tính nào có thuộc tính này. Có thể có một số khóa có thể có trong một mối quan hệ. Tầm quan trọng của chúng trong việc xử lý dữ liệu được xác định bởi thực tế là việc lấy mẫu theo giá trị đã biết của khóa có thể xảy ra sẽ dẫn đến một hàng quan hệ hoặc không có hàng nào.

Trong thực tế, các thuộc tính của khóa có thể xảy ra của một quan hệ được liên kết với các thuộc tính của các đối tượng và sự kiện đó về thông tin được lưu trữ trong quan hệ. Nếu do điều chỉnh mối quan hệ mà tên của các thuộc tính tạo thành khóa bị thay đổi thì thông tin sẽ bị sai lệch nghiêm trọng. Do đó, việc kiểm tra một cách có hệ thống các thuộc tính của khóa có thể xảy ra sẽ giúp kiểm soát độ tin cậy của thông tin trong một mối quan hệ.

Khi có nhiều khóa dự tuyển trong một quan hệ, việc quan sát chúng đồng thời là rất khó khăn. Nên chọn một trong số chúng làm cái chính (chính). Khóa chính Một mối quan hệ được gọi là khóa có thể xảy ra, các giá trị của nó được sử dụng để kiểm soát độ tin cậy của thông tin trong mối quan hệ.

Đối với thông tin kinh tế, trong phần lớn các trường hợp, các mối quan hệ thu được từ các tài liệu kinh tế hiện có đều chứa một khóa có thể xảy ra duy nhất, cũng là khóa chính. Điều này là do nội dung của các tài liệu kinh tế được mọi người sử dụng hiểu như nhau. Trong phần tiếp theo chúng ta sẽ chỉ ghi nhớ những mối quan hệ như vậy. Sự hiện diện của hai hoặc nhiều manh mối có thể xảy ra trong mối quan hệ với thông tin có ý nghĩa có thể được giải thích bằng sự hiện diện của một số cách giải thích cùng một dữ liệu. Khóa chính thường được gọi đơn giản là khóa.

Trong các mối quan hệ có số lượng hàng lớn, việc tìm khóa chính bằng cách áp dụng trực tiếp định nghĩa là khá khó khăn. Ngoài ra, ở giai đoạn thiết kế EIS, giá trị của nhiều mối quan hệ đơn giản là không xác định được, vì vậy trên thực tế, khóa chính của mối quan hệ được tính toán dựa trên các phụ thuộc chức năng hiện có.

Mỗi giá trị khóa chính chỉ xuất hiện trong một hàng của mối quan hệ. Giá trị của bất kỳ thuộc tính nào trong dòng này cũng là duy nhất. Nếu thông qua ĐẾN biểu thị các thuộc tính của khóa chính trong quan hệ R(MỘT, B, C, ..., J), thì các phụ thuộc hàm sau là hợp lệ: ĐẾNMỘT, ĐẾNTRONG, ĐẾNVỚI, ..., ĐẾNJ. Một tập hợp các thuộc tính khóa chính có chức năng xác định bất kỳ thuộc tính nào của mối quan hệ. Điều ngược lại cũng đúng: nếu tìm thấy một nhóm thuộc tính xác định chức năng tất cả các thuộc tính của mối quan hệ một cách riêng lẻ và nhóm này không thể giảm bớt thì khóa chính của mối quan hệ sẽ được tìm thấy.

Đối với tập hợp ban đầu của các phụ thuộc hàm, có một số mẫu, kiến ​​thức về chúng cho phép người ta thu được các phụ thuộc dẫn xuất. Hãy lưu ý một số trong số họ:

- Nếu như MỘT, TRONGMỘT, sau đó MỘT, TRONGTRONG;

- MỘTTRONGMỘTVỚI khi đó và chỉ khi nào MỘTMặt trời;

- Nếu như MỘTTRONGTRONGVỚI, Cái đó MỘTVỚI;

- Nếu như MỘTTRONG, Cái đó ACTRONG (VỚI tùy ý);

- Nếu như MỘTTRONG, Cái đó ACMặt trời (VỚI tùy ý);

- Nếu như MỘTTRONGMặt trờiD, Cái đó ACD.

Nếu biết trước rằng chỉ có một khóa có thể xảy ra trong một quan hệ thì có thể tìm thấy nó một cách đơn giản. Khóa có thể xảy ra (nếu nó là duy nhất, tức là khớp với khóa chính) là một tập hợp các thuộc tính không xuất hiện ở phía bên phải của tất cả các phụ thuộc chức năng. Nói cách khác, từ danh sách đầy đủ các thuộc tính quan hệ, cần phải xóa các thuộc tính nằm ở bên phải của tất cả các phụ thuộc hàm. Các thuộc tính còn lại tạo thành khóa chính.

Một mối quan hệ ở dạng chuẩn thứ hai (2NF) nếu nó tương ứng với 1NF và không chứa các phụ thuộc hàm không đầy đủ.

Một phần phụ thuộc hàm không đầy đủ bao gồm hai phần phụ thuộc:

– một khóa quan hệ có thể xảy ra có chức năng xác định một số thuộc tính không phải khóa,

– một phần của khóa có thể xác định về mặt chức năng cùng một thuộc tính không phải khóa.

Một mối quan hệ không tuân thủ 2NF được đặc trưng bởi sự dư thừa dữ liệu được lưu trữ. Cơ sở dữ liệu ở dạng 2NF nếu tất cả các quan hệ của nó ở dạng 2NF.

Một quan hệ tương ứng với 3NF nếu nó tương ứng với 2NF và không có sự phụ thuộc hàm bắc cầu (FD) nào giữa các thuộc tính của nó.

Luật liên bang chuyển tiếp bao gồm hai luật liên bang:

– một khóa quan hệ có thể xảy ra xác định một cách chức năng một thuộc tính không phải khóa;

– Thuộc tính này có chức năng xác định một thuộc tính không khóa khác.

Nếu như ĐẾN– chìa khóa của mối quan hệ, MỘT, TRONG– thuộc tính không khóa và ĐẾNMỘT, MỘTTRONG là luật liên bang công bằng thì chúng có tính bắc cầu. Trường hợp đặc biệt của luật liên bang chuyển tiếp là luật liên bang chưa hoàn chỉnh, khi ĐẾN = VỚI, EĐẾNE, EMỘT.

Cơ sở dữ liệu ở dạng 3NF nếu tất cả các quan hệ của nó ở dạng 3NF.

Cơ sở dữ liệu quan hệ, thường tương ứng với dạng chuẩn thứ ba, được đặc trưng bởi một số thuộc tính, kiến ​​thức về chúng tạo điều kiện thuận lợi và hợp lý hóa các quy trình xử lý dữ liệu. Việc thực hiện các truy vấn cơ sở dữ liệu bằng cách sử dụng các toán tử đại số quan hệ có thể được mô tả bằng các quy tắc sau.

1. Trong quá trình xây dựng yêu cầu bằng lời nói, hãy đánh dấu tên của các thuộc tính tạo nên lớp vỏ, đầu vào và đầu ra của yêu cầu, cũng như các điều kiện lựa chọn.

2. Sửa nhiều thuộc tính shell. Nếu tất cả các thuộc tính cần thiết đều nằm trong một quan hệ bất kỳ thì các thao tác lựa chọn và chiếu tiếp theo chỉ được thực hiện với quan hệ đó. Nếu các thuộc tính bắt buộc được phân phối trên nhiều mối quan hệ thì các mối quan hệ này phải được kết nối. Mỗi cặp quan hệ được kết nối bởi điều kiện đẳng thức của các thuộc tính có tên trùng khớp (hoặc được xác định trên một miền chung). Sau mỗi lần kết nối, bằng cách sử dụng phép chiếu, bạn có thể cắt bỏ các thuộc tính không cần thiết cho các thao tác tiếp theo.

4. Nếu một truy vấn có thể được chia thành các phần (truy vấn con), thì việc triển khai nó cũng được chia thành các phần, trong đó kết quả của mỗi truy vấn con là một mối quan hệ riêng biệt.

5. Chuỗi hành động này là tiêu chuẩn nhưng có thể tạo ra các mối quan hệ trung gian quá lớn. Nhược điểm này có thể được bù đắp bằng cách thực hiện một số lựa chọn và phép chiếu trên các quan hệ ban đầu (trước khi thực hiện phép nối) và thay đổi thứ tự tương đối của các phép nối được yêu cầu.

Cơ sở dữ liệu mạngđược biểu diễn dưới dạng một tập hợp các mối quan hệ và quan hệ người hâm mộ. Các mối quan hệ được chia thành chính và phụ thuộc.

Quan hệ người hâm mộ W(R, S) là một cặp quan hệ bao gồm một quan hệ chính ( R), một mối quan hệ phụ thuộc ( S) và các kết nối giữa chúng, với điều kiện là mỗi giá trị của quan hệ phụ thuộc được liên kết với một giá trị duy nhất của quan hệ chính. Điều kiện này là một đặc điểm hạn chế của toàn bộ mô hình dữ liệu mạng. Cách thực hiện giới hạn này trong bộ nhớ máy tính là khác nhau đối với các DBMS mạng khác nhau.

Các hoạt động được phép trong mô hình dữ liệu mạng thể hiện các tùy chọn lấy mẫu khác nhau.

Cơ sở dữ liệu mạng, tùy thuộc vào các hạn chế trong việc đưa các mối quan hệ vào mối quan hệ với người hâm mộ, được chia thành mạng hai cấp và mạng đa cấp.

Hạn chế của mạng hai cấp là mỗi mối quan hệ có thể tồn tại ở một trong các vai trò sau:

– bên ngoài bất kỳ mối quan hệ với người hâm mộ nào;

– là mối quan hệ chính trong bất kỳ mối quan hệ người hâm mộ nào;

– như một mối quan hệ phụ thuộc trong bất kỳ số lượng mối quan hệ người hâm mộ nào.

Nghiêm cấm một mối quan hệ tồn tại như một mối quan hệ chính trong một bối cảnh và đồng thời là mối quan hệ phụ thuộc trong một bối cảnh khác.

Mạng đa cấp không cung cấp bất kỳ hạn chế nào đối với việc kết nối các mối quan hệ quạt; trong một số DBMS mạng, thậm chí cả cấu trúc mạng tuần hoàn cũng được cho phép.

Đối với các DBMS mạng hai cấp, hai hạn chế nữa được đưa ra (theo quan điểm lý thuyết, tùy chọn):

– khóa chính của quan hệ chính chỉ có thể là một thuộc tính;

– một quan hệ quạt tồn tại nếu khóa chính của quan hệ chính là một phần của khóa chính của quan hệ phụ thuộc.

Để tổ chức mối quan hệ hình quạt trong bộ nhớ máy tính, một thuộc tính bổ sung gọi là địa chỉ giao tiếp được đưa vào cấu trúc của mối quan hệ chính và phụ thuộc. Các giá trị địa chỉ liên lạc phối hợp với nhau để đảm bảo rằng mỗi giá trị quan hệ phụ thuộc tương ứng trong một quan hệ quạt Sđến một giá trị duy nhất của mối quan hệ chính R.

Giá trị của một tỷ lệ khi được lưu trữ trong bộ nhớ máy tính thường được gọi là bản ghi. Địa chỉ liên lạc là một thuộc tính trong bản ghi lưu trữ địa chỉ bắt đầu hoặc số của bản ghi tiếp theo sẽ được xử lý.

Mối liên hệ giữa các giá trị của quan hệ phụ thuộc và giá trị đơn của quan hệ chính trong trường hợp đơn giản nhất được đảm bảo như sau. Địa chỉ liên kết của một bản ghi quan hệ chính nhất định trỏ đến một trong các bản ghi quan hệ phụ thuộc (giá trị của địa chỉ liên kết quan hệ chính là địa chỉ bắt đầu của bản ghi quan hệ phụ thuộc đó), địa chỉ liên kết của bản ghi quan hệ phụ thuộc được chỉ định trỏ tới bản ghi quan hệ phụ thuộc tiếp theo. bản ghi quan hệ phụ thuộc được liên kết với cùng một bản ghi quan hệ chính, v.v. Bản ghi quan hệ phụ thuộc cuối cùng trong chuỗi này đề cập đến bản ghi quan hệ chính có tên ở trên. Điều này dẫn đến một cấu trúc vòng gồm các địa chỉ liên lạc được gọi là như một người hâm mộ, trong đó vai trò “tay cầm” của người hâm mộ được thực hiện bằng cách ghi lại mối quan hệ chính. Trong hình minh họa bằng đồ họa, địa chỉ liên lạc được mô tả bằng một mũi tên hướng từ địa chỉ liên lạc của một bản ghi nhất định đến bản ghi có địa chỉ (số) bắt đầu đóng vai trò là giá trị của địa chỉ liên lạc này.

Có những quy ước tiêu chuẩn về cách bao gồm và loại trừ dữ liệu trong mối quan hệ với người hâm mộ. Phương pháp kích hoạt có thể được mô tả là tự động hoặc không tự động.

Phương pháp tự động chỉ ra rằng khi một giá trị mới của quan hệ chính xuất hiện, nó ngay lập tức được đưa vào tương ứng với một giá trị nào đó của quan hệ phụ thuộc và tạo thành một phần tử mới của quan hệ quạt. Việc không tuân thủ quy tắc này là điển hình của phương pháp không tự động.

Các phương pháp loại trừ có thể là bắt buộc hoặc tùy chọn. Trong phương pháp bắt buộc, khi một giá trị được đưa vào quan hệ chính, nó sẽ trở thành thành viên cố định của quan hệ chính. Nó có thể được cập nhật nhưng không thể xóa khỏi mối quan hệ. Phương thức tùy chọn cho phép bạn xóa bất kỳ giá trị nào khỏi mối quan hệ cơ bản.

Từ sự tương tự của các định nghĩa về quan hệ quạt và sự phụ thuộc hàm, phát biểu sau: nếu có quan hệ quạt thì khóa của quan hệ phụ thuộc sẽ xác định chức năng khóa của quan hệ chính và ngược lại, nếu khóa của một quan hệ Mối quan hệ xác định về mặt chức năng khóa của mối quan hệ thứ hai, sau đó mối quan hệ thứ nhất có thể phụ thuộc và mối quan hệ thứ hai – main theo một cách nào đó giống như cái quạt.

Trong sơ đồ cơ sở dữ liệu mạng, các mối quan hệ và mối quan hệ quạt thường được coi là các tệp và kết nối, điều này cho phép cấu trúc mạng được xem như một tập hợp các tệp

F = {F tôi ( X 1), F 2 (X 2), ..., tôi(X tôi), ..., Fn(Xn)},

Ở đâu X tôi– thuộc tính quan trọng trong tập tin tôi.

Ngoài ra, một biểu đồ cấu trúc mạng được giới thiệu TRONG có đỉnh ( X tôi, X 2 , ..., X tôi, ..., Xn). vòng cung<X tôi, Xj> trong cột TRONG tồn tại nếu X tôi là một phần Xjfj[X tôi] là một tập hợp con tôi. Điều kiện cuối cùng có cùng ý nghĩa với việc đưa các quan hệ về mặt cú pháp vào mô hình dữ liệu quan hệ. Điều này giả định rằng khóa tệp chính được chứa trong tệp phụ thuộc. đồ thị TRONG tương tự như biểu đồ kết nối cho cơ sở dữ liệu quan hệ.

Cơ sở dữ liệu cơ sở dữ liệu gọi điện không theo chu kỳ, nếu giữa hai đỉnh bất kỳ trên đồ thị TRONG có nhiều nhất một đường đi. Mạng hai lớp luôn không theo chu kỳ .

Đối với nhiều tập tin F cơ sở dữ liệu tuần hoàn cơ sở dữ liệu hoạt động khá áp dụng

tôi(cơ sở dữ liệu) = F 1 & F 2 & ... & tôi & ...& Fn,

gọi điện giao lộ tối đa. Điểm tương tự của nó có thể là một chuỗi các kết nối trong cơ sở dữ liệu quan hệ.

Trong các DBMS mạng, số lượng thao tác lấy mẫu khá lớn. Các chức năng hoạt động chiếu cho DBMS mạng thực hiện mô tả lược đồ con cơ sở dữ liệu mạng. Lược đồ cơ sở dữ liệu mạng là mô tả của tất cả các mối quan hệ cho biết thành phần thuộc tính và khóa của từng mối quan hệ, cũng như các mối quan hệ của người hâm mộ. Trong chương trình ứng dụng, có thể khai báo một phần các mối quan hệ của cơ sở dữ liệu mạng, trong mỗi mối quan hệ - một tập hợp con các thuộc tính nhất định (với việc giữ lại bắt buộc các thuộc tính chính) và chỉ một số mối quan hệ quạt. Mô tả dữ liệu tương ứng được gọi là lược đồ con. Các mối quan hệ, mối quan hệ người hâm mộ và các thuộc tính không được chỉ định trong lược đồ con sẽ không thể truy cập được vào chương trình ứng dụng. Không giống như thao tác chiếu, cơ sở dữ liệu tương ứng với lược đồ con không được tạo về mặt vật lý mà bằng cách hạn chế quyền truy cập vào cơ sở dữ liệu nguồn được xác định trong lược đồ.

Kết quả của các kết nối hợp lệ thực sự được ghi lại trong DBMS mạng bằng cách sử dụng chuỗi địa chỉ liên lạc. Việc truy cập vào kết quả của một phép nối có thể bắt đầu từ một số quan hệ chính đến một nhóm giá trị trong quan hệ phụ thuộc tương ứng, các giá trị khóa đạt được trong quan hệ phụ thuộc được ghi nhớ và sử dụng để tìm kiếm trong một số quan hệ chính khác; từ mối quan hệ chính này có thể chuyển sang một mối quan hệ phụ thuộc mới, v.v.

Mô hình phân cấp dữ liệu có nhiều điểm tương đồng với mô hình dữ liệu mạng, thậm chí còn xuất hiện sớm hơn về mặt thời gian. Cấu trúc thông tin hợp lệ trong mô hình dữ liệu phân cấp là quan hệ, quan hệ quạt và cơ sở dữ liệu phân cấp. Không giống như các mô hình dữ liệu đã thảo luận trước đây, trong đó người ta giả định rằng ánh xạ thông tin của một lĩnh vực chủ đề là một cơ sở dữ liệu, mô hình phân cấp cho phép ánh xạ một lĩnh vực chủ đề vào một số cơ sở dữ liệu phân cấp.

Các khái niệm về quan hệ và quan hệ quạt trong mô hình dữ liệu phân cấp không thay đổi.

Cơ sở dữ liệu phân cấp là một tập hợp các mối quan hệ và mối quan hệ người hâm mộ đáp ứng hai hạn chế:

1) có một quan hệ duy nhất, được gọi là gốc, không phụ thuộc vào bất kỳ quan hệ quạt nào;

2) tất cả các quan hệ khác (trừ gốc) là các quan hệ phụ thuộc chỉ trong một quan hệ quạt.

Sơ đồ cơ sở dữ liệu phân cấp có cấu tạo giống hệt với cơ sở dữ liệu mạng. Các hạn chế trên được hỗ trợ bởi các DBMS phân cấp.

Ràng buộc được duy trì trong mô hình dữ liệu phân cấp là không thể vi phạm các yêu cầu xuất hiện trong định nghĩa của cơ sở dữ liệu phân cấp. Hạn chế này được đảm bảo bằng sự sắp xếp đặc biệt của các giá trị quan hệ trong bộ nhớ máy tính. Dưới đây chúng ta sẽ xem xét một trong những cách triển khai đơn giản nhất để bố trí cơ sở dữ liệu phân cấp.

Cần lưu ý rằng có nhiều khả năng khác nhau để chuyển qua các giá trị được sắp xếp theo cấp bậc theo trình tự tuyến tính. Nguyên tắc được sử dụng cho cơ sở dữ liệu phân cấp được gọi là đoạn cuối. Hãy liệt kê các quy tắc của nó.

1. Bắt đầu từ giá trị đầu tiên của mối quan hệ gốc, các giá trị đầu tiên của mối quan hệ tương ứng ở mỗi cấp độ sẽ được liệt kê, cho đến giá trị cuối cùng.

2. Tất cả các giá trị trong mối quan hệ quạt nơi dừng bước 1 đều được liệt kê.

3. Giá trị của tất cả người hâm mộ trong mối quan hệ người hâm mộ này được liệt kê.

4. Từ mức đạt được, việc tăng lên mức trước đó sẽ xảy ra và nếu có thể áp dụng bước 1 thì quá trình này sẽ được lặp lại.

Bản ghi cơ sở dữ liệu phân cấp là một tập hợp các giá trị chứa một giá trị của mối quan hệ gốc và tất cả các quạt mở rộng từ nó theo cấu trúc của cơ sở dữ liệu phân cấp. Trong ví dụ của chúng tôi, một bản ghi bao gồm dữ liệu liên quan đến một khoa (xem Hình 11).

Đối với các mối quan hệ quạt trong cơ sở dữ liệu phân cấp, mẫu đã biết là hợp lệ: nếu có một mối quan hệ quạt thì khóa của mối quan hệ phụ thuộc sẽ xác định chức năng khóa của quan hệ chính. Và ngược lại: nếu khóa của một quan hệ xác định một cách chức năng khóa của quan hệ thứ hai, thì quan hệ thứ nhất có thể phụ thuộc và quan hệ thứ hai có thể là quan hệ chính trong một số quan hệ quạt.

Ngoài ra, ràng buộc rằng chỉ có một mối quan hệ gốc duy nhất trong cơ sở dữ liệu phân cấp chuyển thành yêu cầu rằng khóa chính của mỗi mối quan hệ không phải gốc phải xác định một cách chức năng khóa chính của mối quan hệ gốc.

Thuật toán lấy cấu trúc của cơ sở dữ liệu phân cấp được biên soạn bởi A.I. Mishenin.

Khi so sánh các mô hình dữ liệu, rất khó để tách các yếu tố đặc trưng cho các tính năng cơ bản của mô hình khỏi các yếu tố liên quan đến việc triển khai các mô hình dữ liệu này bằng cách sử dụng các DBMS cụ thể.

Xem xét những ưu điểm và nhược điểm của các mô hình dữ liệu nổi tiếng nhất, cần lưu ý một số ưu điểm chắc chắn của phương pháp quan hệ:

– tính đơn giản: trong mô hình quan hệ chỉ có một cấu trúc thông tin, cấu trúc này chính thức hóa việc trình bày dữ liệu dạng bảng, quen thuộc với người sử dụng kinh tế;

– biện minh về mặt lý thuyết: sự hiện diện của các phương pháp lý luận về mặt lý thuyết để bình thường hóa quan hệ và kiểm tra tính không tuần hoàn của cấu trúc giúp có thể thu được cơ sở dữ liệu với các đặc điểm cần thiết;

– độc lập dữ liệu: theo quy luật, việc thay đổi cấu trúc của cơ sở dữ liệu quan hệ sẽ dẫn đến những thay đổi tối thiểu trong các chương trình ứng dụng.

Một trong những nhược điểm của mô hình dữ liệu quan hệ là:

– tốc độ thấp khi thực hiện thao tác kết nối;

– tiêu thụ bộ nhớ cao để thể hiện cơ sở dữ liệu quan hệ. Mặc dù thiết kế trong 3NF được thiết kế để giảm thiểu sự dư thừa (mỗi thực tế được thể hiện trong cơ sở dữ liệu một lần), các mô hình dữ liệu khác trong cùng điều kiện sẽ tiêu thụ ít bộ nhớ hơn. Ví dụ: độ dài của địa chỉ liên lạc thường ngắn hơn nhiều so với độ dài của giá trị thuộc tính.

Ưu điểm của mô hình dữ liệu phân cấp là:

– tính đơn giản: mặc dù mô hình sử dụng ba cấu trúc thông tin, nguyên tắc phân cấp của các khái niệm phụ là điều đương nhiên đối với nhiều nhiệm vụ kinh tế (ví dụ: để tổ chức báo cáo thống kê);

– mức tiêu thụ bộ nhớ tối thiểu: đối với các tác vụ có thể được triển khai bằng cách sử dụng bất kỳ mô hình dữ liệu nào trong ba mô hình dữ liệu, mô hình phân cấp cho phép bạn có được biểu diễn với bộ nhớ yêu cầu tối thiểu.

Nhược điểm của mô hình phân cấp:

– không phổ quát: nhiều tùy chọn quan trọng để kết nối dữ liệu không thể được triển khai bằng mô hình phân cấp mà không làm tăng tính dư thừa trong cơ sở dữ liệu;

– chỉ chấp nhận nguyên tắc điều hướng truy cập dữ liệu;

– dữ liệu chỉ được truy cập thông qua quan hệ gốc.

Những ưu điểm sau của mô hình dữ liệu mạng cần được lưu ý:

– tính phổ quát: khả năng biểu đạt của mô hình dữ liệu mạng là rộng nhất so với các mô hình khác;

– khả năng truy cập dữ liệu thông qua các giá trị của một số mối quan hệ (ví dụ: thông qua bất kỳ mối quan hệ chính nào).

Những nhược điểm của mô hình dữ liệu mạng bao gồm:

– độ phức tạp, tức là sự phong phú của các khái niệm, các biến thể của mối quan hệ và các tính năng triển khai của chúng;

– chỉ chấp nhận nguyên tắc điều hướng truy cập dữ liệu.

Kết quả thu được đối với cơ sở dữ liệu không tuần hoàn cho thấy cơ sở dữ liệu quan hệ không tuần hoàn, cơ sở dữ liệu mạng hai cấp và cơ sở dữ liệu phân cấp không có kết nối logic có khả năng trình bày thông tin tương đương.

Việc phân tích các mô hình dữ liệu không giải quyết được vấn đề sắp xếp thứ tự các giá trị trong các mối quan hệ cơ sở dữ liệu. Đối với mô hình quan hệ, thứ tự này là tùy chọn theo quan điểm lý thuyết, nhưng trong hai mô hình còn lại, nó được sử dụng rộng rãi để nâng cao hiệu quả thực hiện truy vấn.

Sự lựa chọn cuối cùng của mô hình dữ liệu bị ảnh hưởng bởi nhiều yếu tố bổ sung, ví dụ: tính sẵn có của các DBMS đã được chứng minh tốt, trình độ của người lập trình ứng dụng, kích thước của cơ sở dữ liệu, v.v.

Gần đây, các DBMS quan hệ đã chiếm vị trí nổi bật như một phương tiện phát triển hệ thống thông tin điện tử. Những nhược điểm của mô hình quan hệ được bù đắp bằng sự gia tăng tốc độ và tài nguyên bộ nhớ của máy tính hiện đại. Do quá trình phân cấp quản lý trong nền kinh tế, nhiều cơ sở dữ liệu EIS có cấu trúc đơn giản, dễ dàng chuyển đổi thành các hệ thống bảng (quan hệ) dễ hiểu.

Câu hỏi và bài tập kiểm tra

1. Liệt kê các loại mô hình dữ liệu nổi tiếng nhất.

2. Giải thích các mô hình dữ liệu mạng và phân cấp. Điểm tương đồng và khác biệt của chúng là gì?

3. Mô tả mô hình quan hệ.

4. Mô tả mô hình nhị phân và phạm vi của nó.

5. Đặc điểm cụ thể của mạng ngữ nghĩa và mục đích của chúng là gì?

6. Liệt kê các cấu trúc thông tin cho các công nghệ khác nhau.

7. Kể tên các thành phần của mô hình dữ liệu quan hệ.

8. Xác định bộ và quan hệ.

9. Quá trình xử lý quan hệ có thể được mô tả theo những cách nào?

10. Tiết lộ bản chất của mô tả thủ tục của các quy trình xử lý dữ liệu.

11. Giải thích cách tiếp cận khai báo để xử lý cơ sở dữ liệu quan hệ.

12. Bình thường hóa quan hệ là gì?

13. Có bao nhiêu thuộc tính trong phần phụ thuộc hàm đơn giản nhất?

14. Xác định sự phụ thuộc chức năng của các thuộc tính theo cách tiếp cận quan hệ.

15. Khóa quan hệ có thể xảy ra là gì?

16. Khóa chính là gì? Tên khác của nó là gì?

17. Giải thích các mẫu của nhiều phụ thuộc hàm.

18. Mô tả các dạng quan hệ bình thường thứ hai và thứ ba.

19. Giải thích quyền truy cập vào cơ sở dữ liệu quan hệ.

20. Kể tên các cấu trúc thông tin trong mô hình mạng.

21. “Thái độ của người hâm mộ” là gì?

22. Đưa ra định nghĩa về mạng hai cấp.

23. Xác định mạng đa cấp.

24. “Địa chỉ liên lạc” là gì?

25. Thế nào được gọi là “fan”?

26. Lược đồ cơ sở dữ liệu mạng chứa những thành phần nào?

27. Bạn biết những quy ước tiêu chuẩn nào về cách bao gồm và loại trừ dữ liệu trong mối quan hệ với người hâm mộ?

28. Tập tin và liên kết là gì?

29. “Giao lộ tối đa” là gì?

30. Kể tên các cấu trúc thông tin trong mô hình phân cấp.

31. Xác định cơ sở dữ liệu phân cấp.

32. Hãy cho chúng tôi biết về các quy tắc của đoạn cuối.

33. Xác định bản ghi cơ sở phân cấp.

34. Nêu ưu điểm và nhược điểm của cách tiếp cận quan hệ.

35. Liệt kê những ưu điểm và nhược điểm của mô hình phân cấp.

36. Mô tả điểm mạnh và điểm yếu của mô hình dữ liệu mạng.

38. Hoàn thành nhiệm vụ 2.1–2.20 về các hoạt động trên các mối quan hệ từ hội thảo.

39. Hoàn thành nhiệm vụ 2.21–2.32 về chủ đề “Các phụ thuộc hàm và khóa” từ hội thảo.

40. Hoàn thành nhiệm vụ 2.33–2.60 về chủ đề “Các hình thức quan hệ bình thường” từ hội thảo.

41. Hoàn thành nhiệm vụ 2.61–2.71 về chủ đề “Cơ sở dữ liệu theo chu kỳ” từ hội thảo.

42. Hoàn thành nhiệm vụ 2.72–2.93 về chủ đề “Mạng và mô hình dữ liệu phân cấp” từ hội thảo.

Các loại mô hình dữ liệu cơ sở dữ liệu

Các mô hình tổ chức dữ liệu Mạng, mô hình quan hệ, phân cấp.

Cốt lõi của bất kỳ cơ sở dữ liệu nào là mô hình dữ liệu. Bằng cách sử dụng mô hình dữ liệu, các đối tượng miền và mối quan hệ giữa chúng có thể được biểu diễn.

Mô hình dữ liệu là một tập hợp các cấu trúc dữ liệu và các hoạt động xử lý của chúng. Chúng ta hãy xem xét ba loại mô hình dữ liệu chính: phân cấp, mạng và quan hệ.

Các loại mô hình dữ liệu cơ sở dữ liệu

Thứ bậc Mô hình cơ sở dữ liệu được mô tả dưới dạng cây. Các nút cây đại diện cho một tập hợp dữ liệu, chẳng hạn như các bản ghi logic.

Mô hình phân cấp là tập hợp các phần tử được sắp xếp theo thứ tự phụ thuộc từ tổng quát đến cụ thể và tạo thành một cây (đồ thị) đảo ngược về cấu trúc.

Các khái niệm cơ bản của cấu trúc phân cấp bao gồm cấp độ, nút và mối quan hệ. Nút thắt là tập hợp các thuộc tính dữ liệu mô tả một đối tượng. Trong sơ đồ cây phân cấp, các nút được biểu diễn dưới dạng các đỉnh trong biểu đồ. Mỗi nút ở cấp độ thấp hơn chỉ được kết nối với một nút ở cấp độ cao hơn. Cây phân cấp chỉ có một đỉnh, không phụ thuộc vào bất kỳ đỉnh nào khác và nằm ở cấp cao nhất - cấp độ đầu tiên. Các nút phụ thuộc (nô lệ) ở cấp độ thứ hai, thứ ba, v.v. Số lượng cây trong cơ sở dữ liệu được xác định bởi số lượng bản ghi gốc. Đối với mỗi bản ghi cơ sở dữ liệu, chỉ có một đường dẫn phân cấp từ bản ghi gốc.

Mạng Các mô hình DB tương ứng với một lớp đối tượng quản lý rộng hơn, mặc dù chúng đòi hỏi chi phí bổ sung cho tổ chức của chúng.

Trong cấu trúc mạng với cùng các khái niệm cơ bản (cấp độ, nút, kết nối), mỗi phần tử có thể được kết nối với bất kỳ phần tử nào khác.

quan hệ Mô hình cơ sở dữ liệu biểu diễn các đối tượng và mối quan hệ giữa chúng dưới dạng bảng và tất cả các thao tác trên dữ liệu được rút gọn thành các thao tác trên các bảng này. Hầu hết tất cả các DBMS hiện đại đều dựa trên mô hình này. Mô hình này dễ hiểu và “minh bạch” hơn đối với người dùng cuối của tổ chức dữ liệu.

Mô hình quan hệ trình bày các đối tượng dữ liệu và các kết nối giữa chúng dưới dạng bảng, trong khi các kết nối cũng được coi là đối tượng. Tất cả các hàng tạo nên một bảng trong cơ sở dữ liệu quan hệ phải có khóa chính. Tất cả các công cụ DBMS hiện đại đều hỗ trợ mô hình dữ liệu quan hệ.

Mô hình này được đặc trưng bởi sự đơn giản của cấu trúc dữ liệu, biểu diễn dạng bảng thân thiện với người dùng và khả năng sử dụng bộ máy chính thức của đại số quan hệ và phép tính quan hệ để xử lý dữ liệu.

Mỗi bảng quan hệ là một mảng hai chiều và có các thuộc tính sau:

1. Mỗi phần tử bảng tương ứng với một phần tử dữ liệu.

2. Tất cả các cột trong bảng đều đồng nhất, tức là tất cả các phần tử trong một cột có cùng loại và độ dài.

3. Mỗi cột có một tên duy nhất.

4. Không có hàng nào giống hệt nhau trong bảng;

5. Thứ tự hàng và cột có thể tùy ý.

Việc phân loại các mô hình dữ liệu dựa trên các khái niệm về sự kết nối của các đối tượng. Có thể có bốn loại mối quan hệ khác nhau giữa các bảng cơ sở dữ liệu: “một đối một”; "một đến nhiều"; "nhiều nhiều".

Với sự tôn trọng "một đối một » Tại mỗi thời điểm, một bản ghi của bảng “1” tương ứng với không quá một bản ghi của bảng “2”. Ví dụ: một khách hàng chỉ tương ứng với một phòng khách sạn. Loại mối quan hệ này không được sử dụng thường xuyên vì dữ liệu đó có thể được đặt trong một bảng. Mối quan hệ này được sử dụng để chia các bảng rất rộng, ví dụ, để chia một bảng có thông tin về nhân viên của công ty thành hai - thông tin chính thức và thông tin cá nhân.

Kết nối với thái độ " một đến nhiều» đặc trưng cho thực tế là một phiên bản của đối tượng thông tin “1” tương ứng với 0,1,2 hoặc nhiều phiên bản của đối tượng “2”. Ví dụ, mối quan hệ như vậy tồn tại giữa bảng “Nhà cung cấp” và “Sản phẩm”, tức là. Mỗi nhà cung cấp có thể bán các sản phẩm khác nhau, nhưng mỗi sản phẩm chỉ có một nhà cung cấp duy nhất.

Thái độ " nhiều nhiều» giả định rằng tại bất kỳ thời điểm nào một bản ghi của bảng “1” tương ứng với một số trường hợp của bảng “2” và ngược lại. Một ví dụ là kết nối giữa các đối tượng thông tin “Khách hàng” và “Ngân hàng”. Một khách hàng lưu trữ tiền ở nhiều ngân hàng. Một ngân hàng phục vụ nhiều khách hàng. Mối quan hệ được triển khai bằng cách sử dụng bảng thứ ba (liên kết), khóa của bảng này bao gồm ít nhất hai trường là trường khóa ngoài trong bảng nguồn.

Có ba loại mô hình dữ liệu chính.

Mô hình phân cấp. Nó giả định việc tổ chức dữ liệu dưới dạng cấu trúc cây. Cây là một hệ thống phân cấp của các phần tử. Ở cấp cao nhất của cấu trúc là gốc của cây. Một cây chỉ có thể có một gốc, các nút còn lại là các nút gọi là nút con. Mỗi nút có một nút nguồn ở trên nó.

Cơ sở dữ liệu phân cấp đại diện cho cả một tập hợp các mối quan hệ và quan hệ quạt trong đó có hai hạn chế được tuân thủ: có một mối quan hệ duy nhất, được gọi là gốc, không phụ thuộc vào bất kỳ quan hệ quạt nào; tất cả các quan hệ khác (trừ gốc) là các quan hệ phụ thuộc chỉ trong một quan hệ quạt.

Bản ghi cơ sở dữ liệu phân cấp là một tập hợp các giá trị chứa một giá trị quan hệ gốc và tất cả các quạt có thể truy cập được từ nó. Trong ví dụ của chúng tôi, bản ghi bao gồm dữ liệu liên quan đến một khoa.

Mô hình mạng. Mô hình này dựa trên cấu trúc mạng trong đó bất kỳ phần tử nào cũng có thể được kết nối với bất kỳ phần tử nào khác. Cấu trúc thông tin trong mô hình là các mối quan hệ và mối quan hệ fan. Sau này được chia thành cơ bản và phụ thuộc. Thái độ của người hâm mộ W(R,S) gọi là cặp quan hệ RS và mối quan hệ giữa chúng, với điều kiện là mỗi giá trị S gắn liền với một ý nghĩa duy nhất R. Thái độ Rđược gọi là bản gốc (cơ bản) và S- được tạo ra (phụ thuộc).

Một thuộc tính bổ sung được gọi là địa chỉ liên kết được đưa vào cấu trúc của quan hệ chính và quan hệ phụ thuộc, đảm bảo rằng mỗi giá trị của quan hệ phụ thuộc đều tương ứng với S với một giá trị duy nhất của quan hệ chính R. Địa chỉ liên lạc lưu trữ địa chỉ bắt đầu hoặc số của bản ghi tiếp theo sẽ được xử lý. Cấu trúc vòng của các địa chỉ truyền thông được gọi là như một người hâm mộ. Vai trò “tay cầm” của người hâm mộ được thực hiện bằng cách ghi lại mối quan hệ chính.

Nhược điểm của các mô hình dữ liệu được thảo luận ở trên là khi thêm các đỉnh mới hoặc thiết lập các kết nối mới, các vấn đề nảy sinh trong việc dỡ dữ liệu khỏi cơ sở dữ liệu và tải nó vào một cấu trúc mới. Điều này có thể dẫn đến mất dữ liệu hoặc xuất hiện các giá trị dữ liệu không xác định.

Mô hình quan hệ. Cấu trúc dữ liệu của mô hình này dựa trên bộ máy đại số quan hệ và lý thuyết chuẩn hóa. Mô hình giả định sử dụng bảng hai chiều (quan hệ).

Hạn chế về mối quan hệ mô hình quan hệ : mỗi phần tử bảng là một phần tử dữ liệu đơn giản; không có hàng giống hệt nhau trong bảng; các cột (trường) được gán tên duy nhất; tất cả các hàng của bảng có cùng cấu trúc; Trong một bảng, thứ tự các hàng và cột là tùy ý.

Mối quan hệ giữa các bảng được thực hiện thông qua các giá trị của một hoặc nhiều trường trùng khớp. Mỗi hàng của bảng trong cơ sở dữ liệu quan hệ là duy nhất. Để đảm bảo tính duy nhất của hàng, các khóa được sử dụng có chứa một hoặc nhiều trường bảng. Các khóa được lưu trữ một cách có tổ chức, cho phép truy cập trực tiếp vào các bản ghi bảng trong quá trình tìm kiếm.