Tóm tắt các chương Cơ sở dữ liệu | Đại học Văn Lang

Mô hình dữ liệu và danh mục của chúng; Lịch sử mô hình dữ liệu; Lược đồ, trường hợp và trạng thái; Kiến trúc ba lược đồ; Dữ liệu độc lập; Ngôn ngữ và giao diện  DBMS; Công cụ và tiện ích hệ thống cơ sở dữ liệu; Kiến trúc tập trung và máy  khách-máy chủ; Phân loại DBMS. Tài liệu giúp bạn tham khảo, ôn tập và đạt kết quả cao. Mời đọc đón xem!

Môn:
Trường:

Đại học Văn Lang 1 K tài liệu

Thông tin:
19 trang 17 giờ trước

Bình luận

Vui lòng đăng nhập hoặc đăng ký để gửi bình luận.

Tóm tắt các chương Cơ sở dữ liệu | Đại học Văn Lang

Mô hình dữ liệu và danh mục của chúng; Lịch sử mô hình dữ liệu; Lược đồ, trường hợp và trạng thái; Kiến trúc ba lược đồ; Dữ liệu độc lập; Ngôn ngữ và giao diện  DBMS; Công cụ và tiện ích hệ thống cơ sở dữ liệu; Kiến trúc tập trung và máy  khách-máy chủ; Phân loại DBMS. Tài liệu giúp bạn tham khảo, ôn tập và đạt kết quả cao. Mời đọc đón xem!

