1. Trang chủ
  2. » Tất cả

Báo cáo bài tập lớn môn cơ sở dữ liệu phân tán PTIT

73 619 2

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Xây Dựng Hệ Thống Quản Lý Nhà Hàng
Tác giả Nguyễn Bá Nhật
Trường học Học Viện Công Nghệ Bưu Chính Viễn Thông
Chuyên ngành Cơ Sở Dữ Liệu Phân Tán
Thể loại Bài Tập Lớn
Năm xuất bản 2021
Thành phố Hà Nội
Định dạng
Số trang 73
Dung lượng 5,37 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Báo cáo bài tập lớn môn cơ sở dữ liệu phân tán PTIT Học viện công nghệ bưu chính viễn thông. Xây dựng hệ thống quản lý nhà hàng......................................................................................................................................................................

Trang 1

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

KHOA CÔNG NGHỆ THÔNG TIN 1

-BÀI TẬP LỚN

MÔN: CƠ SỞ DỮ LIỆU PHÂN TÁN

ĐỀ TÀI: XÂY DỰNG HỆ THỐNG QUẢN LÝ NHÀ HÀNG

NHÓM THỰC HIỆN: 07NHÓM LỚP: 08

Hà Nội, tháng 6 năm 2021

Trang 2

DANH SÁCH THÀNH VIÊN

Trang 3

MỤC LỤC

I Đặt vấn đề 4

1 Nhu cầu của hệ thống 4

2 Một số nhiệm vụ chính của hệ thống 4

3 Vị trí và nhiệm vụ, dữ liệu khi triển khai dự án, các đối tượng tham gia sử dụng dự án .4

II Phân tích và thiết kế 6

1 Phân tích 6

2 Thiết kế 9

III Cài đặt vật lý thực tế 24

1 Cài đặt MS SQL Server 24

2 Tạo đường link kết nối mạng giữa các Server với nhau 37

3 Kiểm tra dịch vụ agent 48

4 Phân tán dữ liệu trên SQL Server 48

5 Tạo stored procedure 72

Trang 4

I Đ t v n đ ặ ấ ề

1 Nhu c u c a h th ng ầ ủ ệ ố

Trong nền kinh tế hiện nay, mọi hoạt động của các tổ chức muốn đạt hiệu quả cao, giànhđược thắng lợi trong thế cạnh tranh gay gắt thì nhất thiết phải có những phương pháp để cóđược những thông tin, tri thức cần thiết một cách nhanh và chính xác Một trong nhữngphương pháp hiệu quả là áp dụng công nghệ thông tin vào việc quản lý tổ chức, doanhnghiệp của mình Có thể lấy ví dụ như hệ thống ngân hàng, bệnh viện đều áp dụng côngnghệ thông tin Công nghệ thông tin ngày nay phát triển như vũ bão, nó giúp ích rất nhiềutrong các hoạt động đời sống hàng ngày

Nhận thấy việc quản lý của các nhà hàng khi không có một hệ thống thông tin trợ giúp gặprất nhiều khó khăn, chúng tôi xây dựng hệ thống này nhằm giúp chủ nhà hàng quản lý việckinh doanh hiệu quả Trước kia việc quản lý nhà hàng thủ công chỉ dựa trên giấy tờ mất rấtnhiều thời gian và công sức nhưng lại không hiệu quả Các rủi ro khi quản lý thủ công như:khó quản lý nhân viên, mặt hàng; lưu trữ thông tin trên giấy tờ là không hiệu quả khi dữliệu tăng lên, việc tìm kiếm thông tin mất nhiều thời gian, giấy không thể tồn tại được lâu,

… Hệ thống của chúng tôi khắc phục được tất cả các nhược điểm trên Nó giúp quản lýnhân viên, khách hàng, mặt hàng một cách dễ dàng; tìm kiếm thông tin nhanh chóng và lưutrữ dữ liệu lâu dài nhờ có máy tính Nhờ đó chủ nhà hàng dễ dàng nắm bắt được tình hìnhkinh doanh và đưa ra điều chỉnh hợp lý

