Dữ liệu là tập hợp các thông tin, số liệu, hoặc sự mô tả về các sự kiện, đối tượng, hoặc hiện tượng trong thế giới thực. Dữ liệu có thể được thu thập từ nhiều nguồn khác nhau và có thể tồn tại dưới nhiều định dạng, bao gồm văn bản, hình ảnh, âm thanh, video, và số liệu số.
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC HÒA BÌNH BÀI TIỂU LUẬN CƠ SỞ DỮ LIỆU NÂNG CAO ĐỀ TÀI: XÂY DỰNG CƠ SỞ DỮ LIỆU HỆ THỐNG QUẢN LÝ BÁN SÁCH Giáo viên hướng dẫn: TS Đoàn Văn Hòa Lớp: CNTT2023 Học viên: Trần Trọng Hoàn Vũ Đức Thuận Hà Nội, tháng 01/2024 MỤC LỤC DANH MỤC HÌNH .4 DANH MỤC BẢNG .5 BẢNG MÔ TẢ TỪ VIẾT TẮT CHƯƠNG I: TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU Khái niệm liệu, sở liệu hệ quản trị CSDL 1.1 Khái niệm liệu 1.2 Khái niệm CSDL .6 1.3 Khái niệm hệ quản trị CSDL .7 Các mơ hình sở liệu .9 2.1 Mô hình liệu file phẳng (Flat file) 2.2 Mơ hình liệu mạng (Network model) 2.3 Mơ hình liệu phân cấp (Hierarchical model) 10 2.4 Mơ hình liệu quan hệ (Relational model) 11 2.5 Mơ hình liệu hướng đối tượng (Object-Oriented model) 12 Hệ quản trị sở liệu gì? 12 3.1 Hệ quản trị CSDL mã nguồn mở Enterprise Postgres .13 3.2 Hệ quản trị CSDL Oracle 16 3.3 Hệ quản trị CSDL MongoDB 17 3.4 Hệ quản trị CSDL Microsoft SQL Server .18 Cấu trúc DBMS .21 4.1 Các thành phần DBMS 21 4.2 Các kiểu thao tác với DBMS 22 SQL NoSQL 22 5.1 SQL gì? 22 5.2 NoSQL gì? 24 5.3 So sánh SQL NoSQL 25 Tầm quan trọng CSDL 30 CHƯƠNG II: ĐẶC TẢ YÊU CẦU 32 Trang 2/57 Tầm quan trọng thương mại điện tử 32 Đặt vấn đề .35 Phạm vi nghiên cứu giải toán 35 Mô tả nghiệp vụ .35 CHƯƠNG III: PHÂN TÍCH THIẾT KẾ 38 Luồng nghiệp vụ 38 1.1 Luồng nghiệp vụ đăng ký tài khoản 38 1.2 Luồng nghiệp vụ Quản lý bán sách 39 Mơ hình phân rã chức hệ thống .39 2.1 Sơ đồ phân rã 39 2.2 Danh sách chức .40 2.2.1 Mô tả Phân hệ Quản lý bán sách 40 2.2.2 Mô tả phân hệ Quản lý đăng ký tài khoản 42 2.2.3 Mô tả phân hệ Quản lý kho 42 2.2.4 Mô tả phân hệ Quản trị hệ thống 43 2.2.5 Mô tả phân hệ Quản trị danh mục 43 Xác định thực thể 43 3.1 Danh sách thực thể 43 3.2 Xác định thuộc tính cho thực thể 44 Mơ hình liên kết thực thể E-R 45 Chuyển đổi mơ hình liên kết thực thể ER sang mơ hình logic chuẩn 3NF 47 5.1 Phân tích mơ hình thực thể 47 5.2 Kĩ thuật khóa ảo .47 5.2.1 Áp dụng kĩ thuật khóa ảo chuyển đổi thực thể đảm bảo mơ hình logic 3NF áp dụng với hệ quản trị liệu SQL Server 47 5.2.2 Diễn giải chi tiết bảng 49 CHƯƠNG IV: KẾT LUẬN 54 TÀI LIỆU THAM KHẢO .56 Trang 3/57 DANH MỤC HÌNH Hình 1: Ví dụ liệu sở liệu Hình 2: Cơ sở liệu dạng file phẳng Hình 3: Thực thể kết nối Hình 4: Mơ hình liệu phân cấp 10 Hình 5: Mơ hình liệu quan hệ 11 Hình 6: Mơ hình liệu hướng đối tượng 12 Hình 7: (theo: https://db-engines.com/en/ranking) .14 Hình 8: Các tính Enterprise Postgres .14 Hình 9: Một ví dụ cấu trúc hệ quản trị CSDL SQL Server 19 Hình 10: Hình minh hoạ tính chất khơi phục nhanh chóng hệ quản tri CSDL SQL Server 20 Hình 11: Cấu trúc DBMS .21 Hình 12: Hình minh hoạ ví dụ nhóm câu lệnh Data Dèinition Language .23 Hình 13: DML (Data Manipulation Language) 23 Hình 14: DCL (Data Control Language) .23 Hình 15: TCL (Transaction Control Language) 23 Hình 16: Thống kê liệu người dùng MongoDB, MySQL, MS SQL Server năm trở lại Việt Nam 25 Hình 17: Phân biệt SQL No SQL .28 Hình 18: Luồng nghiệp vụ đăng ký tài khoản .34 Hình 19: Luồng nghiệp vụ quản lý bán sách 35 Hình 20: Sơ đồ phân rã 35 Hình 21: Phân hệ quản lý bán sách .36 Hình 22: Phân hệ Quản lý đăng ký tài khoản 38 Hình 23: Phân hệ Quản lý kho 38 Hình 24: Mơ hình liên kết thực thể E-R 42 Hình 25:Sơ đồ thiết kế sở liệu .44 Trang 4/57 DANH MỤC BẢNG Bảng 1: So sánh SQL No SQL 27 Bảng 2: Bảng chức hệ thống bán sách 36 Bảng 3: Bảng nhân viên, cán 49 Bảng 4: Bảng khách hàng 49 Bảng 5: Bảng kho 50 Bảng 6: Bảng phân loại sách 50 Bảng 7: Bảng nhà xuất 50 Bảng 8: Bảng Sách 51 Bảng 9: Bảng tác giả .51 Bảng 10: Bảng chi tiết sách 52 Bảng 11: Bảng Đơn hàng 52 Bảng 12: Bảng chi tiết đơn hàng 52 Bảng 13: Bảng kho sách 53 BẢNG MÔ TẢ TỪ VIẾT TẮT STT Viết tắt Mô tả ISBN chữ viết tắt International Standard Book Number ISBN (Mã số tiêu chuẩn quốc tế cho sách), mã số tiêu chuẩn quốc tế để xác định sách CĐT Công ty H&M CTXD Công ty DBDudes CSDL Cơ sở liệu CHƯƠNG I: TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU Khái niệm liệu, sở liệu hệ quản trị CSDL 1.1 Khái niệm liệu Dữ liệu tập hợp thông tin, số liệu, mô tả kiện, đối tượng, tượng giới thực Dữ liệu thu thập từ nhiều Trang 5/57 nguồn khác tồn nhiều định dạng, bao gồm văn bản, hình ảnh, âm thanh, video, số liệu số Dữ liệu chia thành hai loại chính: - Dữ liệu có cấu trúc (Structured Data): Là liệu có tổ chức theo cấu trúc cụ thể, thường lưu trữ bảng, sở liệu quan hệ định dạng dễ quản lý khác Ví dụ, liệu bảng Excel sở liệu SQL - Dữ liệu khơng có cấu trúc (Unstructured Data): Là liệu không tuân theo cấu trúc cụ thể, thường liệu văn bản, hình ảnh, video, âm Ví dụ, nội dung trang web, email, hay hình ảnh chụp từ camera Khái niệm liệu trọng tâm nhiều lĩnh vực, bao gồm khoa học máy tính, khoa học liệu, quản lý thơng tin Việc hiểu xử lý liệu quan trọng để rút thơng tin hữu ích đưa định có ích nhiều lĩnh vực, từ kinh doanh đến nghiên cứu khoa học Đồng thời, quản lý bảo vệ liệu vấn đề quan trọng để đảm bảo an toàn tuân thủ quy định quyền riêng tư 1.2 Khái niệm CSDL Cơ sở liệu (CSDL) hệ thống tổ chức lưu trữ liệu để dễ dàng truy cập, quản lý cập nhật Cơ sở liệu thường sử dụng để lưu trữ thơng tin mơi trường máy tính giúp tổ chức liệu cách có tổ chức, hiệu an tồn Lợi ích việc quản lý liệu sở liệu: - Tổ chức liệu hiệu quả: Cơ sở liệu giúp tổ chức liệu cách có tổ chức dễ dàng quản lý Dữ liệu lưu trữ bảng trường, giúp tạo cấu trúc rõ ràng dễ theo dõi - Tăng khả chia sẻ thông tin: Cơ sở liệu cho phép nhiều người dùng truy cập sử dụng liệu mà không gặp vấn đề xung đột thông tin Điều tăng tính khả dụng chia sẻ thơng tin tổ chức - Bảo mật liệu: Các hệ quản trị sở liệu thường có chế bảo mật tích hợp, bao gồm quản lý quyền truy cập, mã hóa liệu, theo dõi hoạt động người dùng Điều giúp bảo vệ thông tin quan trọng khỏi truy cập trái phép - Tính tồn vẹn liệu: Các sở liệu hỗ trợ tính tồn vẹn liệu thơng qua việc sử dụng ràng buộc, quy tắc khóa Điều Trang 6/57 giúp đảm bảo liệu lưu trữ cập nhật cách đồng xác - Tăng hiệu suất truy xuất nhanh chóng: Cơ sở liệu thiết kế để cung cấp hiệu suất tốt cho thao tác truy vấn cập nhật liệu Các mục kỹ thuật tối ưu hóa khác giúp tăng tốc trình truy cập liệu - Dễ dàng mở rộng: Khi tổ chức mở rộng cần lưu trữ lượng lớn liệu hơn, sở liệu mở rộng mà không gặp nhiều vấn đề hiệu suất Các hệ quản trị sở liệu đại thường hỗ trợ khả mở rộng theo nhu cầu - Tiết kiệm thời gian công sức: Cơ sở liệu giúp tự động hóa nhiều nhiệm vụ liên quan đến việc quản lý liệu, giảm thiểu công sức thời gian cần thiết so với việc sử dụng phương tiện lưu trữ liệu truyền thống tệp tin - Hỗ trợ phân tích báo cáo: Cơ sở liệu cung cấp khả thực truy vấn phức tạp, phân tích liệu tạo báo cáo Điều giúp tổ chức đưa định dựa thông tin hiểu từ liệu thu thập Sự khác biệt sở liệu liệu thông thường tính cấu trúc xếp có hệ thống Dữ liệu khơng thơi thơng tin chưa xếp hay cấu trúc theo trật tự cụ thể ví dụ văn file coi liệu, hay liệu video hay tập tin Ngược lại với cữ liệu, sở liệu bao gồm liệu dược cấu trúc cách rõ ràng Một tập hợp liệu khơng có cấu trúc hệ thống định không coi sở liệu 1.3 Khái niệm hệ quản trị CSDL Hệ quản trị sở liệu (Hệ quản trị CSDL - DBMS) phần mềm hệ thống phần mềm thiết kế để quản lý tương tác với sở liệu Nhiệm vụ DBMS cung cấp giao diện để định nghĩa, tạo, truy xuất, cập nhật quản lý sở liệu Dưới số khái niệm liên quan đến Hệ quản trị CSDL : - Cơ sở liệu (Database): Là nơi lưu trữ liệu theo cách có tổ chức, giúp dễ dàng quản lý truy cập thông tin Cơ sở liệu bao gồm nhiều bảng liệu - Hệ quản trị sở liệu (DBMS): Là phần mềm hệ thống phần mềm quản lý điều khiển sở liệu DBMS giúp tạo, trì, thao tác liệu cách hiệu Trang 7/57 - Bảng (Table): Là thành phần sở liệu quan hệ Mỗi bảng có cột (fields) hàng (records), biểu diễn liệu theo cách có tổ chức - Trường (Field): Là đơn vị nhỏ bảng, đại diện cho loại liệu cụ thể số nguyên, chuỗi ký tự, ngày tháng, v.v - Giao dịch (Transaction): Là chuỗi hoạt động thao tác với sở liệu, thực để đảm bảo tính toàn vẹn đồng liệu - Người quản trị sở liệu (Database Administrator - DBA): Là người chịu trách nhiệm việc quản lý, trì bảo vệ sở liệu Công việc DBA bao gồm việc thiết lập quyền truy cập, giám sát hiệu suất đảm bảo an toàn liệu - Ngôn ngữ truy vấn sở liệu (Database Query Language): Là ngôn ngữ sử dụng để tương tác với sở liệu SQL (Structured Query Language) ngôn ngữ truy vấn phổ biến sử dụng hầu hết hệ quản trị sở liệu quan hệ - Chế độ ACID: Là tập hợp tính chất (Atomiticy, Consistency, Isolation, Durability) mà giao dịch cần phải tuân theo để đảm bảo tính tồn vẹn an toàn sở liệu Hệ quản trị sở liệu đóng vai trị quan trọng việc hỗ trợ ứng dụng hệ thống thực thao tác liên quan đến liệu cách hiệu quả, an tồn có tổ chức Các hệ quản trị sở liệu phổ biến bao gồm: Microsoft Access, MySQL, Oracle, PostgreSQL, SQL Server Việc sử dụng phần mềm (hệ quản trị sở liệu) giúp nhà quản trị hệ thống dễ dàng thực thao tác tìm kiếm, lọc, xóa, chỉnh sửa hay tạo liệu sở liệu Để làm điều hệ quản trị sở liệu nhà quản trị hệ thống thường sử dụng ngôn ngữ truy vấn mang tính cấu trúc: Structured Query Language hay SQL Ví dụ liệu sở liệu: Trang 8/57 Hình 1: Ví dụ liệu sở liệu Các mô hình sở liệu 2.1 Mơ hình liệu file phẳng (Flat file) Dùng cho CSDL đơn giản CSDL dạng file phẳng thường file kiểu văn chứa liệu dạng bảng Ví dụ: Hình 2: Cơ sở liệu dạng file phẳng 2.2 Mơ hình liệu mạng (Network model) Các file mơ hình liệu mạng gọi ghi Tập hợp ghi kiểu tạo thành kiểu thực thể liệu Các kiểu thực thể kết nối với thơng qua mối quan hệ cha-con Mơ hình biểu diễn đồ thị có hướng mũi tên từ kiểu thực thể cha sang kiểu thực thể Ví dụ sau: Trang 9/57 Hình 3: Thực thể kết nối Ưu điểm mơ hình biểu diễn mối quan hệ phức tạp Nhược điểm truy xuất chậm khơng thích hợp với CSDL có quy mơ lớn 2.3 Mơ hình liệu phân cấp (Hierarchical model) Tổ chức theo hình cây, nút biểu diễn thực thể liệu Mỗi nút cha có nhiều nút nút có nút cha Do mơ hình liệu phân cấp có kiểu quan hệ: 1-1, 1-N Nhược điểm mơ hình nút khơng thể có q nút cha nên khơng biểu diễn quan hệ phức tạp Hình 4: Mơ hình liệu phân cấp Trang 10/57