7 4 lượt tải Tải xuống
Chương 2: Khái niệm và kiến trúc hệ thống cơ sở dữ liệu
- Mô hình dữ liệu và danh mục của chúng; Lịch sử mô hình dữ liệu; Lược đồ, trường hợp và trạng thái;
Kiến trúc ba lược đồ; Dữ liệu độc lập; Ngôn ngữ và giao diện DBMS; Công cụ và tiện ích hệ thống cơ sở
dữ liệu; Kiến trúc tập trung và máy khách-máy chủ; Phân loại DBMS.
Mô hình dữ liệu: Các khái niệm mô tả cấu trúc, thao tác và ràng buộc của cơ sở dữ liệu.
- Cấu trúc: Bao gồm các phần tử (thực thể, bản ghi) và các mối quan hệ; các ràng buộc đảm bảo tính hợp
lệ của dữ liệu.
- Hoạt động: Bao gồm các hoạt động cơ bản (chèn, xóa, cập nhật) và các chức năng do người dùng xác
định.
Danh mục mô hình dữ liệu
1. Mô hình khái niệm: Quan điểm cấp cao, thân thiện với người dùng (ví dụ: mô hình dựa trên thực thể).
2. Mô hình vật lý: Chi tiết cấp thấp về lưu trữ dữ liệu.
3. Mô hình triển khai: Trình độ trung cấp, chẳng hạn như mô hình quan hệ.
4. Mô hình tự mô tả: Mô tả dữ liệu được kết hợp với các giá trị dữ liệu (ví dụ: XML).
Lược đồ so với trường hợp
- Lược đồ cơ sở dữ liệu: Mô tả cấu trúc bao gồm các kiểu và ràng buộc; thay đổi không thường xuyên.
- Trạng thái cơ sở dữ liệu: Dữ liệu hiện tại trong cơ sở dữ liệu; thay đổi thường xuyên.
Kiến trúc ba lược đồ
- Internal Schema: Cấu trúc lưu trữ vật lý.
- Lược đồ khái niệm: Cấu trúc tổng thể và các ràng buộc đối với người dùng.
- Lược đồ bên ngoài: Chế độ xem dành riêng cho người dùng.
- Ánh xạ: Chuyển đổi yêu cầu giữa các cấp độ; cho phép dữ liệu độc lập.
Độc lập dữ liệu
- Độc lập logic: Thay đổi lược đồ khái niệm mà không ảnh hưởng đến lược đồ bên ngoài.
-Độc lập vật lý: Thay đổi lược đồ bên trong mà không làm thay đổi lược đồ khái niệm.
Ngôn ngữ DBMS
- DDL (Ngôn ngữ định nghĩa dữ liệu): Xác định lược đồ cơ sở dữ liệu.
- DML (Ngôn ngữ thao tác dữ liệu): Truy xuất và cập nhật dữ liệu; bao gồm các hoạt động cấp cao (ví
dụ: SQL) và cấp độ thấp.
- Giao diện: Các tùy chọn độc lập, được nhúng và thân thiện với người dùng (ví dụ: biểu mẫu, ngôn ngữ
tự nhiên).
Các tiện ích và công cụ hệ thống cơ sở dữ liệu
- Chức năng: Tải dữ liệu, sao lưu, giám sát hiệu suất, tạo báo cáo.
- Từ điển dữ liệu: Lưu trữ các mô tả lược đồ và các quyết định thiết kế.
Kiến trúc tập trung và kiến trúc máy khách-máy chủ
- DBMS tập trung: Tất cả các thành phần trong một hệ thống; truy cập từ xa thông qua thiết bị đầu cuối.
- Hệ quản trị cơ sở dữ liệu máy khách-máy chủ
- Kiến trúc hai tầng: Máy khách giao tiếp trực tiếp với máy chủ DBMS.
- Kiến trúc ba tầng: Bao gồm một máy chủ ứng dụng cho logic nghiệp vụ, tăng cường bảo mật.
Phân loại DBMS
- Dựa trên các mô hình dữ liệu: kế thừa (mạng, phân cấp) so với hiện tại (quan hệ, hướng đối tượng,
NOSQL).
- Triển khai: một người dùng so với nhiều người dùng, tập trung và phân tán.
Lịch sử của mô hình dữ liệu
1. Mô hình Mạng: Mô hình ban đầu (1964) tập trung vào các mối quan hệ phức tạp.
2. Mô hình phân cấp: Cấu trúc đơn giản, được áp dụng rộng rãi từ những năm 1960.
3. Mô hình quan hệ: Thống trị từ những năm 1980, sử dụng SQL.
4. Mô hình hướng đối tượng và quan hệ đối tượng: Tích hợp các khái niệm đối tượng vào hệ thống cơ sở
dữ liệu.
Tóm tắt
Chương này đề cập đến các mô hình dữ liệu khác nhau, hoạt động của chúng, sự khác biệt giữa lược đồ
và thể hiện, kiến trúc ba lược đồ, tính độc lập của dữ liệu và phân loại DBMS, cùng với sự phát triển lịch
sử trong công nghệ cơ sở dữ liệu.
Chương 3: Lập mô hình dữ liệu bằng mô hình mối quan hệ thực thể (ER)
Tổng quan
•Quy trình thiết kế cơ sở dữ liệu: Bao gồm thiết kế cơ sở dữ liệu và thiết kế ứng dụng. Chương này tập
trung vào thiết kế cơ sở dữ liệu khái niệm, đặc biệt là sử dụng các mô hình ER.
•Phương pháp: Bao gồm Sơ đồ ER (chương này) và Sơ đồ ER nâng cao (Chương 4). Sơ đồ lớp UML
cũng được sử dụng trong công nghiệp.
Cơ sở dữ liệu mẫu: CÔNG TY
•Yêu cầu:
BỘ PHẬN có tên, số điện thoại, người quản lý và địa điểm.
DỰ ÁN có tên, mã số và vị trí duy nhất do các BAN kiểm soát.
NHÂN VIÊN có SSN, địa chỉ, lương và có thể làm việc trên nhiều dự án khi có người phụ thuộc.
Khái niệm mô hình ER
•Thực thể và thuộc tính:
Thực thể: Các đối tượng như NHÂN VIÊN, BỘ PHẬN, DỰ ÁN, NGƯỜI PHỤ THUỘC.
Thuộc tính: Đặc điểm của các thực thể, chẳng hạn như Tên, SSN, Địa chỉ, v.v.
Types bao gồm các thuộc tính đơn giản, tổng hợp và đa giá trị.
•Các loại thực thể và thuộc tính chính:
Nhóm các thực thể theo loại. Các thuộc tính chính xác định duy nhất các thực thể (ví dụ: SSN).
• Tập thực thể: Tập hợp các thực thể cùng loại.
Mối quan hệ và các loại mối quan hệ
•Mối quan hệ: Kết nối các thực thể riêng biệt với ý nghĩa cụ thể, ví dụ: NHÂN VIÊN làm việc trên DỰ
ÁN.
•Các loại mối quan hệ: Có thể là nhị phân (2 thực thể) hoặc n-ary (nhiều hơn 2).
•Hạn chế:
Cardinality: Một-một, một-nhiều, nhiều-nhiều.
Ràng buộc tham gia: Toàn bộ (bắt buộc) hoặc một phần (tùy chọn).
Các loại thực thể yếu
•Các thực thể không có thuộc tính khóa phụ thuộc vào thực thể khác để nhận dạng.
Thuộc tính của các loại mối quan hệ
•Mối quan hệ có thể có các thuộc tính (ví dụ: Số giờ mỗi tuần trong WORKS_ON).
Ký hiệu
•Sơ đồ ER sử dụng các hình dạng cụ thể: hình chữ nhật cho thực thể, hình bầu dục cho thuộc tính, hình
thoi cho mối quan hệ. Các ràng buộc được thể hiện bằng số và dòng.
Ký hiệu thay thế
•Sơ đồ lớp UML thể hiện các thực thể, thuộc tính và mối quan hệ một cách khác nhau, phù hợp cho cả cơ
sở dữ liệu và thiết kế hướng đối tượng.Higher-Degree Relationships
Mối quan hệ cao cấp hơn
•Mối quan hệ với nhiều hơn hai thực thể có những ràng buộc và ý nghĩa phức tạp hơn.
Công cụ lập mô hình dữ liệu
•Có nhiều công cụ khác nhau dành cho mô hình hóa khái niệm (ví dụ: ERWin, ER-Studio), mỗi công cụ
đều có điểm mạnh và điểm yếu.
Tóm tắt
•Chương này đề cập đến các khái niệm, ràng buộc của mô hình ER và quá trình tạo các lược đồ khái
niệm bằng cách sử dụng sơ đồ ER, đồng thời đề cập đến các ký hiệu thay thế và các công cụ mô hình hóa
dữ liệu. Các chương tiếp theo sẽ khám phá mô hình Mối quan hệ thực thể mở rộng (EER).
Tóm tắt chương 5: Mô hình dữ liệu quan hệ và các ràng buộc của cơ sở dữ liệu quan hệ
Khái niệm mô hình quan hệ
•Mô hình quan hệ do Tiến sĩ E.F. Codd đề xuất năm 1970, là nền tảng cho việc quản lý dữ liệu, sử dụng
khái niệm quan hệ (bảng).
•Một mối quan hệ bao gồm các bộ (hàng) và thuộc tính (cột), với mỗi thuộc tính có một miền giá trị hợp
lệ được xác định.
•Lược đồ của một quan hệ được ký hiệu là R(A1, A2, ..., An), trong đó R là tên quan hệ và A1 đến An là
các thuộc tính.
•Một bộ là một tập hợp các giá trị có thứ tự tương ứng với các thuộc tính của quan hệ và mỗi giá trị phải
thuộc về miền của thuộc tính tương ứng.
Đặc điểm của mối quan hệ
•Các bộ không có thứ tự nhưng các thuộc tính có thứ tự.
• Các giá trị trong bộ dữ liệu là nguyên tử (không thể chia được) và mỗi giá trị phải tuân theo miền của
thuộc tính.
•Giá trị null biểu thị dữ liệu không xác định hoặc không thể áp dụng.
Hạn chế
Các ràng buộc đảm bảo tính toàn vẹn dữ liệu và có ba loại chính:
1.Ràng buộc cố hữu: Dựa trên mô hình dữ liệu (ví dụ: không có danh sách nào làm giá trị thuộc tính).
2.Các ràng buộc dựa trên lược đồ: Được xác định trong lược đồ (ví dụ: số lượng bản số).
3. Ràng buộc dựa trên ứng dụng: Được thực thi bởi các chương trình ứng dụng (ví dụ: quy tắc kinh
doanh).
Các loại ràng buộc toàn vẹn quan hệ
1.Ràng buộc khóa: Xác định nhận dạng duy nhất của các bộ dữ liệu thông qua các khóa (ví dụ: khóa
chính).
2.Tính toàn vẹn của thực thể: Thuộc tính khóa chính không thể có giá trị null.
3. Tính toàn vẹn tham chiếu: Khóa ngoại phải tham chiếu đến khóa chính hiện có hoặc không có giá trị.
Cập nhật hoạt động
•Chèn: Phải tôn trọng mọi ràng buộc; vi phạm có thể xảy ra nếu tên miền bị vi phạm hoặc các ràng buộc
khóa/khóa ngoại bị phá vỡ.
•Xóa: Có thể vi phạm tính toàn vẹn tham chiếu nếu khóa chính được tham chiếu ở nơi khác; có thể sử
dụng các tùy chọn như GIỚI HẠN hoặc CASCADE.
•Cập nhật: Có thể vi phạm nhiều ràng buộc khác nhau tùy thuộc vào nội dung được sửa đổi (ví dụ: khóa
chính, khóa ngoại).
Tóm tắt
Chương này đề cập đến các khái niệm nền tảng của mô hình quan hệ, bản chất của các mối quan hệ và
các thuộc tính của chúng, các loại ràng buộc duy trì tính toàn vẹn của cơ sở dữ liệu và cách các hoạt động
cập nhật có thể tác động đến các ràng buộc này.
CHƯƠNG 6: Tóm tắt SQL cơ bản
Tổng quan về SQL:
•SQL (Ngôn ngữ truy vấn có cấu trúc) có nguồn gốc từ phép tính vị từ quan hệ (bộ tính toán bộ) và ban
đầu được gọi là SQUARE, sau đó được rút ngắn thành SQL do vấn đề bản quyền.
•SQL là yếu tố then chốt tạo nên sự thành công của cơ sở dữ liệu quan hệ và đóng vai trò là sự thể hiện
thực tế của mô hình dữ liệu quan hệ.
Định nghĩa dữ liệu và kiểu dữ liệu:
•Thuật ngữ: Bảng, hàng và cột tương ứng với các quan hệ, bộ dữ liệu và thuộc tính trong mô hình quan
hệ.
•CREATE Statement: Lệnh chính để xác định cấu trúc dữ liệu.
•Lược đồ và Danh mục: Lược đồ được xác định bằng tên và bao gồm các bảng, ràng buộc và các cấu trúc
khác.
Các kiểu dữ liệu:
•Các loại cơ bản bao gồm số (INTEGER, FLOAT), ký tự (CHAR, VARCHAR), boolean, ngày và dấu
thời gian.
•Có thể tạo tên miền để quản lý loại dữ liệu dễ dàng hơn.
Hạn chế:
•Ràng buộc cơ bản: Ràng buộc khóa (khóa chính không thể trùng lặp), tính toàn vẹn của thực thể (khóa
chính không thể rỗng) và tính toàn vẹn tham chiếu (khóa ngoại phải khớp với khóa chính).
•Ràng buộc thuộc tính: Bao gồm các giá trị mặc định, mệnh đề NOT NULL và CHECK.
Truy vấn truy xuất:
• Câu lệnh SELECT: Phương pháp cơ bản để truy xuất dữ liệu; cho phép chiếu, lựa chọn và nối.
•Tên mơ hồ: Sử dụng tên đủ tiêu chuẩn để tránh nhầm lẫn; bí danh có thể đơn giản hóa các truy vấn.
• Mệnh đề WHERE không xác định: Kết quả là tích Descartes; sử dụng * để chọn tất cả các thuộc tính.
•DISTINCT và Thiết lập các hoạt động: Quản lý các bản sao bằng DISTINCT; SQL hỗ trợ các hoạt
động tập hợp như UNION và INTERSECT.
Tuyên bố sửa đổi:
•INSERT: Thêm các bộ dữ liệu vào một bảng, quan sát các ràng buộc về kiểu dữ liệu.
•DELETE: Loại bỏ các bộ dữ liệu dựa trên các điều kiện đã chỉ định; mệnh đề WHERE bị thiếu sẽ xóa
tất cả các bộ dữ liệu.
• CẬP NHẬT: Sửa đổi thuộc tính của các bộ dữ liệu đã chọn bằng mệnh đề SET.
Các tính năng bổ sung:
•SQL bao gồm các lệnh dành cho các truy vấn phức tạp, kiểm soát giao dịch và quản lý đặc quyền người
dùng.
•Hỗ trợ các tính năng quan hệ đối tượng và các công nghệ mới như XML.
Tóm tắt:
•SQL là ngôn ngữ toàn diện để quản lý cơ sở dữ liệu quan hệ, bao gồm định nghĩa dữ liệu, truy vấn, cập
nhật và đặc tả ràng buộc. Các tính năng chính bao gồm tạo lược đồ, kiểu dữ liệu, ràng buộc và các lệnh
cơ bản để thao tác dữ liệu.
Chương 7: Thông tin thêm về SQL - Truy vấn phức tạp, Tnh kích hoạt, Chế độ xem và Sửa đổi
lược đồ
Truy vấn truy xuất SQL phức tạp
•Tính năng nâng cao: Truy vấn lồng nhau, nối bảng, nối ngoài, hàm tổng hợp và nhóm.
•Xử lý NULL: NULL biểu thị các giá trị không xác định, không khả dụng hoặc không áp dụng được, dẫn
đến logic ba giá trị (TRUE, FALSE, UNKNOWN).
•So sánh: Sử dụng IS NULL và IS NOT NULL để kiểm tra giá trị NULL.
Truy vấn lồng nhau và so sánh tập hợp
•Truy vấn lồng nhau: Truy vấn trong mệnh đề WHERE của một truy vấn khác, sử dụng các toán tử như
IN, ANY và ALL.
•Truy vấn tương quan: Được đánh giá một lần cho mỗi bộ dữ liệu trong truy vấn bên ngoài.
Các hàm EXISTS và UNIQUE
•EXISTS: Kiểm tra xem kết quả của truy vấn lồng nhau có trống không.
•UNIQUE: Trả về TRUE nếu không có kết quả trùng lặp nào trong kết quả.
Tham gia trong SQL
•Các loại tham gia: INNER JOIN (mặc định), LEFT OUTER JOIN, RIGHT OUTER JOIN, FULL
OUTER JOIN.
•THAM GIA TỰ NHIÊN: Tự động nối trên các cột có cùng tên.
Hàm tổng hợp và nhóm
•Chức năng: COUNT, SUM, MAX, MIN, AVG.
• Mệnh đề GROUP BY: Nhóm kết quả để tổng hợp.
• Mệnh đề HAVING: Lọc các nhóm dựa trên điều kiện tổng hợp.
Điều khoản VỚI và Tuyên bố CASE
• Mệnh đề WITH: Xác định các chế độ xem tạm thời cho các truy vấn phức tạp.
•Câu lệnh CASE: Cung cấp logic có điều kiện trong các truy vấn.
Truy vấn đệ quy
•Mối quan hệ đệ quy: Truy vấn để truy xuất dữ liệu phân cấp, ví dụ: nhân viên và người giám sát của họ.
Kích hoạt và xác nhận
•TẠO TRIGGER: Theo dõi các sự kiện cơ sở dữ liệu và xác định hành động.
•TẠO XÁC NHẬN: Chỉ định các ràng buộc ngoài kiểm tra tiêu chuẩn.
Chế độ xem trong SQL
•Bảng ảo: Được tạo bằng cách sử dụng CREATE VIEW, cho phép truy cập động vào dữ liệu cơ bản.
•Xem bản cập nhật: Được phép trong một số điều kiện nhất định, với tùy chọn sử dụng VỚI TÙY CHỌN
KIỂM TRA.
Sửa đổi lược đồ
•Lệnh DROP: Loại bỏ các thành phần lược đồ (bảng, dạng xem) bằng các tùy chọn như CASCADE và
RESTRICT.
•ALTER TABLE: Sửa đổi cấu trúc bảng hiện có (thêm/thả cột, thay đổi định nghĩa).
Tóm tắt
Thành thạo SQL phức tạp bao gồm các truy vấn lồng nhau, phép nối, hàm tổng hợp, xử lý NULL và phát
triển lược đồ thông qua các xác nhận và trình kích hoạt. Hiểu các khái niệm này là rất quan trọng để quản
lý và truy vấn cơ sở dữ liệu hiệu quả.
Chương 8: Cơ sở Dữ liệu Phân tán
1. Giới thiệu về Cơ sở Dữ liệu Phân tán (DDBMS): Là hệ thống kết nối nhiều cơ sở dữ liệu tại các nút
khác nhau qua mạng, tạo thành hệ thống dữ liệu thống nhất.
- Ví dụ: Công ty có nhiều văn phòng ở các thành phố, mỗi văn phòng lưu dữ liệu riêng nhưng có thể
truy cập vào hệ thống chung.
2. Các loại phân mảnh dữ liệu:
- Phân mảnh ngang: Chia dữ liệu theo hàng (ví dụ: phân chia khách hàng theo khu vực).
- Phân mảnh dọc: Chia dữ liệu theo cột (ví dụ: tách thông tin liên lạc và thông tin mua hàng).
3. Sao chép dữ liệu (Replication):
- Nhiều bản sao của cùng một dữ liệu để đảm bảo tính sẵn sàng.
- Sao chép toàn bộ: Mọi dữ liệu đều có bản sao ở mỗi địa điểm.
- Sao chép một phần: Chỉ một số phần dữ liệu được sao chép.
4. Ưu điểm của Cơ sở Dữ liệu Phân tán:
- Tính sẵn sàng cao: Hệ thống vẫn hoạt động khi một phần bị hỏng.
- Cải thiện hiệu suất: Dữ liệu gần người dùng hơn.
- Mở rộng dễ dàng: Thêm nút mới mà không ảnh hưởng đến hệ thống.
5. Kiểm soát truy vấn và tối ưu hóa:
- Phức tạp hơn khi dữ liệu phân tán, cần tối ưu hóa để truy vấn nhanh nhất có thể.
6. Kiểm soát song song và phục hồ:
- Sử dụng khóa để kiểm soát đồng thời và phương pháp cam kết hai pha để đảm bảo giao dịch an toàn.
7. Loại Hệ Thống DDBMS:
- Hệ thống đồng nhất và không đồng nhất dựa trên phần mềm và cấu trúc dữ liệu tương đồng.
- Hệ thống liên bang cho phép các cơ sở dữ liệu độc lập hoạt động như một hệ thống thống nhất.
8. Quản Lý Giao Dịch:
- Giao thức cam kết hai pha đảm bảo giao dịch chỉ hoàn tất khi mọi nút đã cam kết thành công.
9. Quản Lý Danh Mục Phân Tán:
- Danh mục tập trung: Thông tin danh mục lưu tại một nơi duy nhất.
- Nhân bản danh mục: Các bản sao tại mỗi nút để truy vấn nhanh hơn, nhưng tốn tài nguyên.
Chương 12:
1. Khái niệm Cơ bản về Cơ sở dữ liệu Đối tượng:
- Cơ sở dữ liệu đối tượng (ODB) và hệ thống quản lý dữ liệu đối tượng (ODMS) đáp ứng nhu cầu của các
ứng dụng phức tạp hơn bằng cách xác định cấu trúc của các đối tượng phức tạp và các thao tác có thể
được áp dụng cho các đối tượng này.
- Khái niệm hướng đối tượng bắt nguồn từ các ngôn ngữ lập trình hướng đối tượng. Một đối tượng có hai
thành phần: trạng thái (giá trị) và hành vi (thao tác). Các biến thể hiện (thuộc tính) lưu giữ các giá trị xác
định trạng thái nội bộ của đối tượng. Thao tác được xác định bởi hai phần: chữ ký (giao diện) và triển
khai (phương thức).
- Một số khái niệm quan trọng khác bao gồm:
●Tính kế thừa: Cho phép xác định các kiểu hoặc lớp mới kế thừa phần lớn cấu trúc và/hoặc thao tác từ
các kiểu hoặc lớp đã được xác định trước đó.
●Nạp chồng toán tử: Khả năng của một toán tử được áp dụng cho các kiểu đối tượng khác nhau.
●Nhận dạng đối tượng: Mỗi đối tượng có một nhận dạng duy nhất được triển khai thông qua mã định
danh đối tượng (OID) do hệ thống tạo ra.
●Cấu trúc kiểu phức tạp: Đối tượng và giá trị (literal) có thể có cấu trúc phức tạp, chứa tất cả thông tin
cần thiết để mô tả chúng. Các hàm tạo kiểu như atom, struct, và collection được sử dụng để tạo ra các
kiểu phức tạp từ các kiểu khác.
●Đóng gói thao tác: Liên quan đến các kiểu dữ liệu trừu tượng, xác định hành vi của một lớp đối tượng
dựa trên các thao tác có thể được áp dụng bên ngoài.
●Tồn tại của đối tượng: Đối tượng tạm thời tồn tại trong chương trình đang thực thi và biến mất sau khi
chương trình kết thúc. Đối tượng liên tục được lưu trữ trong cơ sở dữ liệu và tồn tại sau khi chương trình
kết thúc.
2. Các Tính năng Quan hệ Đối tượng:
- Mở rộng Cơ sở dữ liệu Đối tượng cho SQL
- SQL được mở rộng để hỗ trợ các tính năng hướng đối tượng:
●Hàm tạo kiểu: Xác định các kiểu phức tạp bằng UDT (User-Defined Type).
●Cơ chế nhận dạng đối tượng: Cung cấp cơ chế để chỉ định nhận dạng đối tượng.
●Đóng gói thao tác: Được cung cấp thông qua UDT.
●Cơ chế kế thừa: Được cung cấp bằng cách sử dụng từ khóa UNDER.
- UDT được sử dụng để tạo ra các kiểu phức tạp cho thuộc tính hoặc làm cơ sở cho bảng đối tượng. Các
mảng được sử dụng để chỉ định các tập hợp. Kiểu tham chiếu được sử dụng để tạo OID duy nhất.
- Từ khóa INSTANTIABLE chỉ định UDT có thể khởi tạo được, cho phép tạo bảng dựa trên UDT. Nếu
không có từ khóa này, UDT chỉ có thể được sử dụng làm kiểu dữ liệu thuộc tính.
3. Mô hình Đối tượng ODMG và Ngôn ngữ Định nghĩa Đối tượng ODL
- Mô hình đối tượng ODMG là mô hình dữ liệu cho ngôn ngữ định nghĩa đối tượng (ODL) và ngôn ngữ
truy vấn đối tượng (OQL).
- Trong mô hình ODMG:
●Đối tượng: Có năm khía cạnh: mã định danh, tên, thời gian tồn tại, cấu trúc và tạo.
●Giá trị (Literal): Không có mã định danh đối tượng.
●Giao diện: Chỉ định hành vi của một kiểu đối tượng.
●Lớp: Xác định cả trạng thái (thuộc tính) và hành vi (thao tác) của một kiểu đối tượng.
●Tính kế thừa: Kế thừa hành vi (IS-A) được chỉ định bằng dấu hai chấm (:), kế thừa EXTENDS kế thừa
cả trạng thái và hành vi.
- ODL hỗ trợ các cấu trúc ngữ nghĩa của mô hình đối tượng ODMG và độc lập với bất kỳ ngôn ngữ lập
trình cụ thể nào.
4. Thiết kế Khái niệm Cơ sở dữ liệu Đối tượng
- Sự khác biệt giữa thiết kế khái niệm của ODB và RDB nằm ở cách xử lý các mối quan hệ, tính kế thừa
và sự khác biệt triết lý về đặc tả hành vi giữa mô hình quan hệ và mô hình đối tượng.
5. Ngôn ngữ Truy vấn Đối tượng OQL
- OQL là ngôn ngữ truy vấn được đề xuất cho mô hình đối tượng ODMG. Cú pháp cơ bản của OQL
select ... from ... where ... structure.
- Kết quả của truy vấn OQL có thể là bất kỳ kiểu nào được thể hiện trong mô hình đối tượng ODMG.
OQL hỗ trợ biểu thức đường dẫn, truy vấn được đặt tên, toán tử tổng hợp, toán tử thành viên và định
lượng trên tập hợp, thao tác đặc biệt cho tập hợp có thứ tự, mệnh đề group by và having.
6. Tổng quan về Liên kết Ngôn ngữ C++ trong Tiêu chuẩn ODMG
- Liên kết ngôn ngữ C++ chỉ định cách ánh xạ các cấu trúc ODL sang các cấu trúc C++. Nó sử dụng tiền
tố d_ cho các khai báo lớp liên quan đến các khái niệm cơ sở dữ liệu
Tóm tắt Chương 24:
Giới thiệu NoSQL
NoSQL là một loại cơ sở dữ liệu không tuân theo cấu trúc quan hệ truyền thống (SQL). Nó được thiết kế
để xử lý lượng lớn dữ liệu, có khả năng mở rộng cao và linh hoạt hơn trong việc lưu trữ các loại dữ liệu
đa dạng.
Đặc điểm chính của NoSQL:
Phân tán: Dữ liệu được phân bố trên nhiều máy chủ, tăng khả năng mở rộng và sẵn sàng.
Không có lược đồ: Cấu trúc dữ liệu linh hoạt, cho phép thay đổi dễ dàng.
Hiệu năng cao: Tối ưu hóa cho các hoạt động đọc/ghi dữ liệu lớn.
Khả năng mở rộng: Có thể dễ dàng thêm hoặc xóa các máy chủ để đáp ứng nhu cầu tăng trưởng.
Các loại hệ thống NoSQL phổ biến:
Dựa trên tài liệu: Lưu trữ dữ liệu dưới dạng các tài liệu (ví dụ: MongoDB).
Kho lưu trữ khóa-giá trị: Lưu trữ dữ liệu dưới dạng các cặp khóa-giá trị (ví dụ: DynamoDB).
Dựa trên cột: Lưu trữ dữ liệu theo cột, hiệu quả cho các truy vấn chỉ trên một phần nhỏ dữ liệu
(ví dụ: HBase).
Dựa trên đồ thị: Lưu trữ dữ liệu dưới dạng đồ thị, thích hợp cho các mối quan hệ phức tạp (ví
dụ: Neo4j).
Định lý CAP:
Trong hệ thống phân tán, không thể đảm bảo đồng thời cả ba tính chất:
Consistency (Nhất quán): Mọi nút đều có cùng một bản sao dữ liệu.
Availability (Khả dụng): Hệ thống luôn sẵn sàng phục vụ yêu cầu.
Partition Tolerance (Khả năng chịu lỗi phân vùng): Hệ thống vẫn hoạt động khi có lỗi mạng
xảy ra.
MongoDB: Là một ví dụ điển hình của hệ thống NoSQL dựa trên tài liệu. Nó cung cấp khả năng lưu trữ,
truy vấn và phân tích dữ liệu linh hoạt, phù hợp với nhiều ứng dụng hiện đại.
Các khái niệm quan trọng trong MongoDB:
Bộ sưu tập: Tương tự như bảng trong SQL, nhưng không có cấu trúc cố định.
Tài liệu: Mỗi tài liệu là một đối tượng JSON, có thể chứa các trường dữ liệu khác nhau.
Phân mảnh: Chia dữ liệu thành các phần nhỏ để phân phối trên nhiều máy chủ.
Sao chép: Tạo nhiều bản sao của dữ liệu để tăng khả năng phục hồi.
Tóm tắt:
NoSQL là một công nghệ cơ sở dữ liệu mạnh mẽ, phù hợp với các ứng dụng đòi hỏi khả năng xử lý lượng
lớn dữ liệu, linh hoạt và mở rộng. Việc lựa chọn loại cơ sở dữ liệu NoSQL phù hợp phụ thuộc vào yêu cầu
cụ thể của từng ứng dụng.
Chương 25: CÔNG NGHỆ DỮ LIỆU LỚN DỰA TRÊN VỀ MAPREDUCE VÀ HADOOP
Big data là gì? Dữ liệu có quy mô lớn, vượt quá khả năng xử lý của các hệ thống quản trị cơ sở dữ liệu
truyền thống.
CÁC ĐẶC TRƯNG CỦA BIG DATA
Âm lượng: Khối lượng dữ liệu khổng lồ.
Đa dạng: Nhiều loại dữ liệu khác nhau (cấu trúc, không cấu trúc).
Chính xác: Độ tin cậy và phù hợp của dữ liệu.
Tốc độ: Tốc độ tạo ra, thu thập và xử lý dữ liệu nhanh chóng.
GIỚI THIỆU VỀ MAPREDUCE VÀ HADOOP.
Các thành phần cốt lõi của Hadoop:
Paradigm lập trình MapReduce.
Hệ thống tệp phân tán Hadoop(HDFS)
Hadoop bắt nguồn từ nỗ lực tìm kiếm công cụ tìm kiếm mã nguồn mở
MapReduce
MÔ HÌNH LẬP TRÌNH MAPREDUCE
Map Hàm chung nhận một khóa có kiểu K1 và giá trị có kiểu V1 Trả về mộtdanh sách các cặp khóa-
giátrị có kiểu K2 và V2; Hàm chung nhận một khóa có kiểu K2 và một danh sách các giá trị V2 Reduce
và trả về các cặp có kiểu (K3, V3); Kết quả từ hàm map phải phù hợp với kiểu đầu vào của hàm reduce
Distributed grep Tìm kiếm một mẫu cụ thể trong một tệp ; Hàm map phát ra một dòng nếu nó khớp với
mẫu được cung cấp ; Hàm reduce là một hàm định danh
Đồ thị liên kết ngược Đầu ra là các cặp (URL đích, URL nguồn) cho mỗi liên kết đến một trang đích
được tìm thấy trong một trang nguồn
Công việc Mã cho các giai đoạn Map và Reduce,một tập hợp các tài liệu và thuộc tính
Chỉ mục nghịch đảo Xây dựng một chỉ mục nghịch đảo dựa trên tất cả các từ có trong một kho tài liệu
Hàm map phân tích từng tài liệu Phát ra một chuỗi cáccặp (từ, id_tài_liệu) Hàm reducelấy tất cả các ; ;
cặp cho một từ đã cho và sắp xếp chúng theo id_tài_liệu
Phiên bản Hadoop ; Các tính năngcủa phiên bản 1.x Tính năng 2.x
CÁC CHI TIẾT BỔ SUNG MAPREDUCE
Môi trường chạy MapReduce Luồng tổng thể của một công việc MapReduce; Khả năng chịu lỗi ;
trongMapReduce; Quy trình xáo trộn; Chiến lược cho các phép nối tương đương trong môi trường
MapReduce; Lập lịch công việc; Apache Pig; Apache Hive.
HỆ THỐNG TỆP PHÂN TÁN HADOOP (HDFS)
Giả định và mục tiêu thiết kế HDFS; HDFS; Kiến trúc HDFS; NameNode; Secondary NameNodes; Hoạt
động I/O tệp; Đặt khối; Quản lý bản sao; Khả năng mở rộng của HDFS.
HỆ SINH THÁI HADOOP
Các dự án liên quan với chức năng bổ sung
Pig và hive Cung cấp giao diện cấp cao hơn để làm việc với khung Hadoop
Sqoop Thư viện và môi trường chạy để di chuyển dữ liệu hiệu quả giữa cơ sở dữ liệu quan hệ và HDFS
Oozie Dịch vụ lập lịch và chạy quy trình công việc
HBase Lưu trữ cột hướng đốitượng sử dụng HDFS
LỢI ÍCH CỦA CÔNG NGHỆ HADOOP/MAPREDUCE
Tốc độ tìm kiếm đĩa là yếu tố giới hạn khi làm việc với tập dữ liệu rất lớn; Tốc độ truyền là một tính năng
điện tử và đang tăng dần; MapReduce xử lý các tập dữ liệu lớn song song; MapReduce xử lý dữ liệu bán
cấu trúc và tập dữ liệu khóa-giá trị dễ dàng hơn; Khả năng mở rộng tuyến tính
LÝ DO PHÁT TRIỂN HADOOPV2
JobTracker trở thành điểm hạn chế; Sử dụng tài nguyên cụm không đạt yêu cầu; Các loại ứng dụng khác
nhau không phù hợp với mô hình MR; Khó để theo kịp các phiên bản mã nguồn mở mới của Hadoop
KIẾN TRÚC YARN
Tách quản lý tài nguyên cụm khỏi quản lý công việc; ApplicationMasters gửi ResourceRequests đến
ResourceManager, sau đó ResourceManager phản hồi với việc cho thuê Container cụm; NodeManager
chịu trách nhiệm quản lý Containers trên các nút của họ; ResourceManager và NodeManager cùng tạo
nên một nền tảngđể chứa bất kỳ ứng dụng nào trên YARN
CÁC FRAMEWORK KHÁC TRÊN YARN
Apache Tez Apache Giraph; Hoya: HBase trên YARN;
Chương 29:
1. Mục đích của kho dữ liệu:
●Các cơ sở dữ liệu truyền thống không được tối ưu hóa cho việc truy cập dữ liệu - chúng phải cân bằng
yêu cầu truy cập dữ liệu với nhu cầu đảm bảo tính toàn vẹn của dữ liệu.
●Kho dữ liệu (DW) cung cấp quyền truy cập để phân tích dữ liệu phức tạp, khám phá tri thức và hỗ trợ
quyết định thông qua các truy vấn đặc biệt và đóng hộp.
●Người dùng kho dữ liệu hầu hết chỉ cần quyền truy cập đọc, nhưng cần truy cập nhanh chóng trên khối
lượng dữ liệu lớn.
●Hầu hết dữ liệu cần thiết cho phân tích kho dữ liệu đến từ nhiều nguồn, có thể bao gồm cơ sở dữ liệu từ
các mô hình dữ liệu khác nhau và đôi khi là các tệp được lấy từ các hệ thống và nền tảng độc lập.
2. Giới thiệu, định nghĩa và thuận ngữ:
Kho dữ liệu (DW) là một hệ thống quản lý cơ sở dữ liệu khác biệt, được thiết kế đặc biệt để lưu trữ thông
tin lịch sử được tổng hợp nhằm hỗ trợ quá trình ra quyết định của doanh nghiệp. Không giống như các cơ
sở dữ liệu truyền thống (OLTP) tập trung vào việc xử lý giao dịch và đảm bảo tính toàn vẹn dữ liệu, kho
dữ liệu (OLAP) tối ưu hóa cho việc truy cập và phân tích dữ liệu phức tạp, khai phá tri thức và hỗ trợ
quyết định.
3. So sánh kho dữ liệu với Cơ sở dữ liệu truyền thông:
Cả hai đều cung cấp bản sao dữ liệu chỉ đọc từ cơ sở dữ liệu, tuy nhiên kho dữ liệu khác với View ở các
điểm sau:
●Kho dữ liệu được lưu trữ lâu dài, trong khi View được tạo theo yêu cầu.
●Kho dữ liệu có cấu trúc đa chiều, trong khi View thường là hai chiều.
●Kho dữ liệu có thể được lập chỉ mục để tối ưu hóa hiệu suất, trong khi View thì không.
●Kho dữ liệu hỗ trợ các chức năng phân tích đặc biệt, trong khi View thì không.
●Kho dữ liệu xử lý lượng dữ liệu lớn được tích hợp từ nhiều nguồn, trong khi View thường chỉ truy cập
dữ liệu từ một cơ sở dữ liệu.
4. Đặc điểm nổi bật của kho dữ liệu:
●Hướng đến chủ đề: Dữ liệu được tổ chức theo các chủ đề kinh doanh cụ thể, giúp dễ dàng truy xuất
thông tin liên quan đến một lĩnh vực cụ thể.
●Tích hợp: Dữ liệu được tổng hợp từ nhiều nguồn khác nhau, đảm bảo tính nhất quán và toàn diện.
●Không biến động: Dữ liệu trong kho dữ liệu là tĩnh, không thay đổi theo thời gian, phản ánh lịch sử hoạt
động của doanh nghiệp.
●Biến thiên theo thời gian: Dữ liệu được lưu trữ theo dòng thời gian, cho phép phân tích xu hướng và
thay đổi theo thời gian.
●Cấu trúc đa chiều: Dữ liệu được tổ chức theo nhiều chiều (ví dụ: thời gian, sản phẩm, khu vực), giúp
phân tích dữ liệu theo nhiều góc độ khác nhau.
5. Các chức năng chính của kho dữ liệu:
●Pivot: Xoay bảng dữ liệu để xem dữ liệu từ các góc nhìn khác nhau.
●Roll-up (Drill-up): Tổng hợp dữ liệu theo mức độ khái quát tăng dần (ví dụ: từ tuần lên quý, từ quý lên
năm).
●Drill-down: Hiển thị chi tiết dữ liệu ở mức độ chi tiết hơn (ngược lại với roll-up).
●Slice and Dice: Lọc và chọn dữ liệu theo các chiều khác nhau.
●Sorting: Sắp xếp dữ liệu theo thứ tự.
●Selection: Lọc dữ liệu theo giá trị hoặc phạm vi.
●Derived Attributes: Tính toán các thuộc tính dựa trên dữ liệu đã lưu trữ.
6. Quá trình xây dựng kho dữ liệu bao gồm:
●Thu thập dữ liệu: Trích xuất dữ liệu từ nhiều nguồn, đảm bảo tính nhất quán và làm sạch dữ liệu.
●ETL (Extract, Transform, Load): Trích xuất, chuyển đổi và tải dữ liệu vào kho dữ liệu.
●Lựa chọn mô hình dữ liệu: Sử dụng các mô hình dữ liệu đa chiều như Star Schema, Snowflake Schema
hoặc Fact Constellation.
●Xây dựng kho dữ liệu: Lưu trữ dữ liệu, tạo cấu trúc dữ liệu, cung cấp đường dẫn truy cập và cập nhật dữ
liệu.
●Quản lý siêu dữ liệu: Lưu trữ thông tin về dữ liệu trong kho dữ liệu, bao gồm cả siêu dữ liệu kỹ thuật và
nghiệp vụ.
7. Khó khăn khi triển khai kho dữ liệu:
●Thời gian xây dựng và bảo trì kho dữ liệu có thể kéo dài.
●Chất lượng và tính nhất quán của dữ liệu là mối quan tâm lớn.
●Cần cập nhật thường xuyên các dự báo sử dụng để đáp ứng yêu cầu hiện tại.
●Yêu cầu kỹ năng quản trị rộng hơn so với cơ sở dữ liệu truyền thống.
8. Xu hướng tương lai của kho dữ liệu:
●Xu hướng chuyển dịch sang các thiết bị phân tích mới như IBM Netezza, EMC Greenplum, SAP Hana
và ParAccel.
●Phân tích dữ liệu lớn (Big Data) thúc đẩy việc sử dụng Hadoop và các cơ sở dữ liệu chuyên biệt khác.
●Nền tảng ảo hóa dữ liệu cho phép xây dựng Kho dữ liệu logic (LDW) trong tương lai.
| 1/19