3.1 Vị trí và nhiệm vụ, dữ liệu khi triển khai dự án

Nhà hàng gồm 2 chi nhánh là Hà Nội và Tp Hồ Chí Minh Mỗi chi nhánh gồm nhânviên, khách hàng, quản lý của riêng chi nhánh đó

Trang 5

Chúng tôi sử dụng cơ sở dữ liệu phân tán cho hệ thống thay vì một cơ sở dữ liệu tậptrung do cơ sở dữ liệu tập trung có một số nhược điểm sau:

- Dữ liệu ngày càng lớn trong khi khả năng lưu trữ của một máy tính là giới hạn

- Hiệu năng của hệ thống tập trung không cao do phải xử lý đồng thời nhiều yêu cầu

Có thể dẫn đến hiện tượng “nút cổ chai”

- Tính sẵn sàng không cao Khi máy chủ cơ sở dữ liệu gặp vấn đề, cả hệ thống ngừnghoạt động

Cơ sở dữ liệu phân tán giải quyết tất cả các nhược điểm trên Hơn nữa, các chi nhánhthường chỉ quan tâm đến nhân viên, khách hàng, doanh thu của chi nhánh của mình,

ít khi truy xuất đến các thông tin của chi nhánh khác Do đó dữ liệu nào liên quanđến chi nhánh nào sẽ được lưu tại chi nhánh đó Chúng tôi sử dụng 3 server gồm: 1server gốc đặt tại Đà Nẵng để lưu tất cả thông tin của nhà hàng, 1 server đặt tại HàNội để lưu các thông tin của chi nhánh Hà Nội, 1 server đặt tại Tp Hồ Chí Minh đểlưu các thông tin của chi nhánh Tp Hồ Chí Minh Khi có thay đổi trong 2 server chinhánh thì server gốc cũng được cập nhật theo Việc cấp phát dữ liệu như vậy sẽ làmtăng hiệu năng của hệ thống do khoảng cách cơ sở dữ liệu gần hơn dẫn đến việc truycập thông tin nhanh hơn Ngoài ra cũng tăng tính sẵn sàng do sử dụng nhiều bản sao

dữ liệu

3.2 Các đối tượng tham gia sử dụng dự án

Các đối tượng tham gia sử dụng dự án gồm: nhân viên nhà hàng, khách hàng, đầubếp nhà hàng và quản lý nhà hàng

Nhân viên nhà hàng có thể xem thông tin cá nhân của mình qua app di động hoặcqua website và có thể cập nhật thông tin của mình Các thông tin cá nhân của nhânviên gồm: họ tên, năm sinh, địa chỉ, số điện thoại, lương,… Nhân viên có thể nhậnthông báo từ phía nhà hàng và xem lịch làm việc của mình khi đăng nhập vào hệthống

Khách hàng có thể xem thông tin món ăn, đặt chỗ trước, và cũng có các thông tin cánhân như nhân viên nhà hàng

Đầu bếp cũng có các thông tin cá nhân như nhân viên, cũng có thể xem thông báo vàlịch làm việc

Quản lý nhà hàng cũng có thông tin cá nhân như nhân viên, ngoài ra có một số quyềnhạn khác tùy thuộc vào vị trí mà người quản lý đó đảm nhiệm Ví dụ vị trí quản lýnguyên vật liệu có các quyền khác với vị trí quản lý nhân viên

Trang 6

II Phân tích và thi t k ế ế

1.2.2 Tại chi nhánh Hà Nội

Quản lý các thông tin của chi nhánh của mình gồm: nhân viên, quản lý, đầu bếp,khách hàng, hóa đơn

Thông tin về nhân viên, quản lý, đầu bếp sẽ được cập nhật về server gốc định kỳhàng tháng

Thông tin về khách hàng, hóa đơn sẽ được cập nhật về server gốc định kỳ vào lúc0h00 hằng ngày

