Một số tính chất mới trong mối quan hệ giữa khóa của lược đồ khối và lược đồ lát cắt... Để góp phần hoàn chỉnh về mô hình dữ liệu dạng khối và tìm hiểu về mối quan hệ giữa khóa trên khối
Trang 1KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC
Chuyên ngành: Sư phạm tin học
HÀ NỘI - 2019
Trang 2TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2 VIỆN CÔNG NGHỆ THÔNG TIN
======
PHẠM THỊ NHƯ QUỲNH
MỘT SỐ TÍNH CHẤT CỦA KHÓA TRÊN KHỐI VÀ TRÊN LÁT CẮT
KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC
Chuyên ngành: Sư phạm Tin học
Người hướng dẫn khoa học
PGS TS Trịnh Đình Thắng
HÀ NỘI - 2019
Trang 3LỜI CẢM ƠN
Em xin bày tỏ lòng biết ơn sâu sắc tới PGS.TS Trịnh Đình Thắng đã trực tiếp hướng dẫn, định hướng chuyên môn, tận tình chỉ bảo và giúp đỡ em
trong suốt quá trình nghiên cứu và thực hiện khóa luận tốt nghiệp
Em xin gửi lời cảm ơn đến quý thầy cô viện Công nghệ thông tin trường Đại học sư phạm Hà Nội 2 đã tạo điều kiện, quan tâm, giúp đỡ em trong thời gian hoàn thiện đề tài
Đây là lần đầu tiên làm quen với công việc nghiên cứu nên những vấn
đề mà em trình bày trong khóa luận sẽ không tránh khỏi những thiếu xót Em rất mong nhận được sự đóng góp quý báu của quý thầy giáo, cô giáo và các bạn sinh viên
Sinh viên thực hiện
Phạm Thị Như Quỳnh
Trang 4LỜI CAM ĐOAN
Tôi xin cam đoan khóa luận này được hoàn thành bằng sự cố gắng, nỗ
lực của bản thân, dưới sự hướng dẫn tận tình của PGS.TS Trịnh Đình Thắng và tham khảo một số tài liệu đã được ghi rõ nguồn
Khóa luận hoàn toàn không sao chép từ tài liệu có sẵn nào Kết quả nghiên cứu không trùng lặp với các tác giả khác
Nếu sai, tôi xin hoàn toàn chịu trách nhiệm!
Hà nội, ngày 05 tháng 05 năm 2019
Người cam đoan
Phạm Thị Như Quỳnh
Trang 5DANH MỤC CÁC KÍ HIỆU, CHỮ CÁI VIẾT TẮT
Trang 6MỤC LỤC
MỞ ĐẦU 1
CHƯƠNG I: MÔ HÌNH DỮ LIỆU QUAN HỆ 4
1.1 Các khái niệm 4
1.1.1 Thuộc tính và miền thuộc tính 4
1.1.2 Quan hệ và lược đồ quan hệ 5
1.2 Các phép toán đại số trên quan hệ 6
1.3 Phụ thuộc hàm 13
1.3.1 Các tính chất của phụ thuộc hàm 14
1.3.2 Hệ tiên đề Armstrong cho các phụ thuộc hàm 15
1.4 Bao đóng 15
1.4.1 Bao đóng của tập phụ thuộc hàm 15
1.4.2 Bao đóng của tập thuộc tính 15
1.5 Khóa của lược đồ quan hệ 17
CHƯƠNG 2 MÔ HÌNH DỮ LIỆU DẠNG KHỐI 18
2.1 Khối, lược đồ khối 18
2.2 Lát cắt 20
2.3 Các phép toán đại số quan hệ trên khối 21
2.4 Phụ thuộc hàm trên khối 28
2.5 Bao đóng của tập thuộc tính chỉ số 29
2.6 Khóa của khối 31
2.7 Phép dịch chuyển lược đồ khối 32
Trang 7CHƯƠNG 3 MỐI QUAN HỆ GIỮA KHÓA CỦA LƯỢC ĐỒ KHỐI VÀ LƯỢC ĐỒ LÁT CẮT 34
3.1 Khóa của lược đồ khối và lược đồ lát cắt 343.2 Mối quan hệ giữa khóa của lược đồ khối và khóa của lược đồ lát cắt qua phép dịch chuyển 353.3 Một số tính chất mới trong mối quan hệ giữa khóa của lược đồ khối và lược đồ lát cắt 44
KẾT LUẬN 50 TÀI LIỆU THAM KHẢO 51
Trang 8DANH MỤC BẢNG BIỂU
Bảng 1.1: Biểu diễn quan hệ r 5
Bảng 1.2: Biểu diễn quan hệ Khachhang 5
Bảng 1.3: Biểu diễn các quan hệ KH1, KH2 và KH1 ∪ KH2 7
Bảng 1.4: Biểu diễn các quan hệ KH1, KH2 và KH1 ∩ KH2 7
Bảng 1.5: Biểu diễn các quan hệ KH1, KH2 và KH1 – KH2 8
Bảng 1.6: Biểu diễn các quan hệ r, s và r × s 9
Bảng 1.7: Biểu diễn các quan hệ KH, ∏𝑀𝑎𝐾𝐻,𝑇𝑒𝑛𝐾𝐻,𝐷𝑖𝑎𝐶ℎ𝑖(KH) 10
Bảng 1.8: Biểu diễn các quan hệ KH, δDiaChi=’Thái Bình’(KH) 11
Bảng 1.9: Biểu diễn quan hệ r÷s 13
Bảng 1.10: Biểu diễn quan hệ Khachhang 14
Bảng 2.1: Biểu diễn lát cắt r(R2/2019) 20
Trang 9DANH MỤC HÌNH VẼ
Hình 2.1: Biểu diễn khối BANHANGSON(R) 19
Hình 2.2: Biểu diễn các khối r, s, r ∪ s 22
Hình 2.3: Biểu diễn các khối r, s, r ∩ s 23
Hình 2.4: Biểu diễn các khối r, s, r − s 24
Hình 2.5: Biểu diễn các khối r, r’=P(r) 26
Trang 10Trong những năm gần đây, việc nghiên cứu mở rộng mô hình dữ liệu quan hệ đã được nhiều nhà khoa học quan tâm, ví dụ như mô hình dữ liệu đa chiều, kho dữ liệu, Theo hướng nghiên cứu này một mô hình dữ liệu mới
đã được đề xuất, đó là mô hình dữ liệu dạng khối Mô hình dữ liệu này có thể xem là một mở rộng của mô hình dữ liệu quan hệ
Trong quản lý cơ sở dữ liệu (CSDL), khóa của quan hệ là thuộc tính có thể suy ra được các thuộc tính còn lại và nó cũng là yếu tố liên kết giữa các (CSDL) với nhau Nhờ có khóa mà hệ quản trị (CSDL) có thể quản lý tốtviệc cập nhập dữ liệu
Để góp phần hoàn chỉnh về mô hình dữ liệu dạng khối và tìm hiểu về
mối quan hệ giữa khóa trên khối và trên lát cắt, tôi đã lựa chọn đề tài “Một số
tính chất của khóa trên khối và trên lát cắt” cho khóa luận tốt nghiệp của
mình
2 Mục đích nghiên cứu
- Tìm hiểu khái quát về mô hình dữ liệu dạng khối
- Các tính chất của khóa trên khối và trên lát cắt
- Phát biểu và chứng minh một số tính chất mới của khóa trên lược đồ khối và mối quan hệ của khóa trên lược đồ khối và khóa trên lược đồ lát cắt
Trang 11
3 Nhiệm vụ nghiên cứu
- Tìm hiểu về mô hình dữ liệu dạng khối và các tính chất của khóa trên lược đồ khối và lược đồ lát cắt
- Phát biểu và chứng minh một số tính chất mới của khóa trên lược đồ khối và mối quan hệ của khóa trên lược đồ khối và khóa trên lược đồ lát cắt
4 Đối tượng và phạm vi nghiên cứu
* Đối tượng nghiên cứu:
- Các tính chất của khóa trên lược đồ khối và mối quan hệ của nó với khóa trên lược đồ lát cắt
* Phạm vi nghiên cứu:
- Mô hình dữ liệu dạng khối
5 Phương pháp nghiên cứu
- Phương pháp tổng hợp phân tích các vấn đề có liên quan đến đề tài
- Phương pháp thu thập tài liệu
- Phương pháp suy luận và chứng minh
6 Cấu trúc khóa luận
Chương 1 Mô hình cơ sở dữ liệu quan hệ
Chương này đã trình bày một số khái niệm cơ bản về mô hình dữ liệu quan hệ, khóa và các tính chất của khóa trong mô hình quan hệ
Chương 2 Mô hình dữ liệu dạng khối
Giới thiệu tổng quan về mô hình dữ liệu dạng khối, định nghĩa khối, lát cắt, lược đồ khối, các phép toán đại số trên khối, phụ thuộc hàm, bao đóng
mô hình dữ liệu dạng khối, khóa của lược đồ khối, phép dịch chuyển trên lược
đồ khối
Chương 3 Mối quan hệ giữa khóa của lược đồ khối và lược đồ lát cắt
Phát biểu khóa trên lược đồ khối và trên lược đồ lát cắt, mối quan hệ giữa khóa của lược đồ khối và khóa của lược đồ lát cắt qua phép dịch chuyển,
Trang 12
một số tính chất mới trong mối quan hệ giữa khóa của lược đồ khối và lược
đồ lát cắt
Trang 13
CHƯƠNG I: MÔ HÌNH DỮ LIỆU QUAN HỆ
Chương này trình bày một số khái niệm cơ bản trong mô hình dữ liệu quan hệ: các phép toán, phụ thuộc hàm, bao đóng của tập phụ thuộc hàm, bao đóng của tập thuộc tính, các tính chất của khóa cùng với thuật toán tìm khoá Các vấn đề trình bày ở chương này được tham khảo trong các tài liệu [2], [4], [5], [6]
Ví dụ 1.1: Đối tượng Khachhang có các thuộc tính là mã khách hàng,
tên khách hàng, giới tính, địa chỉ, số điện thoại Khi đó ta có thể biểu diễn đối tượng khách hàng như sau:
Khachhang(MaKH, TenKH, GT, DiaChi, SDT)
Trang 14U A A
i i
D
, sao cho hj (Ai) ∈ DAi (i = 1, 2, , n)
Ta có thể xem một quan hệ như một bảng, trong khi đó mỗi hàng (phần tử) là một bộ và mỗi cột tương ứng với một thành phần gọi là thuộc tính Biểu diễn quan hệ r thành bảng như sau:
Bảng 1.1: Biểu diễn quan hệ r
Ví dụ 1.3: Cho quan hệ sau:
KH04 Phạm Văn Quang Nam Thái Bình 0338990001
Bảng 1.2: Biểu diễn quan hệ Khachhang
Trang 15
Trong đó, quan hệ Khachhang (KH) có các thuộc tính là: MaKH (mã khách hàng), TenKH (tên khách hàng), GT (giới tính), DiaChi (địa chỉ), SDT (số điện thoại)
Bộ giá trị (KH01, Phạm Mai An, Nữ, Thái Bình, 0363124614) là một
bộ giá trị của quan hệ khách hàng
Nếu có một bộ t = (𝑑1, 𝑑2,…, 𝑑𝑛) ∈ r, r xác định trên U, X ⊆ U thì t(X) (hoặc t.X) gọi là giá trị của tập thuộc tính X trên bộ t
Định nghĩa 1.3 [2]
Tất cả các thuộc tính trong một quan hệ cùng với mối liên hệ giữa chúng gọi là lược đồ quan hệ Lược đồ quan hệ R xác định với tập thuộc tính
U = {A1, A2, , An} được gọi là R(U) hoặc R(A1, A2, , An)
1.2 Các phép toán đại số trên quan hệ
1.2.1 Phép hợp
Hai quan hệ r và s được gọi là khả hợp nếu như hai quan hệ này xác định cùng tập thuộc tính và các thuộc tính cùng tên có cùng miền giá trị
Cho hai quan hệ r và s khả hợp Hợp của r và s kí hiệu là 𝑟 ∪ 𝑠 là quan
hệ gồm tất cả các bộ thuộc r hoặc thuộc s Phép hợp được biểu diễn như sau:
Trang 16KH04 Phạm Văn Quang Thái Bình
Bảng 1.3: Biểu diễn các quan hệ KH1, KH2 và KH1 ∪ KH2
1.2.2 Phép giao
Cho hai quan hệ r và s khả hợp Giao của r và s kí hiệu r ∩ s là tập các
bộ thuộc cả hai quan hệ r và s Biểu diễn hình thức phép giao có dạng:
Trang 171.2.4 Tích Đề-các
Cho hai quan hệ r và s bất kỳ có tập thuộc tính lần lượt 𝑈1 𝑣à 𝑈2 với
𝑈1 ∩ 𝑈2 = ∅ Tích Đề-các của r và s kí kiệu là: 𝑟 × 𝑠 là một quan hệ trên
𝑈1∪ 𝑈2 gồm tất cả các bộ ghép được từ 2 quan hệ r và s
Phép Tích Đề-các được biểu diễn như sau:
𝑟 × 𝑠 = {(𝑢, 𝑣)| ∀𝑢 ∈ 𝑟, ∀𝑣 ∈ 𝑠}
Trang 18Cho quan hệ r xác định trên tập thuộc tính 𝑈, 𝑋 ⊆ 𝑈 Phép chiếu quan hệ
r trên tập các thuộc tính X kí hiệu là ∏𝑋(r) là tập các bộ của r xác định trên X
Phép chiếu được biểu diễn như sau:
∏𝑋(𝑟)= {𝑡 𝑋|𝑡 ∈ 𝑅}
(Thực chất của phép chiếu là phép toán giữ lại một số thuộc tính thuộc
X cần thiết của quan hệ r và loại bỏ những thuộc tính không cần thiết)
Trang 19Cần lấy một số thuộc tính khách hàng mà chỉ quan tâm đến mã khách hàng, tên khách hàng, địa chỉ, số điện thoại Phép chiếu được sử dụng như sau:
Biểu thức chọn F được định nghĩa là một tổ hợp logic của toán hạng, mỗi toán hạng là một phép so sánh đơn giản giữa hai biến là hai thuộc tính hoặc giữa một biến là một thuộc tính và một giá trị hằng Biểu thức chọn F cho giá trị đúng hoặc sai đối với mỗi bộ đã cho của quan hệ khi kiểm tra riêng bộ đó
• Các phép toán so sánh trong biểu thức F: >, <, =, ≥, ≠, ≤
• Các phép toán logic trong biểu thức F: ∧ (và), ∨ (hoặc), ¬ (không)
Trang 20
Cho r là một quan hệ và F là một biểu thức logic trên các thuộc tính của
r Phép chọn trên quan hệ r với biểu thức logic F và kí hiệu là δF(r) là tập tất
Kết quả là:
KH01 Phạm Mai An Nữ Thái Bình 0363124614 KH03 Vũ Bích Phượng Nữ Thái Bình 0338795622 KH04 Phạm Văn Quang Nam Thái Bình 0338990001
1.2.7 Phép kết nối
Cho quan hệ r(U) và s(V) Đặt M= U ∩ V Phép kết nối tự nhiên hai quan hệ r(U) và s(V), ký hiệu r*s, cho ta quan hệ gồm các bộ được dán từ
Trang 21Cho r là một quan hệ xác định trên tập thuộc tính U= {A1, , An} và s
là một quan hệ xác định trên tập thuộc tính V = {A1, , Am}, với V U, n >
m và s , có nghĩa là lực lượng của s là khác 0 hay s có ít nhất một bộ Phép chia quan hệ r cho quan hệ s, kí hiệu là r s, là tập tất cả các bộ t trên U\V sao cho với mọi bộ vs thì khi ghép bộ t với bộ v ta được một bộ thuộc r
Phép chia được biểu diễn như sau:
r ÷ s = {t│ v ∈ s, (t, v) ∈ r}
Trang 22
Ví dụ 1.11: Cho bảng r và s như sau:
Ta có phép chia KetQua = r÷s
r Tên khách hàng Ti Vi Điều Hòa Tủ Lạnh
Phụ thuộc hàm là những mối quan hệ giữa các thuộc tính trong cơ sở
dữ liệu quan hệ Khái niệm về phụ thuộc hàm có một vai trò rất quan trọng trong việc thiết kế mô hình dữ liệu Một trạng thái phụ thuộc hàm chỉ ra rằng giá trị của một thuộc tính được quyết định một cách duy nhất bởi giá trị của thuộc tính khác
Định nghĩa 1.4 [6]
Cho lược đồ quan hệ R xác định trên tập thuộc tính U = {A1, A2, ,
Trang 23
Nói rằng X → Y (đọc là X xác định hàm Y hay Y phụ thuộc hàm vào X) nếu với mọi quan hệ r xác định trên U sao cho bất kỳ hai bộ t1, t2 ∈ r mà
t1(X) = t2(X) thì t1(Y) = t2(Y)
Ví dụ 1.12: Ta có quan hệ Khachhang như sau:
KH01 Phạm Mai An Nữ Thái Bình 0363124614
KH02 Lê Xuân Bình Nam Hải Phòng 0987654777
KH03 Vũ Bích Phượng Nữ Hà Nội 0338795622
KH04 Phạm Văn Quang Nam Thái Bình 0338990001
Bảng 1.10: Biểu diễn quan hệ Khachhang
Trong quan hệ Khachhang, dựa vào định nghĩa của phụ thuộc hàm ta thấy quan hệ này thỏa mãn phụ thuộc hàm:
{MaKH} → {TenKH, GT, DiaChi, SDT}
1.3.1 Các tính chất của phụ thuộc hàm
Cho lược đồ quan hệ R xác định trên tập thuộc tính U = {A1, A2, ,
An}, cho X, Y, Z, W ⊆ U thì ta có một số tính chất cơ bản của các phụ thuộc hàm như sau:
Trang 24
1.3.2 Hệ tiên đề Armstrong cho các phụ thuộc hàm
Gọi R là quan hệ trên tập thuộc tính U = {A1, A2, , An} Khi đó với các tập thuộc tính X, Y, Z ⊆ U, ta có hệ tiên đề Amstrong như sau:
Giả sử F là tập các phụ thuộc hàm trên sơ đồ quan hệ s = <R, F> Gọi
F+ là tập tất cả các phụ thuộc hàm có thể suy dẫn logic từ F bởi các luật của hệ tiên đề Armstrong Khi ấy F+ được gọi là bao đóng của F
Các tính chất:
1) Tính chất phản xạ: Với mọi tập phụ thuộc hàm F ta luôn có 𝐹 ⊆ 𝐹+2) Tính chất đơn điệu: 𝑁ế𝑢 𝐹 ⊆ 𝐺 𝑡ℎì 𝐹+ ⊆ 𝐺+
3) Tính chất lũy đẳng: Với mọi tập phụ thuộc hàm F, luôn có (F+)+ = F+
Ví dụ 1.13: Cho F= {A→B, C→D, BD→E}
Khi đó AC→E ∈ 𝐹+?
- Ta thấy vì A→B => AD→BD
- Từ AD→BD và kết hơp với BD→E suy ra AD→E
Ta có: X+ = {A | X → A ∈ F+}
Trang 25
1) Tính phản xạ: 𝑋 ⊆ 𝑋+2) Tính đơn điệu: 𝑁ế𝑢 𝑋 ⊆ 𝑌 𝑡ℎì 𝑋+ ⊆ 𝑌+3) Tính lũy đẳng: 𝑋++ = 𝑋+
4) 𝑋+𝑌+ ⊆ (𝑋𝑌)+5) (𝑋+𝑌)+ = (𝑋𝑌+)+ = (𝑋+𝑌+)+ = (𝑋𝑌)+6) 𝑋 → 𝑌 ⇔ 𝑌+ ⊆ 𝑋+
7) 𝑋 → 𝑋+ và 𝑋+ → 𝑋 8) 𝑋+ = 𝑌+ ⇔ 𝑋 → 𝑌 𝑣à 𝑌 → 𝑋
Thuật toán 1 (tìm bao đóng):
Ta xây dựng tập các thuộc tính 𝑋0, 𝑋1, 𝑋2, 𝑋3, 𝑋4… như sau:
thì 𝑋𝑖+1 = 𝑋𝑖 ∪ 𝑍 𝐿𝑜ạ𝑖 𝑝ℎụ 𝑡ℎ𝑢ộ𝑐 ℎà𝑚 𝑌 → 𝑍 khỏi F
Ngược lại ta quay về bước 2
Ví dụ 1.14: Cho lược đồ quan hệ R=(U,F) với U={A,B,C,D,E,K}
Trang 26
1.5 Khóa của lược đồ quan hệ
Định nghĩa 1.7 [5]
Cho s = <U,F> là một lược đồ quan hệ, U là tập thuộc tính khác rỗng
và F là tập các phụ thuộc hàm Cho tập con bất kỳ K ⊆ U K được gọi là khóa của lược đồ quan hệ R khi và chỉ khi nó thỏa mãn hai điều kiện sau:
1 (K → U) ∈ F+
2 Không tồn tại Z ⊂ K sao cho (Z → U) ∈ F+
Các tính chất đơn giản của khóa trong lược đồ quan hệ
Định lý 1.1 (Đặc trưng của các thuộc tính khóa)
Cho K là khóa của lược đồ quan hệ R = (U, F) Khi đó với mọi tập con
X của K, ta có: X+ ∩ K = X
Định lý 1.2 (Công thức tính giao các khóa)
Cho lược đồ quan hệ R=(U, F) với n thuộc tính trong U và m phụ thuộc hàm trong F Gọi U1 là giao các khóa của b Khi đó, ta có thể xác định giao các khóa bằng một thuật toán tuyến tính theo mn qua công thức:
U1 = U \
F R L
)
\(
→
L R
Định lý 1.3 (Định lý về khóa duy nhất)
Cho lược đồ quan hệ R = (U, F) Gọi U1 là giao của các khóa trong R Khi đó, R có một khóa duy nhất khi và chỉ khi U1+ = U
Kết luận
Chương này đã trình bày một số các khái niệm cơ bản trong mô hình
dữ liệu quan hệ: các phép toán đại số quan hệ, các khái niệm về phụ thuộc hàm, bao đóng Bên cạnh đó các thuật toán tìm bao đóng của tập thuộc tính và thuật toán tìm khóa của lược đồ quan hệ cũng được trình bày ở trong chương này
Trang 27
CHƯƠNG 2 MÔ HÌNH DỮ LIỆU DẠNG KHỐI
Mô hình dữ liệu dạng khối là mô hình dữ liệu mở rộng hơn và khắc phục được phần nào những nhược điểm của mô hình dữ liệu quan hệ Mô hình này biểu diễn các dữ liệu có tính chất động, có khả năng đáp ứng tốt đối với nhiều lớp bài toán phức tạp
Chương này trình bày các khái niệm cơ bản trong mô hình dữ liệu dạng khối như: khái niệm về khối, lược đồ khối, lát cắt, các phép toán cơ bản trên khối, khái niệm về bao đóng của tập phụ thuộc hàm, bao đóng của tập thuộc tính, khóa của lược đồ khối R cùng với các thuật toán tìm bao đóng, tìm khóa của lược đồ khối Các vấn đề trình bày ở chương này được tham khảo trong tài liệu [3]
2.1 Khối, lược đồ khối
Khái niệm toán học làm nền tảng cho mô hình dữ liệu dạng khối là các khối hiểu theo nghĩa của lý thuyết tập hợp
Khối được định định nghĩa như sau:
Định nghĩa 2.1 [3]
Gọi R = (id; A1, A2, , An) là một bộ hữu hạn các phần tử, trong đó id
là tập chỉ số hữu hạn khác rỗng Ai (i = 1 n) là các thuộc tính Mỗi thuộc tính
Ai (i = 1 n) có miền giá trị tương ứng là dom(Ai) Một khối r trên R, kí hiệu r(R) gồm một số hữu hạn phần tử mà mỗi phần tử là một họ các ánh xạ từ tập chỉ số id đến các miền trị của các thuộc tính Ai (i = 1 n) Nói một cách khác:
t ∈ r(R) ⇔ t = {ti: id → dom(Ai)}i=1 n
Ta kí hiệu khối đó là r(R) hoặc r(id; A1, A2, , An), đôi khi nếu không
sợ nhầm lẫn ta kí hiệu đơn giản là r
Khi đó khối r(R) được gọi là có lược đồ khối R Như vậy trên cùng một lược đồ khối R, ta có thể xây dựng được nhiều khối khác nhau
Ví dụ 2.1:
Công ty Sammi chuyên sản xuất và phân phối Son có các cơ sở bán hàng trên phạm vi cả nước Các cơ sở cùng bán các loại son của nhà sản xuất
Trang 28
là: 3CE, MAC, BIAA, BJ Hàng tháng các cơ sở lập biểu đồ theo dõi số lượng hàng được bán theo từng loại son tại mỗi cơ sở (trên cơ sở số lượng bán hàng
ra hàng ngày) Căn cứ vào các biểu đồ theo dõi của mỗi loại mặt hàng tại các
cơ sở này mà công ty điều chỉnh số lượng sản phẩm phân cho các đại lý phù hợp hơn Để đáp ứng yêu cầu trên công ty Sammi đã xây dựng khối dữ liệu với tên gọi BANHANGSON, cụ thể như sau:
Chọn R={id; A1, A2, A 3, A4, A5 }; id = {1/2019,2/2019} và các thuộc tính là:
A1: mcs (mã cơ sở) CSi: cơ sở thứ i
A2: 3CE A4: BIAA
A3: MAC A5: BJ Với khối BANHANGSON dưới đây, gồm 3 phần tử: t1, t2, t3
Hình 2.1: Biểu diễn một phần khối BANHANGSON(R)
Với khối BANHANGSON ở trên, ta thấy:
- Ở Cơ sở 1 (CS1), trong tháng 1, số lượng sản phẩm son 3CE bán được
Trang 29
2.2 Lát cắt
Định nghĩa 2.2 [3]
Cho R = (id; A1, A2, , An), r(R) là một khối trên R Với mỗi x ∈ id ta
kí hiệu r(Rx) là một khối với Rx = ({x}; A1, A2, , An) sao cho:
tx∈ r(Rx) ⇔ tx = {ti
x = ti }i=1 n , t∈ r(R),
x với t = {ti: id → dom(Ai)}i=1 n
A1=macs; A2=3CE; A3=MAC; A4=BIAA; A5=BJ
Khi đó với x = 2/2019 ∈ id thì lát cắt r(R2/2019) có dạng như sau:
Bảng 2.1: Biểu diễn lát cắt r(R 2/2019 )
Nhận xét:
Cho lược đồ khối R = (id; A1, A2, , An), r(R) là một khối trên R Với mỗi x ∈ id thì khối r(Rx) là một quan hệ Trong trường hợp tập chỉ số id chỉ gồm một phần tử thì khối r(R) trở thành một quan hệ
Như vậy, mỗi quan hệ r(A1, A2, , An) là một trường hợp đặc biệt của khối, đó chính là khối r(R) với R = ({x}; A1, A2, , An)
Trang 30
Mệnh đề 2.1 [3]
Cho R = (id; A1, A2, , An), r(R) là một khối trên R Khi đó tồn tại một
họ quan hệ duy nhất biểu diễn họ {r(Rx)}xid các lát cắt của khối r(R) Ngược lại không đúng, nghĩa là với một họ quan hệ cho trước biểu diễn họ các lát cắt của một khối nào đó thì khối tìm được không duy nhất
2.3 Các phép toán đại số quan hệ trên khối
Cho r là một khối trên R=(id; Al, A2, , An ) Cũng tương tự như đại số quan hệ trong mô hình dữ liệu quan hệ, ở đây các phép toán của đại số quan
hệ lặp lại được áp dụng cho các khối như: phép hợp, phép giao, phép trừ, phép chiếu, phép chọn, phép kết nối, phép chia
Đối với phép hợp, giao và trừ thì 2 khối tham gia phải khả hợp
Hai khối r và s được gọi là khả hợp nếu chúng có cùng lược đồ khối và mỗi thuộc tính chỉ số tương ứng trên khối đều có cùng miền giá trị
2.3.1 Phép hợp
Cho hai khối r và s khả hợp Khi đó hợp của r và s là một khối, kí hiệu r
∪ s, gồm các phần tử thuộc r hoặc thuộc khối s Ta có:
r ∪ s = {t |t ∈ r ∨ t ∈ s}
Ví dụ 2.3: Công ty Sammi chuyên sản xuất và phân phối Son như trong
ví dụ 2.1.Chọn r và s như trong hình vẽ dưới đây:
Chọn R={id; A1, A2, A 3}; id = {1/2019, 2/2019} và các thuộc tính là:
A1: mcs (mã cơ sở); CSi: cơ sở thứ i; A2: 3CE; A3: MAC