Preview text:

Chương 2: Khái niệm và kiến trúc hệ thống cơ sở dữ liệu
- Mô hình dữ liệu và danh mục của chúng; Lịch sử mô hình dữ liệu; Lược đồ, trường hợp và trạng thái;
Kiến trúc ba lược đồ; Dữ liệu độc lập; Ngôn ngữ và giao diện DBMS; Công cụ và tiện ích hệ thống cơ sở
dữ liệu; Kiến trúc tập trung và máy khách-máy chủ; Phân loại DBMS.
Mô hình dữ liệu: Các khái niệm mô tả cấu trúc, thao tác và ràng buộc của cơ sở dữ liệu.
- Cấu trúc: Bao gồm các phần tử (thực thể, bản ghi) và các mối quan hệ; các ràng buộc đảm bảo tính hợp lệ của dữ liệu.
- Hoạt động: Bao gồm các hoạt động cơ bản (chèn, xóa, cập nhật) và các chức năng do người dùng xác định.
Danh mục mô hình dữ liệu
1. Mô hình khái niệm: Quan điểm cấp cao, thân thiện với người dùng (ví dụ: mô hình dựa trên thực thể).
2. Mô hình vật lý: Chi tiết cấp thấp về lưu trữ dữ liệu.
3. Mô hình triển khai: Trình độ trung cấp, chẳng hạn như mô hình quan hệ.
4. Mô hình tự mô tả: Mô tả dữ liệu được kết hợp với các giá trị dữ liệu (ví dụ: XML).
Lược đồ so với trường hợp
- Lược đồ cơ sở dữ liệu: Mô tả cấu trúc bao gồm các kiểu và ràng buộc; thay đổi không thường xuyên.
- Trạng thái cơ sở dữ liệu: Dữ liệu hiện tại trong cơ sở dữ liệu; thay đổi thường xuyên. Kiến trúc ba lược đồ
- Internal Schema: Cấu trúc lưu trữ vật lý.
- Lược đồ khái niệm: Cấu trúc tổng thể và các ràng buộc đối với người dùng.
- Lược đồ bên ngoài: Chế độ xem dành riêng cho người dùng.
- Ánh xạ: Chuyển đổi yêu cầu giữa các cấp độ; cho phép dữ liệu độc lập.
Độc lập dữ liệu
- Độc lập logic: Thay đổi lược đồ khái niệm mà không ảnh hưởng đến lược đồ bên ngoài.
-Độc lập vật lý: Thay đổi lược đồ bên trong mà không làm thay đổi lược đồ khái niệm. Ngôn ngữ DBMS
- DDL (Ngôn ngữ định nghĩa dữ liệu): Xác định lược đồ cơ sở dữ liệu.
- DML (Ngôn ngữ thao tác dữ liệu): Truy xuất và cập nhật dữ liệu; bao gồm các hoạt động cấp cao (ví
dụ: SQL) và cấp độ thấp.
- Giao diện: Các tùy chọn độc lập, được nhúng và thân thiện với người dùng (ví dụ: biểu mẫu, ngôn ngữ tự nhiên).
Các tiện ích và công cụ hệ thống cơ sở dữ liệu
- Chức năng: Tải dữ liệu, sao lưu, giám sát hiệu suất, tạo báo cáo.
- Từ điển dữ liệu: Lưu trữ các mô tả lược đồ và các quyết định thiết kế.
Kiến trúc tập trung và kiến trúc máy khách-máy chủ
- DBMS tập trung: Tất cả các thành phần trong một hệ thống; truy cập từ xa thông qua thiết bị đầu cuối.
- Hệ quản trị cơ sở dữ liệu máy khách-máy chủ
- Kiến trúc hai tầng: Máy khách giao tiếp trực tiếp với máy chủ DBMS.
- Kiến trúc ba tầng: Bao gồm một máy chủ ứng dụng cho logic nghiệp vụ, tăng cường bảo mật. Phân loại DBMS
- Dựa trên các mô hình dữ liệu: kế thừa (mạng, phân cấp) so với hiện tại (quan hệ, hướng đối tượng, NOSQL).
- Triển khai: một người dùng so với nhiều người dùng, tập trung và phân tán.
Lịch sử của mô hình dữ liệu
1. Mô hình Mạng: Mô hình ban đầu (1964) tập trung vào các mối quan hệ phức tạp.
2. Mô hình phân cấp: Cấu trúc đơn giản, được áp dụng rộng rãi từ những năm 1960.
3. Mô hình quan hệ: Thống trị từ những năm 1980, sử dụng SQL.
4. Mô hình hướng đối tượng và quan hệ đối tượng: Tích hợp các khái niệm đối tượng vào hệ thống cơ sở dữ liệu. Tóm tắt
Chương này đề cập đến các mô hình dữ liệu khác nhau, hoạt động của chúng, sự khác biệt giữa lược đồ
và thể hiện, kiến trúc ba lược đồ, tính độc lập của dữ liệu và phân loại DBMS, cùng với sự phát triển lịch
sử trong công nghệ cơ sở dữ liệu.
Chương 3: Lập mô hình dữ liệu bằng mô hình mối quan hệ thực thể (ER) Tổng quan
•Quy trình thiết kế cơ sở dữ liệu: Bao gồm thiết kế cơ sở dữ liệu và thiết kế ứng dụng. Chương này tập
trung vào thiết kế cơ sở dữ liệu khái niệm, đặc biệt là sử dụng các mô hình ER.
•Phương pháp: Bao gồm Sơ đồ ER (chương này) và Sơ đồ ER nâng cao (Chương 4). Sơ đồ lớp UML
cũng được sử dụng trong công nghiệp.
Cơ sở dữ liệu mẫu: CÔNG TY •Yêu cầu:
BỘ PHẬN có tên, số điện thoại, người quản lý và địa điểm.
DỰ ÁN có tên, mã số và vị trí duy nhất do các BAN kiểm soát.
NHÂN VIÊN có SSN, địa chỉ, lương và có thể làm việc trên nhiều dự án khi có người phụ thuộc.
Khái niệm mô hình ER
•Thực thể và thuộc tính:
Thực thể: Các đối tượng như NHÂN VIÊN, BỘ PHẬN, DỰ ÁN, NGƯỜI PHỤ THUỘC.
Thuộc tính: Đặc điểm của các thực thể, chẳng hạn như Tên, SSN, Địa chỉ, v.v.
Types bao gồm các thuộc tính đơn giản, tổng hợp và đa giá trị.
•Các loại thực thể và thuộc tính chính:
Nhóm các thực thể theo loại. Các thuộc tính chính xác định duy nhất các thực thể (ví dụ: SSN).
• Tập thực thể: Tập hợp các thực thể cùng loại.
Mối quan hệ và các loại mối quan hệ
•Mối quan hệ: Kết nối các thực thể riêng biệt với ý nghĩa cụ thể, ví dụ: NHÂN VIÊN làm việc trên DỰ ÁN.
•Các loại mối quan hệ: Có thể là nhị phân (2 thực thể) hoặc n-ary (nhiều hơn 2). •Hạn chế:
Cardinality: Một-một, một-nhiều, nhiều-nhiều.
Ràng buộc tham gia: Toàn bộ (bắt buộc) hoặc một phần (tùy chọn).
Các loại thực thể yếu
•Các thực thể không có thuộc tính khóa phụ thuộc vào thực thể khác để nhận dạng.
Thuộc tính của các loại mối quan hệ
•Mối quan hệ có thể có các thuộc tính (ví dụ: Số giờ mỗi tuần trong WORKS_ON). Ký hiệu
•Sơ đồ ER sử dụng các hình dạng cụ thể: hình chữ nhật cho thực thể, hình bầu dục cho thuộc tính, hình
thoi cho mối quan hệ. Các ràng buộc được thể hiện bằng số và dòng. Ký hiệu thay thế
•Sơ đồ lớp UML thể hiện các thực thể, thuộc tính và mối quan hệ một cách khác nhau, phù hợp cho cả cơ
sở dữ liệu và thiết kế hướng đối tượng.Higher-Degree Relationships
Mối quan hệ cao cấp hơn
•Mối quan hệ với nhiều hơn hai thực thể có những ràng buộc và ý nghĩa phức tạp hơn.
Công cụ lập mô hình dữ liệu
•Có nhiều công cụ khác nhau dành cho mô hình hóa khái niệm (ví dụ: ERWin, ER-Studio), mỗi công cụ
đều có điểm mạnh và điểm yếu. Tóm tắt
•Chương này đề cập đến các khái niệm, ràng buộc của mô hình ER và quá trình tạo các lược đồ khái
niệm bằng cách sử dụng sơ đồ ER, đồng thời đề cập đến các ký hiệu thay thế và các công cụ mô hình hóa
dữ liệu. Các chương tiếp theo sẽ khám phá mô hình Mối quan hệ thực thể mở rộng (EER).
Tóm tắt chương 5: Mô hình dữ liệu quan hệ và các ràng buộc của cơ sở dữ liệu quan hệ
Khái niệm mô hình quan hệ
•Mô hình quan hệ do Tiến sĩ E.F. Codd đề xuất năm 1970, là nền tảng cho việc quản lý dữ liệu, sử dụng
khái niệm quan hệ (bảng).
•Một mối quan hệ bao gồm các bộ (hàng) và thuộc tính (cột), với mỗi thuộc tính có một miền giá trị hợp lệ được xác định.
•Lược đồ của một quan hệ được ký hiệu là R(A1, A2, ..., An), trong đó R là tên quan hệ và A1 đến An là các thuộc tính.
•Một bộ là một tập hợp các giá trị có thứ tự tương ứng với các thuộc tính của quan hệ và mỗi giá trị phải
thuộc về miền của thuộc tính tương ứng.
Đặc điểm của mối quan hệ
•Các bộ không có thứ tự nhưng các thuộc tính có thứ tự.
• Các giá trị trong bộ dữ liệu là nguyên tử (không thể chia được) và mỗi giá trị phải tuân theo miền của thuộc tính.
•Giá trị null biểu thị dữ liệu không xác định hoặc không thể áp dụng. Hạn chế
Các ràng buộc đảm bảo tính toàn vẹn dữ liệu và có ba loại chính:
1.Ràng buộc cố hữu: Dựa trên mô hình dữ liệu (ví dụ: không có danh sách nào làm giá trị thuộc tính).
2.Các ràng buộc dựa trên lược đồ: Được xác định trong lược đồ (ví dụ: số lượng bản số).
3. Ràng buộc dựa trên ứng dụng: Được thực thi bởi các chương trình ứng dụng (ví dụ: quy tắc kinh doanh).
Các loại ràng buộc toàn vẹn quan hệ
1.Ràng buộc khóa: Xác định nhận dạng duy nhất của các bộ dữ liệu thông qua các khóa (ví dụ: khóa chính).
2.Tính toàn vẹn của thực thể: Thuộc tính khóa chính không thể có giá trị null.
3. Tính toàn vẹn tham chiếu: Khóa ngoại phải tham chiếu đến khóa chính hiện có hoặc không có giá trị.
Cập nhật hoạt động
•Chèn: Phải tôn trọng mọi ràng buộc; vi phạm có thể xảy ra nếu tên miền bị vi phạm hoặc các ràng buộc
khóa/khóa ngoại bị phá vỡ.
•Xóa: Có thể vi phạm tính toàn vẹn tham chiếu nếu khóa chính được tham chiếu ở nơi khác; có thể sử
dụng các tùy chọn như GIỚI HẠN hoặc CASCADE.
•Cập nhật: Có thể vi phạm nhiều ràng buộc khác nhau tùy thuộc vào nội dung được sửa đổi (ví dụ: khóa chính, khóa ngoại). Tóm tắt
Chương này đề cập đến các khái niệm nền tảng của mô hình quan hệ, bản chất của các mối quan hệ và
các thuộc tính của chúng, các loại ràng buộc duy trì tính toàn vẹn của cơ sở dữ liệu và cách các hoạt động
cập nhật có thể tác động đến các ràng buộc này.
CHƯƠNG 6: Tóm tắt SQL cơ bản Tổng quan về SQL:
•SQL (Ngôn ngữ truy vấn có cấu trúc) có nguồn gốc từ phép tính vị từ quan hệ (bộ tính toán bộ) và ban
đầu được gọi là SQUARE, sau đó được rút ngắn thành SQL do vấn đề bản quyền.
•SQL là yếu tố then chốt tạo nên sự thành công của cơ sở dữ liệu quan hệ và đóng vai trò là sự thể hiện
thực tế của mô hình dữ liệu quan hệ.
Định nghĩa dữ liệu và kiểu dữ liệu:
•Thuật ngữ: Bảng, hàng và cột tương ứng với các quan hệ, bộ dữ liệu và thuộc tính trong mô hình quan hệ.
•CREATE Statement: Lệnh chính để xác định cấu trúc dữ liệu.
•Lược đồ và Danh mục: Lược đồ được xác định bằng tên và bao gồm các bảng, ràng buộc và các cấu trúc khác.
Các kiểu dữ liệu:
•Các loại cơ bản bao gồm số (INTEGER, FLOAT), ký tự (CHAR, VARCHAR), boolean, ngày và dấu thời gian.
•Có thể tạo tên miền để quản lý loại dữ liệu dễ dàng hơn. Hạn chế:
•Ràng buộc cơ bản: Ràng buộc khóa (khóa chính không thể trùng lặp), tính toàn vẹn của thực thể (khóa
chính không thể rỗng) và tính toàn vẹn tham chiếu (khóa ngoại phải khớp với khóa chính).
•Ràng buộc thuộc tính: Bao gồm các giá trị mặc định, mệnh đề NOT NULL và CHECK.
Truy vấn truy xuất:
• Câu lệnh SELECT: Phương pháp cơ bản để truy xuất dữ liệu; cho phép chiếu, lựa chọn và nối.
•Tên mơ hồ: Sử dụng tên đủ tiêu chuẩn để tránh nhầm lẫn; bí danh có thể đơn giản hóa các truy vấn.
• Mệnh đề WHERE không xác định: Kết quả là tích Descartes; sử dụng * để chọn tất cả các thuộc tính.
•DISTINCT và Thiết lập các hoạt động: Quản lý các bản sao bằng DISTINCT; SQL hỗ trợ các hoạt
động tập hợp như UNION và INTERSECT.
Tuyên bố sửa đổi:
•INSERT: Thêm các bộ dữ liệu vào một bảng, quan sát các ràng buộc về kiểu dữ liệu.
•DELETE: Loại bỏ các bộ dữ liệu dựa trên các điều kiện đã chỉ định; mệnh đề WHERE bị thiếu sẽ xóa
tất cả các bộ dữ liệu.
• CẬP NHẬT: Sửa đổi thuộc tính của các bộ dữ liệu đã chọn bằng mệnh đề SET.
Các tính năng bổ sung:
•SQL bao gồm các lệnh dành cho các truy vấn phức tạp, kiểm soát giao dịch và quản lý đặc quyền người dùng.
•Hỗ trợ các tính năng quan hệ đối tượng và các công nghệ mới như XML. Tóm tắt:
•SQL là ngôn ngữ toàn diện để quản lý cơ sở dữ liệu quan hệ, bao gồm định nghĩa dữ liệu, truy vấn, cập
nhật và đặc tả ràng buộc. Các tính năng chính bao gồm tạo lược đồ, kiểu dữ liệu, ràng buộc và các lệnh
cơ bản để thao tác dữ liệu.
Chương 7: Thông tin thêm về SQL - Truy vấn phức tạp, Trình kích hoạt, Chế độ xem và Sửa đổi lược đồ
Truy vấn truy xuất SQL phức tạp
•Tính năng nâng cao: Truy vấn lồng nhau, nối bảng, nối ngoài, hàm tổng hợp và nhóm.
•Xử lý NULL: NULL biểu thị các giá trị không xác định, không khả dụng hoặc không áp dụng được, dẫn
đến logic ba giá trị (TRUE, FALSE, UNKNOWN).
•So sánh: Sử dụng IS NULL và IS NOT NULL để kiểm tra giá trị NULL.
Truy vấn lồng nhau và so sánh tập hợp
•Truy vấn lồng nhau: Truy vấn trong mệnh đề WHERE của một truy vấn khác, sử dụng các toán tử như IN, ANY và ALL.
•Truy vấn tương quan: Được đánh giá một lần cho mỗi bộ dữ liệu trong truy vấn bên ngoài.
Các hàm EXISTS và UNIQUE
•EXISTS: Kiểm tra xem kết quả của truy vấn lồng nhau có trống không.
•UNIQUE: Trả về TRUE nếu không có kết quả trùng lặp nào trong kết quả. Tham gia trong SQL
•Các loại tham gia: INNER JOIN (mặc định), LEFT OUTER JOIN, RIGHT OUTER JOIN, FULL OUTER JOIN.
•THAM GIA TỰ NHIÊN: Tự động nối trên các cột có cùng tên.
Hàm tổng hợp và nhóm
•Chức năng: COUNT, SUM, MAX, MIN, AVG.
• Mệnh đề GROUP BY: Nhóm kết quả để tổng hợp.
• Mệnh đề HAVING: Lọc các nhóm dựa trên điều kiện tổng hợp.
Điều khoản VỚI và Tuyên bố CASE
• Mệnh đề WITH: Xác định các chế độ xem tạm thời cho các truy vấn phức tạp.
•Câu lệnh CASE: Cung cấp logic có điều kiện trong các truy vấn. Truy vấn đệ quy
•Mối quan hệ đệ quy: Truy vấn để truy xuất dữ liệu phân cấp, ví dụ: nhân viên và người giám sát của họ.
Kích hoạt và xác nhận
•TẠO TRIGGER: Theo dõi các sự kiện cơ sở dữ liệu và xác định hành động.
•TẠO XÁC NHẬN: Chỉ định các ràng buộc ngoài kiểm tra tiêu chuẩn.
Chế độ xem trong SQL
•Bảng ảo: Được tạo bằng cách sử dụng CREATE VIEW, cho phép truy cập động vào dữ liệu cơ bản.
•Xem bản cập nhật: Được phép trong một số điều kiện nhất định, với tùy chọn sử dụng VỚI TÙY CHỌN KIỂM TRA.
Sửa đổi lược đồ
•Lệnh DROP: Loại bỏ các thành phần lược đồ (bảng, dạng xem) bằng các tùy chọn như CASCADE và RESTRICT.
•ALTER TABLE: Sửa đổi cấu trúc bảng hiện có (thêm/thả cột, thay đổi định nghĩa). Tóm tắt
Thành thạo SQL phức tạp bao gồm các truy vấn lồng nhau, phép nối, hàm tổng hợp, xử lý NULL và phát
triển lược đồ thông qua các xác nhận và trình kích hoạt. Hiểu các khái niệm này là rất quan trọng để quản
lý và truy vấn cơ sở dữ liệu hiệu quả.
Chương 8: Cơ sở Dữ liệu Phân tán
1. Giới thiệu về Cơ sở Dữ liệu Phân tán (DDBMS): Là hệ thống kết nối nhiều cơ sở dữ liệu tại các nút
khác nhau qua mạng, tạo thành hệ thống dữ liệu thống nhất.
- Ví dụ: Công ty có nhiều văn phòng ở các thành phố, mỗi văn phòng lưu dữ liệu riêng nhưng có thể
truy cập vào hệ thống chung.
2. Các loại phân mảnh dữ liệu:
- Phân mảnh ngang: Chia dữ liệu theo hàng (ví dụ: phân chia khách hàng theo khu vực).
- Phân mảnh dọc: Chia dữ liệu theo cột (ví dụ: tách thông tin liên lạc và thông tin mua hàng).
3. Sao chép dữ liệu (Replication):
- Nhiều bản sao của cùng một dữ liệu để đảm bảo tính sẵn sàng.
- Sao chép toàn bộ: Mọi dữ liệu đều có bản sao ở mỗi địa điểm.
- Sao chép một phần: Chỉ một số phần dữ liệu được sao chép.
4. Ưu điểm của Cơ sở Dữ liệu Phân tán:
- Tính sẵn sàng cao: Hệ thống vẫn hoạt động khi một phần bị hỏng.
- Cải thiện hiệu suất: Dữ liệu gần người dùng hơn.
- Mở rộng dễ dàng: Thêm nút mới mà không ảnh hưởng đến hệ thống.
5. Kiểm soát truy vấn và tối ưu hóa:
- Phức tạp hơn khi dữ liệu phân tán, cần tối ưu hóa để truy vấn nhanh nhất có thể.
6. Kiểm soát song song và phục hồ:
- Sử dụng khóa để kiểm soát đồng thời và phương pháp cam kết hai pha để đảm bảo giao dịch an toàn.
7. Loại Hệ Thống DDBMS:
- Hệ thống đồng nhất và không đồng nhất dựa trên phần mềm và cấu trúc dữ liệu tương đồng.
- Hệ thống liên bang cho phép các cơ sở dữ liệu độc lập hoạt động như một hệ thống thống nhất.
8. Quản Lý Giao Dịch:
- Giao thức cam kết hai pha đảm bảo giao dịch chỉ hoàn tất khi mọi nút đã cam kết thành công.
9. Quản Lý Danh Mục Phân Tán:
- Danh mục tập trung: Thông tin danh mục lưu tại một nơi duy nhất.
- Nhân bản danh mục: Các bản sao tại mỗi nút để truy vấn nhanh hơn, nhưng tốn tài nguyên. Chương 12:
1. Khái niệm Cơ bản về Cơ sở dữ liệu Đối tượng:
- Cơ sở dữ liệu đối tượng (ODB) và hệ thống quản lý dữ liệu đối tượng (ODMS) đáp ứng nhu cầu của các
ứng dụng phức tạp hơn bằng cách xác định cấu trúc của các đối tượng phức tạp và các thao tác có thể
được áp dụng cho các đối tượng này.
- Khái niệm hướng đối tượng bắt nguồn từ các ngôn ngữ lập trình hướng đối tượng. Một đối tượng có hai
thành phần: trạng thái (giá trị) và hành vi (thao tác). Các biến thể hiện (thuộc tính) lưu giữ các giá trị xác
định trạng thái nội bộ của đối tượng. Thao tác được xác định bởi hai phần: chữ ký (giao diện) và triển khai (phương thức).
- Một số khái niệm quan trọng khác bao gồm:
●Tính kế thừa: Cho phép xác định các kiểu hoặc lớp mới kế thừa phần lớn cấu trúc và/hoặc thao tác từ
các kiểu hoặc lớp đã được xác định trước đó.
●Nạp chồng toán tử: Khả năng của một toán tử được áp dụng cho các kiểu đối tượng khác nhau.
●Nhận dạng đối tượng: Mỗi đối tượng có một nhận dạng duy nhất được triển khai thông qua mã định
danh đối tượng (OID) do hệ thống tạo ra.
●Cấu trúc kiểu phức tạp: Đối tượng và giá trị (literal) có thể có cấu trúc phức tạp, chứa tất cả thông tin
cần thiết để mô tả chúng. Các hàm tạo kiểu như atom, struct, và collection được sử dụng để tạo ra các
kiểu phức tạp từ các kiểu khác.
●Đóng gói thao tác: Liên quan đến các kiểu dữ liệu trừu tượng, xác định hành vi của một lớp đối tượng
dựa trên các thao tác có thể được áp dụng bên ngoài.
●Tồn tại của đối tượng: Đối tượng tạm thời tồn tại trong chương trình đang thực thi và biến mất sau khi
chương trình kết thúc. Đối tượng liên tục được lưu trữ trong cơ sở dữ liệu và tồn tại sau khi chương trình kết thúc.
2. Các Tính năng Quan hệ Đối tượng:
- Mở rộng Cơ sở dữ liệu Đối tượng cho SQL
- SQL được mở rộng để hỗ trợ các tính năng hướng đối tượng:
●Hàm tạo kiểu: Xác định các kiểu phức tạp bằng UDT (User-Defined Type).
●Cơ chế nhận dạng đối tượng: Cung cấp cơ chế để chỉ định nhận dạng đối tượng.
●Đóng gói thao tác: Được cung cấp thông qua UDT.
●Cơ chế kế thừa: Được cung cấp bằng cách sử dụng từ khóa UNDER.
- UDT được sử dụng để tạo ra các kiểu phức tạp cho thuộc tính hoặc làm cơ sở cho bảng đối tượng. Các
mảng được sử dụng để chỉ định các tập hợp. Kiểu tham chiếu được sử dụng để tạo OID duy nhất.
- Từ khóa INSTANTIABLE chỉ định UDT có thể khởi tạo được, cho phép tạo bảng dựa trên UDT. Nếu
không có từ khóa này, UDT chỉ có thể được sử dụng làm kiểu dữ liệu thuộc tính.
3. Mô hình Đối tượng ODMG và Ngôn ngữ Định nghĩa Đối tượng ODL
- Mô hình đối tượng ODMG là mô hình dữ liệu cho ngôn ngữ định nghĩa đối tượng (ODL) và ngôn ngữ
truy vấn đối tượng (OQL). - Trong mô hình ODMG:
●Đối tượng: Có năm khía cạnh: mã định danh, tên, thời gian tồn tại, cấu trúc và tạo.
●Giá trị (Literal): Không có mã định danh đối tượng.
●Giao diện: Chỉ định hành vi của một kiểu đối tượng.
●Lớp: Xác định cả trạng thái (thuộc tính) và hành vi (thao tác) của một kiểu đối tượng.
●Tính kế thừa: Kế thừa hành vi (IS-A) được chỉ định bằng dấu hai chấm (:), kế thừa EXTENDS kế thừa
cả trạng thái và hành vi.
- ODL hỗ trợ các cấu trúc ngữ nghĩa của mô hình đối tượng ODMG và độc lập với bất kỳ ngôn ngữ lập trình cụ thể nào.
4. Thiết kế Khái niệm Cơ sở dữ liệu Đối tượng
- Sự khác biệt giữa thiết kế khái niệm của ODB và RDB nằm ở cách xử lý các mối quan hệ, tính kế thừa
và sự khác biệt triết lý về đặc tả hành vi giữa mô hình quan hệ và mô hình đối tượng.
5. Ngôn ngữ Truy vấn Đối tượng OQL
- OQL là ngôn ngữ truy vấn được đề xuất cho mô hình đối tượng ODMG. Cú pháp cơ bản của OQL là
select ... from ... where ... structure.
- Kết quả của truy vấn OQL có thể là bất kỳ kiểu nào được thể hiện trong mô hình đối tượng ODMG.
OQL hỗ trợ biểu thức đường dẫn, truy vấn được đặt tên, toán tử tổng hợp, toán tử thành viên và định
lượng trên tập hợp, thao tác đặc biệt cho tập hợp có thứ tự, mệnh đề group by và having.
6. Tổng quan về Liên kết Ngôn ngữ C++ trong Tiêu chuẩn ODMG
- Liên kết ngôn ngữ C++ chỉ định cách ánh xạ các cấu trúc ODL sang các cấu trúc C++. Nó sử dụng tiền
tố d_ cho các khai báo lớp liên quan đến các khái niệm cơ sở dữ liệu
Tóm tắt Chương 24: Giới thiệu NoSQL
NoSQL là một loại cơ sở dữ liệu không tuân theo cấu trúc quan hệ truyền thống (SQL). Nó được thiết kế
để xử lý lượng lớn dữ liệu, có khả năng mở rộng cao và linh hoạt hơn trong việc lưu trữ các loại dữ liệu đa dạng.
Đặc điểm chính của NoSQL:
Phân tán: Dữ liệu được phân bố trên nhiều máy chủ, tăng khả năng mở rộng và sẵn sàng. 
Không có lược đồ: Cấu trúc dữ liệu linh hoạt, cho phép thay đổi dễ dàng. 
Hiệu năng cao: Tối ưu hóa cho các hoạt động đọc/ghi dữ liệu lớn. 
Khả năng mở rộng: Có thể dễ dàng thêm hoặc xóa các máy chủ để đáp ứng nhu cầu tăng trưởng.
Các loại hệ thống NoSQL phổ biến:
Dựa trên tài liệu: Lưu trữ dữ liệu dưới dạng các tài liệu (ví dụ: MongoDB). 
Kho lưu trữ khóa-giá trị: Lưu trữ dữ liệu dưới dạng các cặp khóa-giá trị (ví dụ: DynamoDB). 
Dựa trên cột: Lưu trữ dữ liệu theo cột, hiệu quả cho các truy vấn chỉ trên một phần nhỏ dữ liệu (ví dụ: HBase). 
Dựa trên đồ thị: Lưu trữ dữ liệu dưới dạng đồ thị, thích hợp cho các mối quan hệ phức tạp (ví dụ: Neo4j). Định lý CAP:
Trong hệ thống phân tán, không thể đảm bảo đồng thời cả ba tính chất: 
Consistency (Nhất quán): Mọi nút đều có cùng một bản sao dữ liệu. 
Availability (Khả dụng): Hệ thống luôn sẵn sàng phục vụ yêu cầu. 
Partition Tolerance (Khả năng chịu lỗi phân vùng): Hệ thống vẫn hoạt động khi có lỗi mạng xảy ra.
MongoDB: Là một ví dụ điển hình của hệ thống NoSQL dựa trên tài liệu. Nó cung cấp khả năng lưu trữ,
truy vấn và phân tích dữ liệu linh hoạt, phù hợp với nhiều ứng dụng hiện đại.
Các khái niệm quan trọng trong MongoDB:
Bộ sưu tập: Tương tự như bảng trong SQL, nhưng không có cấu trúc cố định. 
Tài liệu: Mỗi tài liệu là một đối tượng JSON, có thể chứa các trường dữ liệu khác nhau. 
Phân mảnh: Chia dữ liệu thành các phần nhỏ để phân phối trên nhiều máy chủ. 
Sao chép: Tạo nhiều bản sao của dữ liệu để tăng khả năng phục hồi. Tóm tắt:
NoSQL là một công nghệ cơ sở dữ liệu mạnh mẽ, phù hợp với các ứng dụng đòi hỏi khả năng xử lý lượng
lớn dữ liệu, linh hoạt và mở rộng. Việc lựa chọn loại cơ sở dữ liệu NoSQL phù hợp phụ thuộc vào yêu cầu
cụ thể của từng ứng dụng.
Chương 25: CÔNG NGHỆ DỮ LIỆU LỚN DỰA TRÊN VỀ MAPREDUCE VÀ HADOOP
Big data là gì? Dữ liệu có quy mô lớn, vượt quá khả năng xử lý của các hệ thống quản trị cơ sở dữ liệu truyền thống.
CÁC ĐẶC TRƯNG CỦA BIG DATA
Âm lượng: Khối lượng dữ liệu khổng lồ.
Đa dạng: Nhiều loại dữ liệu khác nhau (cấu trúc, không cấu trúc).
Chính xác: Độ tin cậy và phù hợp của dữ liệu.
Tốc độ: Tốc độ tạo ra, thu thập và xử lý dữ liệu nhanh chóng.
GIỚI THIỆU VỀ MAPREDUCE VÀ HADOOP.
Các thành phần cốt lõi của Hadoop:
Paradigm lập trình MapReduce.
Hệ thống tệp phân tán Hadoop(HDFS)
Hadoop bắt nguồn từ nỗ lực tìm kiếm công cụ tìm kiếm mã nguồn mở MapReduce
MÔ HÌNH LẬP TRÌNH MAPREDUCE
Map Hàm chung nhận một khóa có kiểu K1 và giá trị có kiểu V1 Trả về mộtdanh sách các cặp khóa-
giátrị có kiểu K2 và V2; Reduce Hàm chung nhận một khóa có kiểu K2 và một danh sách các giá trị V2
và trả về các cặp có kiểu (K3, V3); Kết quả từ hàm map phải phù hợp với kiểu đầu vào của hàm reduce
Distributed grep Tìm kiếm một mẫu cụ thể trong một tệp ; Hàm map phát ra một dòng nếu nó khớp với
mẫu được cung cấp ; Hàm reduce là một hàm định danh
Đồ thị liên kết ngược Đầu ra là các cặp (URL đích, URL nguồn) cho mỗi liên kết đến một trang đích
được tìm thấy trong một trang nguồn
Công việc Mã cho các giai đoạn Map và Reduce,một tập hợp các tài liệu và thuộc tính
Chỉ mục nghịch đảo Xây dựng một chỉ mục nghịch đảo dựa trên tất cả các từ có trong một kho tài liệu
Hàm map phân tích từng tài liệu ; Phát ra một chuỗi cáccặp (từ, id_tài_liệu) ; Hàm reducelấy tất cả các
cặp cho một từ đã cho và sắp xếp chúng theo id_tài_liệu Phiên bản Hadoop ;
Các tính năngcủa phiên bản 1.x Tính năng 2.x
CÁC CHI TIẾT BỔ SUNG MAPREDUCE
Môi trường chạy MapReduce; Luồng tổng thể của một công việc MapReduce; Khả năng chịu lỗi
trongMapReduce; Quy trình xáo trộn; Chiến lược cho các phép nối tương đương trong môi trường
MapReduce; Lập lịch công việc; Apache Pig; Apache Hive.
HỆ THỐNG TỆP PHÂN TÁN HADOOP (HDFS)
Giả định và mục tiêu thiết kế HDFS; HDFS; Kiến trúc HDFS; NameNode; Secondary NameNodes; Hoạt
động I/O tệp; Đặt khối; Quản lý bản sao; Khả năng mở rộng của HDFS. HỆ SINH THÁI HADOOP
Các dự án liên quan với chức năng bổ sung
Pig và hive Cung cấp giao diện cấp cao hơn để làm việc với khung Hadoop
Sqoop Thư viện và môi trường chạy để di chuyển dữ liệu hiệu quả giữa cơ sở dữ liệu quan hệ và HDFS
Oozie Dịch vụ lập lịch và chạy quy trình công việc
HBase Lưu trữ cột hướng đốitượng sử dụng HDFS
LỢI ÍCH CỦA CÔNG NGHỆ HADOOP/MAPREDUCE
Tốc độ tìm kiếm đĩa là yếu tố giới hạn khi làm việc với tập dữ liệu rất lớn; Tốc độ truyền là một tính năng
điện tử và đang tăng dần; MapReduce xử lý các tập dữ liệu lớn song song; MapReduce xử lý dữ liệu bán
cấu trúc và tập dữ liệu khóa-giá trị dễ dàng hơn; Khả năng mở rộng tuyến tính
LÝ DO PHÁT TRIỂN HADOOPV2
JobTracker trở thành điểm hạn chế; Sử dụng tài nguyên cụm không đạt yêu cầu; Các loại ứng dụng khác
nhau không phù hợp với mô hình MR; Khó để theo kịp các phiên bản mã nguồn mở mới của Hadoop KIẾN TRÚC YARN
Tách quản lý tài nguyên cụm khỏi quản lý công việc; ApplicationMasters gửi ResourceRequests đến
ResourceManager, sau đó ResourceManager phản hồi với việc cho thuê Container cụm; NodeManager
chịu trách nhiệm quản lý Containers trên các nút của họ; ResourceManager và NodeManager cùng tạo
nên một nền tảngđể chứa bất kỳ ứng dụng nào trên YARN
CÁC FRAMEWORK KHÁC TRÊN YARN
Apache Tez; Apache Giraph; Hoya: HBase trên YARN Chương 29:
1. Mục đích của kho dữ liệu:
●Các cơ sở dữ liệu truyền thống không được tối ưu hóa cho việc truy cập dữ liệu - chúng phải cân bằng
yêu cầu truy cập dữ liệu với nhu cầu đảm bảo tính toàn vẹn của dữ liệu.
●Kho dữ liệu (DW) cung cấp quyền truy cập để phân tích dữ liệu phức tạp, khám phá tri thức và hỗ trợ
quyết định thông qua các truy vấn đặc biệt và đóng hộp.
●Người dùng kho dữ liệu hầu hết chỉ cần quyền truy cập đọc, nhưng cần truy cập nhanh chóng trên khối lượng dữ liệu lớn.
●Hầu hết dữ liệu cần thiết cho phân tích kho dữ liệu đến từ nhiều nguồn, có thể bao gồm cơ sở dữ liệu từ
các mô hình dữ liệu khác nhau và đôi khi là các tệp được lấy từ các hệ thống và nền tảng độc lập.
2. Giới thiệu, định nghĩa và thuận ngữ:
Kho dữ liệu (DW) là một hệ thống quản lý cơ sở dữ liệu khác biệt, được thiết kế đặc biệt để lưu trữ thông
tin lịch sử được tổng hợp nhằm hỗ trợ quá trình ra quyết định của doanh nghiệp. Không giống như các cơ
sở dữ liệu truyền thống (OLTP) tập trung vào việc xử lý giao dịch và đảm bảo tính toàn vẹn dữ liệu, kho
dữ liệu (OLAP) tối ưu hóa cho việc truy cập và phân tích dữ liệu phức tạp, khai phá tri thức và hỗ trợ quyết định.
3. So sánh kho dữ liệu với Cơ sở dữ liệu truyền thông:
Cả hai đều cung cấp bản sao dữ liệu chỉ đọc từ cơ sở dữ liệu, tuy nhiên kho dữ liệu khác với View ở các điểm sau:
●Kho dữ liệu được lưu trữ lâu dài, trong khi View được tạo theo yêu cầu.
●Kho dữ liệu có cấu trúc đa chiều, trong khi View thường là hai chiều.
●Kho dữ liệu có thể được lập chỉ mục để tối ưu hóa hiệu suất, trong khi View thì không.
●Kho dữ liệu hỗ trợ các chức năng phân tích đặc biệt, trong khi View thì không.
●Kho dữ liệu xử lý lượng dữ liệu lớn được tích hợp từ nhiều nguồn, trong khi View thường chỉ truy cập
dữ liệu từ một cơ sở dữ liệu.
4. Đặc điểm nổi bật của kho dữ liệu:
●Hướng đến chủ đề: Dữ liệu được tổ chức theo các chủ đề kinh doanh cụ thể, giúp dễ dàng truy xuất
thông tin liên quan đến một lĩnh vực cụ thể.
●Tích hợp: Dữ liệu được tổng hợp từ nhiều nguồn khác nhau, đảm bảo tính nhất quán và toàn diện.
●Không biến động: Dữ liệu trong kho dữ liệu là tĩnh, không thay đổi theo thời gian, phản ánh lịch sử hoạt động của doanh nghiệp.
●Biến thiên theo thời gian: Dữ liệu được lưu trữ theo dòng thời gian, cho phép phân tích xu hướng và thay đổi theo thời gian.
●Cấu trúc đa chiều: Dữ liệu được tổ chức theo nhiều chiều (ví dụ: thời gian, sản phẩm, khu vực), giúp
phân tích dữ liệu theo nhiều góc độ khác nhau.
5. Các chức năng chính của kho dữ liệu:
●Pivot: Xoay bảng dữ liệu để xem dữ liệu từ các góc nhìn khác nhau.
●Roll-up (Drill-up): Tổng hợp dữ liệu theo mức độ khái quát tăng dần (ví dụ: từ tuần lên quý, từ quý lên năm).
●Drill-down: Hiển thị chi tiết dữ liệu ở mức độ chi tiết hơn (ngược lại với roll-up).
●Slice and Dice: Lọc và chọn dữ liệu theo các chiều khác nhau.
●Sorting: Sắp xếp dữ liệu theo thứ tự.
●Selection: Lọc dữ liệu theo giá trị hoặc phạm vi.
●Derived Attributes: Tính toán các thuộc tính dựa trên dữ liệu đã lưu trữ.
6. Quá trình xây dựng kho dữ liệu bao gồm:
●Thu thập dữ liệu: Trích xuất dữ liệu từ nhiều nguồn, đảm bảo tính nhất quán và làm sạch dữ liệu.
●ETL (Extract, Transform, Load): Trích xuất, chuyển đổi và tải dữ liệu vào kho dữ liệu.
●Lựa chọn mô hình dữ liệu: Sử dụng các mô hình dữ liệu đa chiều như Star Schema, Snowflake Schema hoặc Fact Constellation.
●Xây dựng kho dữ liệu: Lưu trữ dữ liệu, tạo cấu trúc dữ liệu, cung cấp đường dẫn truy cập và cập nhật dữ liệu.
●Quản lý siêu dữ liệu: Lưu trữ thông tin về dữ liệu trong kho dữ liệu, bao gồm cả siêu dữ liệu kỹ thuật và nghiệp vụ.
7. Khó khăn khi triển khai kho dữ liệu:
●Thời gian xây dựng và bảo trì kho dữ liệu có thể kéo dài.
●Chất lượng và tính nhất quán của dữ liệu là mối quan tâm lớn.
●Cần cập nhật thường xuyên các dự báo sử dụng để đáp ứng yêu cầu hiện tại.
●Yêu cầu kỹ năng quản trị rộng hơn so với cơ sở dữ liệu truyền thống.
8. Xu hướng tương lai của kho dữ liệu:
●Xu hướng chuyển dịch sang các thiết bị phân tích mới như IBM Netezza, EMC Greenplum, SAP Hana và ParAccel.
●Phân tích dữ liệu lớn (Big Data) thúc đẩy việc sử dụng Hadoop và các cơ sở dữ liệu chuyên biệt khác.
●Nền tảng ảo hóa dữ liệu cho phép xây dựng Kho dữ liệu logic (LDW) trong tương lai.