Tại chi nhánh Hà Nội chỉ có quyền xem thông tin về món ăn, nguyên liệu nhưngkhông có quyền sửa hay xóa các thông tin này

1.2.3 Tại chi nhánh Tp Hồ Chí Minh

Quản lý các thông tin của chi nhánh của mình gồm: nhân viên, quản lý, đầu bếp,khách hàng, hóa đơn

Thông tin về nhân viên, quản lý, đầu bếp sẽ được cập nhật về server gốc định kỳhàng tháng

Thông tin về khách hàng, hóa đơn sẽ được cập nhật về server gốc định kỳ vào lúc0h00 hằng ngày

Tại chi nhánh Tp Hồ Chí Minh chỉ có quyền xem thông tin về món ăn, nguyên liệunhưng không có quyền sửa hay xóa các thông tin này

Trang 7

1.3 Chức năng ở máy trạm (chi nhánh Hà Nội và Tp Hồ Chí Minh)

1.3.1 Chức năng quản lý nhân viên

* Đối với nhân viên:

Nhân viên sau khi đăng nhập có thể xem, cập nhật thông tin cá nhân của mình, xemlịch làm việc, xem thông báo gửu đến

Các thông tin nhân viên có thể sửa gồm: tên nhân viên, năm sinh, địa chỉ, số điệnthoại

* Đối với quản lý:

Quản lý sau khi đăng nhập có thể thêm, xóa, sửa một nhân viên Gửu thông báo đếncho nhân viên

Các thông tin quản lý có thể sửa gồm: tên nhân viên, năm sinh, địa chỉ, số điện thoại,lương

1.3.2 Chức năng quản lý đặt món

Người quản lý có nhiệm vụ:

- Nhập thông tin khách hàng

- Nhập thông tin các món ăn mà khách hàng gọi

- Xuất hóa đơn

1.3.3 Chức năng quản lý đầu bếp

* Đối với đầu bếp:

Đầu bếp sau khi đăng nhập có thể chỉnh sửa các thông tin cá nhân của mình như: họtên, năm sinh, địa chỉ, số điện thoại

Đầu bếp có thể xem thông báo gửu đến và lịch làm việc

* Đối với quản lý:

Quản lý sau khi đăng nhập có thể thêm, xóa, sửa đầu bếp Gửu thông báo đến chođầu bếp

Các thông tin quản lý có thể sửa gồm: tên đầu bếp, năm sinh, địa chỉ, số điện thoại,lương

1.3.4 Chức năng quản lý khách hàng

* Đối với khách hàng:

Khách hàng sau khi đăng nhập có thể chỉnh sửa các thông tin cá nhân của mình như:

họ tên, năm sinh, địa chỉ, số điện thoại

Khách hàng có thể xem thông báo gửu đến

Khách hàng có thể xem thông tin về món ăn và đặt bàn trước

* Đối với quản lý:

Trang 8

Quản lý sau khi đăng nhập có thể thêm, xóa, sửa khách hàng Gửu thông báo đến chokhách hàng.

Các thông tin quản lý có thể sửa gồm: tên khách hàng, năm sinh, địa chỉ, số điệnthoại

1.3.5 Chức năng thống kê

Người quản lý ở các máy trạm có thể thực hiện việc thống kê như:

- Thống kê doanh thu theo tháng, theo năm

- Tính lãi

- Món ăn được ưa chuộng nhất

- Thời điểm nào nhà hàng đông khách nhất

- Khách hàng nào đến ăn nhiều nhất

1.3.6 Ngoài ra còn có nhiều chức năng khác như: tìm kiếm thông tin; in hóa đơn,danh sách, báo cáo; đăng ký tài khoản; quên mật khẩu; đánh giá chất lượng phục vụ;

1.4 Chức năng ở máy chủ (server Đà Nẵng)

Máy chủ có toàn bộ chức năng của các máy trạm Ngoài ra có thêm một số chứcnăng khác

- Thêm nguyên liệu mới

- Sửa thông tin nguyên liệu

- Xóa nguyên liệu

1.4.3 Chức năng thống kê

- Tổng doanh thu của cả 2 chi nhánh

- Tổng lãi thu được

- Số lượng nhân viên hiện có

- Các món ăn được ưa thích nhất

Trang 9

1.5 Phân quyền cho các nhóm đối tượng thực hiện dự án

1.5.1 Nhân viên

Nhân viên có các quyền như:

- Xem thông tin cá nhân

- Sửa thông tin cá nhân

- Xem lịch làm việc

- Xem thông báo gửu đến

1.5.2 Khách hàng

Khách hàng có các quyền như:

- Đăng ký một tài khoản thông qua website

- Xem thông tin cá nhân

- Sửa thông tin cá nhân

- Xem các thông tin của nhà hàng như: món ăn, giờ mở cửa, giờ đóng cửa, địa chỉnhà hàng, số điện thoại liên hệ,…

- Đặt bàn trước

1.5.3 Đầu bếp

Đầu bếp có các quyền như:

- Xem thông tin cá nhân

- Sửa thông tin cá nhân

- Xem lịch làm việc

- Xem thông báo gửu đến

1.5.4 Quản lý

Quản lý có các quyền như:

- Tìm kiếm, thêm, sửa, xóa nhân viên, khách hàng và đầu bếp

- Tìm kiếm, thêm, sửa, xóa món ăn, nguyên liệu

Trang 10

đầu bếp dùng để truy cập vào hệ thống như: điện thoại, máy tính,… Quản lý truy cậpvào hệ thống bằng máy tính để bàn đặt tại nhà hàng.

Sơ đồ mạng tổng quan2.2 Thiết kế cơ sở dữ liệu phân tán

2.2.1 Lược đồ liên kết thực thể

Trang 12

2.2.2 Lược đồ quan hệ liên kết

Id_NhanVi

en

TenNhanVien

Id_TaiKhoan

Id_ChiNhanh

NamSinh Dia

Chi

SoDienThoai

NamSinh

Id_TaiKhoan

ID_ChiNhanh

DiaChi

SoDienThoai

Luong

ThongBaoTaiKhoan

Id_TaiKhoa

n

Username

Password

Email

KieuTaiKhoan

Id_ChiNhanh

NamSinh

DiaChi

SoDienThoai

Luong

ThongBaoNau

NgayLap

GioVao

GioThanhToan

TongTien

DanhGiaNguyenLieu_Mon

Trang 13

Id_DatBanTruoc Id_HoaDon Id_KhachHang NgayDat

2.2 3 Các bảng trong cơ sở dữ liệu

2.2.3.1 Bảng NhanVien

tính

thoại

Trang 14

1 Id_QuanLy Varchar(255) Not null PK Mã quản lý

khoản

nhánh

thoại

2.2.3.3 Bảng TaiKhoan

khoản

nhập

khoản

Trang 15

2.2.3.4 Bảng ChiNhanh

tính

nhánh

nhánh

thoại

2.2.3.5 Bảng DauBep

tính

khoản

nhánh

thoại

Trang 16

8 Luong float Not null Lương

2.2.3.6 Bảng Nau

tính

2.2.3.7 Bảng Mon

STT Tên thuộc

giảm giá

2.2.3.8 Bảng OrderLine

STT Tên thuộc

Trang 17

3 SoLuong Int Not null Số lượng

món

2.2.3.9 Bảng HoaDon

STT Tên thuộc

2.3.10 Bảng NguyenLieu_Mon

Trang 18

1 Id_Mon Varchar(255) Not null PK, FK Mã món

2 Id_NguyenLieu Varchar(255) Not null PK, FK Mã nguyên

liệu

Lượngnguyên liệu(tính theocân)

2.3.11 Bảng NguyenLieu

hàng

hàng

Trang 19

5 SoDienThoai Varchar(255) Not null Số điện

thoại

2.3.13 Bảng DatBanTruoc

STT Tên thuộc tính Kiểu Ràng buộc Khóa Mô tả

trước

hàng

bàn

2.2.4 Quan hệ giữa các bảng

Trang 21

Phân tán cơ sở dữ liệu quản lý nhà hàng làm 3 mảnh đặt tại 3 nơi:

- Tại Đà Nẵng chứa tất cả thông tin

- Tại chi nhánh Hà Nội chỉ chứa thông tin của nhân viên, quản lý, đầu bếp, hóa đơn của chinhánh đó

- Tại chi nhánh Hồ Chí Minh chỉ chứa thông tin của nhân viên, quản lý, đầu bếp, hóa đơn của chi nhánh đó

Trang 22

Nguyên

liệu - Món

OrderLine

Chi nhánh

Nhân viên Hóa đơn

Quản lý

Đầu bếp

Trang 23

Khách hàng

Nguyên liệu

Nguyên liệu Nguyên liệu

Chi nhánh Chi nhánh Hà Nội

Chi nhánh HCM

Chi nhánh Hà Nội

Nhân viên Nhân viên Hà Nội

Nhân viên HCM

Nhân viên Hà Nội

Trạm HCM Chi nhánh HCM

Nhân viên HCM Quản lý HCM Đầu bếp HCM

Hóa đơn HCM

Trang 24

III Cài đ t v t lý th c t ặ ậ ự ế

1 Cài đ t MS SQL Server ặ

Ở đây chúng tôi sử dụng MS SQL Server 2008 Enterprise Edition

Các bước cài đặt như sau:

Đầu tiên các bạn vào link sau để download file cài đặt

Bản 64 bit:

CAE8262F1844/SQLFULL_X64_ENU.EXE

http://download.microsoft.com/download/D/0/B/D0B2C565-4966-4663-976D-Bản 32 bit:

D42E150CF6A4/SQLFULL_X86_ENU.EXE

http://download.microsoft.com/download/0/9/4/094F2CB6-2C68-4B0F-AF20-Sau khi tải file về, click đúp vào file để giải nén

Chờ file được giải nén

Trang 25

Click vào file setup.exe để tiến hành cài đặt.

Chọn Installation sau đó chọn New SQL Server stand-alone…

Trang 26

Chọn OK để tiếp tục.

Trang 27

Chọn Install.

Chọn Next

Trang 28

Chọn Perform a new installation of SQL Server 2008, sau đó chọn Next.

Điền product key, sau đó chọn Next

Trang 29

Tích vào I accept the license terms, sau đó click Next.

Trang 30

Chọn Select All, sau đó chọn Next.

Chọn Default instance để đặt tên mặc định của SQL Server hoặc chọn Named instance để đặt tên mà bạn muốn Chọn thư mục gốc cho Instance rồi chọn Next

Trang 31

Chọn Next.

Trang 32

Chọn Next.

Tiếp theo ta chọn Mixed Mode để điền mật khẩu cho tài khoản sa Sau đó chọn Add Current User rồi chọn Next

Trang 33

Chọn Add Current User rồi chọn Next.

Chọn Install the native mode default configuration Xong chọn Next

Trang 34

Chọn Next.

Chọn Next

Trang 35

Chọn Install.

Trang 36

Chờ quá trình cài đặt hoàn tất.

Chọn Close Vậy là ta đã cài đặt xong SQL Server 2008 Enterprise Edition

2 T o đ ạ ườ ng link k t n i m ng gi a các Server v i nhau ế ố ạ ữ ớ

2.1 Vô hiệu hóa tường lửa, tạo cổng 1433

Trang 37

Chọn Change notification settings.

Tích vào Turn off Windows Firewall, sau đó click OK

Trang 38

Click chọn Advanced settings.

Chọn Inbound Rules, sau đó chọn New Rule

Trang 39

Tích vào Port và chọn Next.

Trang 40

Điền “1433” vào Specific local ports rồi click Next.

Trang 41

Click Next.

Trang 42

Click Next.

Trang 43

Đặt tên là “SQL”, click Finish.

Vậy là hoàn thành việc khóa tường lửa và thiết lập cổng Làm tương tự với các máy khác.2.2 Cấu hình cho từng máy: gồm đặt IP, đặt các properties

Mở Sql Server Configuration Manager

Vào phần TCP/IP của máy chủ cơ sở dữ liệu Đặt IP Address của IP1 là địa chỉ IP của máyhiện tại Như trong hình là “192.168.1.100” Hai địa chỉ IP10 và IP11 là của 2 máy còn lại

Số cổng là 1433 Active và Enabled đặt là Yes Sau đó click OK và Restart lại Server.Làm tương tự với 2 máy còn lại

Tiếp theo mở SQL Server Management Studio và đăng nhập vào

Trang 44

Mở Server Properties như hình Tích vào SQL Server and Windows Authentication mode

và Failed logins only Sau đó click OK.

Trang 45

Vào Login properties – sa và đặt như hình, Click OK.

Làm tương tự với 2 máy còn lại

2.3 Tạo một mạng LAN cho các server

2.4 Ping các server

- Ping từ Server Đà Nẵng đến Server Hà Nội và Hồ Chí Minh

Trang 46

Ping thành công.

- Ping từ Server Hồ Chí Minh đến Server Đà Nẵng

Trang 47

Ping thành công.

- Ping từ Server Hà Nội đến Server Đà Nẵng

Ping thành công

Trang 48

3 Ki m tra d ch v agent ể ị ụ

Nếu dịch vụ Agent đang bị disabled thì ta right-click chọn Start để khởi chạy Agent

4 Phân tán d li u trên SQL Server ữ ệ

4.1 Tạo một shared folder

Ta tạo 1 folder RepliData để chứa các dữ liệu trao đổi trong quá trình update dữ liệu từ các phân mảnh về cơ sở dữ liệu gốc, và từ cơ sở dữ liệu gốc đến các phân mảnh

Trang 49

Right-click vào folder RepliData, chọn tab Sharing → chọn Share.

Trang 50

Thêm Everyone, chọn quyền đọc ghi Click Share.

Chọn Done Vậy là ta đã tạo xong một folder RepliData để chia sẻ dữ liệu giữa các máy.Tiếp theo ta sẽ chỉ định folder này là folder lưu dữ liệu chia sẻ cho SQL Server

Trang 51

Vào Distributor Properties, chọn Publishers, chọn vị trí mũi tên như hình.

Trang 52

Tại Default Snapshot Folder, đặt địa chỉ của folder RepliData Click OK.

Trang 53

Click Next.

Chọn database nha_hang, sau đó click Next

Trang 54

Chọn Merge publication Chọn Next.

Trang 55

Chọn Next.

Tích chọn tất cả các bảng, trừ sysdiagrams Xong chọn Next

Trang 56

Chọn Add, chọn Add Filter…

Chọn điều kiện để phân mảnh bảng ChiNhanh Click OK

Trang 57

Click Add, chọn Add Join to Extend the Selected Filter…

Trang 58

Chọn phân mảnh ngang dẫn xuất từ phân mảnh ChiNhanh, như trong hình là bảng DauBep.

Click OK

Trang 59

Làm tương tự với các bảng HoaDon, NhanVien, QuanLy, ta được như hình Click Next.

Trang 60

Click Next.

Click vào Security Settings

Trang 61

Tích vào Run under the SQL Server Agent service account Sau đó tích Using the

following SQL Server login và điền tài khoản sa của máy hiện tại (Server Đà Nẵng) Click OK

Click Next

Trang 62

Click Next.

Trang 63

Đặt tên cho Publication, xong chọn Finish.

Tạo publication thành công Chọn Close.4.3 Tạo subscription

Trang 64

Right-click vào Subscription vừa tạo, chọn New Subscriptions.

Trang 65

Chọn Next.

Trang 66

Chọn vào Publication muốn tạo Sub, sau đó chọn Next.

Chọn Run all agents at the Distributor… như hình, xong chọn Next

Ngày đăng: 29/03/2023, 07:53

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w