Bài tập lớn: Thiết kế và cài đặt cơ sở dữ liệu phân tán bằng hệ quản trị cơ sở dữ liệu SQL Server cho quản lí giao dịch tại ngân hàng theo phân mảng ngang trên địa chỉ ở Đà Nẵng,Hà Nội,Sài Gòn

23 1.8K 14
Bài tập lớn: Thiết kế và cài đặt cơ sở dữ liệu phân tán bằng hệ quản trị cơ sở dữ liệu SQL Server cho quản lí giao dịch tại ngân hàng theo phân mảng ngang trên địa chỉ ở Đà Nẵng,Hà Nội,Sài Gòn

Đ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

MỤC LỤC I. LỜI NÓI ĐẦU 3 II. NỘI DUNG CHÍNH 6 1. THIếT Kế CSDL PHÂN TÁN CHO Hệ THốNG 6 1.1. Khảo sát nghiệp vụ 6 1.2. Bài toán 7 1.3. Thiết kế cơ sở dữ liệu tập trung cho hệ thống 8 1.4. Thiết kế mô hình csdl phân tán cho hệ thống 8 2. XÂY DựNG CSDL PHÂN TÁN TRONG Hệ QUảN TRị CSDL SQL SERVER 13 2.1. Cấu trúc các bảng dữ liệu 13 2.2. Mô hình CSDL phân tán 18 2.3. Một số truy vấn phân tán trong hệ quản trị CSDL 23 3. CÀI ĐặT Hệ THốNG TRÊN CSDL PHÂN TÁN 24 3.1. Yêu cầu phần cứng và phần mềm 24 3.2. Thiết kế giao diện chương trình trên các trạm 24 3.3. Cài đặt và thử nghiệm 24

TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN o0o LỚP HỆ THỐNG THÔNG TIN – KHÓA 7 Bài tập lớn : Cơ sở dữ liệu phân tán Đề tài : Thiết kế và cài đặt cơ sở dữ liệu phân tán bằng hệ quản trị cơ sở dữ liệu SQL Server cho quản lí giao dịch tại ngân hàng theo phân mảng ngang trên địa chỉ ở Đà Nẵng, Hà Nội, Sài Gòn Người thực hiện : - Lê Tuấn Ngọc : Thiết kế CSDLPT, Xây dựng CSDLPT trong HQT CSDL SQL Server, Cài đặt hệ thống - Nguyễn Thị Nguyên : Thiết kế CSDLPT - Lê Thị Duyên : Thiết kế CSDLPT Giáo viên hướng dẫn : - Th.S Nguyễn Thị Thanh Huyền MỤC LỤC I LỜI NÓI ĐẦU Ngân Hàng TMCP Công Thương Việt Nam (VietinBank) được thành lập từ năm 1988 sau khi tách ra từ Ngân hàng Nhà nước Việt Nam Là Ngân hàng thương mại lớn, giữ vai trò quan trọng, trụ cột của ngành Ngân hàng Việt Nam Có hệ thống mạng lưới trải rộng toàn quốc với 01 Sở giao dịch, 151 Chi nhánh và trên 1000 Phòng giao dịch/ Quỹ tiết kiệm Các chi nhánh được phân theo 3 khu vực chính trên cả nước là Hà Nội, Đà Nẵng và Sài Gòn Các hoạt động chính của ngân hàng Huy động vốn - Nhận tiền gửi không kỳ hạn và có kỳ hạn bằng VNĐ và ngoại tệ của các tổ chức kinh tế v à dân cư - Nhận tiền gửi tiết kiệm với nhiều hình thức phong phú và hấp dẫn: Tiết kiệm không kỳ hạn và có kỳ hạn bằng VNĐ và ngoại tệ, Tiết kiệm dự thưởng,Tiết kiệm tích luỹ - Phát hành kỳ phiếu, trái phiếu Cho vay, đầu tư - Cho vay ngắn hạn bằng VNĐ và ngoại tệ Cho vay trung, dài hạn bằng VNĐ và ngoại tệ Tài trợ xuất, nhập khẩu; chiết khấu bộ chứng từ hàng xuất Đồng tài trợ và cho vay hợp vốn đối với những dự án lớn, thời gian hoàn vốn dài Cho vay tài trợ, uỷ thác theo chương trình: Đài Loan (SMEDF); Việt Đức (DEG, KFW) và các hiệp định tín dụng khung Thấu chi, cho vay tiêu dùng Hùn vốn liên doanh, liên kết với các tổ chức tín dụng và các định chế tài chính trong nước và quốc tế Đầu tư trên thị trường vốn, thị trường tiền tệ trong nước và quốc tế Bảo lãnh - Bảo lãnh, tái bảo lãnh (trong nước và quốc tế): Bảo lãnh dự thầu; Bảo lãnh thực hiện hợp đồng; Bảo lãnh thanh toán Thanh toán và Tài trợ thương mại - Phát hành, thanh toán thư tín dụng nhập khẩu; thông báo, xác nhận, thanh toán thư tín dụng nhập khẩu - Nhờ thu xuất, nhập khẩu (Collection); Nhờ thu hối phiếu trả ngay (D/P) và nhờ thu chấp nhận hối phiếu (D/A) - Chuyển tiền trong nước và quốc tế - Chuyển tiền nhanh Western Union - Thanh toán uỷ nhiệm thu, uỷ nhiệm chi, séc - Chi trả lương cho doanh nghiệp qua tài khoản, qua ATM - Chi trả Kiều hối… Ngân quỹ - Mua, bán ngoại tệ (Spot, Forward, Swap…) - Mua, bán các chứng từ có giá (trái phiếu chính phủ, tín phiếu kho bạc, thương phiếu…) - Thu, chi hộ tiền mặt VNĐ và ngoại tệ - Cho thuê két sắt; cất giữ bảo quản vàng, bạc, đá quý, giấy tờ có giá, bằng phát minh sáng chế Thẻ và ngân hàng điện tử - Phát hành và thanh toán thẻ tín dụng nội địa, thẻ tín dụng quốc tế (VISA, MASTER CARD…) - Dịch vụ thẻ ATM, thẻ tiền mặt (Cash card) - Internet Banking, Phone Banking, SMS Banking Hoạt động khác - Khai thác bảo hiểm nhân thọ, phi nhân thọ - Tư vấn đầu tư và tài chính - Cho thuê tài chính - Môi giới, tự doanh, bảo lãnh phát hành, quản lý danh mục đầu tư, tư vấn, lưu ký chứng khoán - Tiếp nhận, quản lý và khai thác các tài sản xiết nợ qua Công ty Quản lý nợ và khai thác tài sản Để hoàn thiện các dịch vụ liên quan hiện có nhằm đáp ứng nhu cầu ngày càng cao của khách hàng, đồng thời tạo đà cho sự phát triển và hội nhập với các nước trong khu vực và quốc tế, VietinBank luôn có tầm nhìn chiến lược trong đầu tư và phát triển, tập trung ở 3 lĩnh vực: - Phát triển nguồn nhân lực - Phát triển công nghệ - Phát triển kênh phân phối Với quy mô lớn như hiện nay, công tác quản lý giao dịch tại các chi nhánh của ngân hàng gặp rất nhiều khó khăn, do nhu cầu thu thập, lưu trữ, xử lý và trao đổi thông tin ngày càng tăng, các hệ thống xử lý tập trung này đã bộc lộ rất nhiều nhược điểm Vì thế xây dựng một hệ thống phân tán để thay thế hệ thống tập trung truyền thống là điều tất yếu, nhóm chúng em đề xuất “Thiết kế và cài đặt cơ sở dữ liệu phân tán bằng hệ quản trị cơ sở dữ liệu SQL Server cho quản lí giao dịch tại ngân hàng theo phân mảng ngang trên địa chỉ ở Đà Nẵng, Hà Nội, Sài Gòn” I NỘI DUNG CHÍNH Thiết kế và cài đặt cơ sở dữ liệu phân tán bằng hệ quản trị cơ sở dữ liệu SQL Server cho quản lí giao dịch tại ngân hàng theo phân mảng ngang trên địa chỉ ở Đà Nẵng, Hà Nội, Sài Gòn - Trạm 1 : Các chi nhánh khu vực Hà Nội - Trạm 2 : Các chi nhánh khu vực Đà Nẵng - Trạm 3 : Các chi nhánh khu vực Sài Gòn Nội dung chính gồm 3 chương : - Chương 1 : Thiết kế CSDL phân tán cho hệ thống - Chương 2 : Xây dựng CSDL phân tán trong hệ quản trị CSDL - Chương 3 : Cài đặt hệ thống trên CSDL phân tán 1 Thiết kế CSDL phân tán cho hệ thống 1.1 Khảo sát nghiệp vụ Khi khách hàng đến sử dụng dịch vụ của ngân hàng thì khách hàng sẽ nhận được một mẫu đăng kí sử dụng dịch vụ (Một trong số các dịch vụ mà ngân hàng cung cấp) Đối với mỗi loại dịch vụ có một mẫu phiếu đăng kí riêng, nhưng các mẫu phiếu đăng kí có các nội dung chung sau: Số phiếu: Mã DV: Tên khách: Địa chỉ: Mã khách: Số tài khoản: Ngày đăng kí TK:… ………… (Các nội dung riêng của từng dịch vụ) Ngày đăng kí sử dụng dịch vụ: Mã NV: Tên NV: Sau khi nhân phiếu đăng kí sử dụng dịch vụ từ khách hàng Nhân viên tiếp nhận cập nhật thông tin của khách hàng vào cơ sở dữ liệu khách hàng Sau đó cập nhật mã khách hàng và các thông tin riêng của dich vụ vào cơ sở dữ liệu của dịch vụ đó Cuối cùng, khách hàng nộp tiền (nếu cần) và nhận biên lai giao dịch 1.2 Bài toán Hệ thống thực hiện chức năng quản lý giao dịch tại các chi nhánh phân mảnh theo ba nhóm khu vực Hệ thống quản lý dịch vụ ngân hàng là một phần của hệ thống quản lý ngân hàng, vậy nó phải liên kết với hệ thống lớn đó để ngân hàng có thể hoạt động tốt Chính vì thế ứng dụng quản lý mà ta cần thiết kế phải có khả năng truy cập và cập nhật vào cơ sở dữ liệu từ xa, đồng thời cũng có các chức năng in ấn báo cáo Hiện nay có rất nhiều ngôn ngữ có thể làm được các công việc trên Tuy nhiên nhóm em thấy Visual C# là thích hợp hơn cả Sau đây nhóm em xin trình bày tư tưởng cài đặt hệ thống Hệ thống gồm 2 chương trình: - Server: đặt tại một máy tính có địa chỉ mạng xác định có nhiệm vụ nhận các yêu cầu cập nhật cũng như lấy thông tin từ các máy client của ngân hàng đặt tại các địa điểm khác nhau - Máy trạm : đặt trên các máy tính của các chi nhánh Chương trình client có một giao diện xuất nhập tốt bao gồm các nút và các form nhập dữ liệu 1.3 Thiết kế cơ sở dữ liệu tập trung cho hệ thống 1.4 Thiết kế mô hình csdl phân tán cho hệ thống 1.4.1 Phân mảnh dữ liệu Phân mảnh ngang nguyên thủy cho bảng ChiNhanh theo giá trị DiaChi: Các vị từ đơn giản có thể dùng được là: p1: DiaChi = “Hà Nội” p2: DiaChi = “Đà Nẵng” p3: DiaChi = “Sài Gòn” Tập vị từ đơn giản khởi đầu là Pr = {p 1, p2, p3} Áp dụng thuật toán COM_MIN với i = 1 làm giá trị khởi đầu tạo ra Pr’ = {p 1, p2, p3} là tập đầy đủ và cực tiểu Có thể định nghĩa vị từ hội sơ cấp tạo ra M dựa trên Pr’ như sau: m1: p1 ^ p2 m2: p1 ^ p3 m3: p2 ^ p3 m4: p1 ^ p2 ^ p3 m5: p1 ^ ¬(p2 ^ p3) ≡ p1 ^ p1 ≡ p1 m6: p2 ^ ¬(p1 ^ p3) ≡ p2 ^ p2 ≡ p2 m7: p3 ^ ¬(p1 ^ p2) ≡ p3 ^ p3 ≡ p3 Kết quả phân mảnh ngang nguyên thủy ChiNhanh tạo ra 3 mảnh ChiNhanh = { ChiNhanh1, ChiNhanh2, ChiNhanh3 } ChiNhanh1= σ DiaChi = “Hà Nội” (ChiNhanh) ChiNhanh2= σ DiaChi = “Đà Nẵng” (ChiNhanh) ChiNhanh3 = σ DiaChi = “Sài Gòn” (ChiNhanh) Phân mảnh ngang dẫn xuất ChiNhanh – KhachHang ta được 3 trạm: KhachHang1 = KhachHang |›‹ ChiNhanh1 KhachHang2 = KhachHang |›‹ ChiNhanh2 KhachHang3 = KhachHang |›‹ ChiNhanh3 Phân mảnh ngang dẫn xuất ChiNhanh – NhanVien ta được 3 trạm: NhanVien1 = NhanVien |›‹ ChiNhanh1 NhanVien2 = NhanVien |›‹ ChiNhanh2 NhanVien3 = NhanVien |›‹ ChiNhanh3 Phân mảnh ngang dẫn xuất ChiNhanh – PhieuChuyenTien ta được 3 trạm: PhieuChuyenTien1 = PhieuChuyenTien |›‹ ChiNhanh1 PhieuChuyenTien2 = PhieuChuyenTien |›‹ ChiNhanh2 PhieuChuyenTien3 = PhieuChuyenTien |›‹ ChiNhanh3 Phân mảnh ngang dẫn xuất ChiNhanh – PhieuNopTien ta được 3 trạm: PhieuNopTien1 = PhieuNopTien |›‹ ChiNhanh1 PhieuNopTien2 = PhieuNopTien |›‹ ChiNhanh2 PhieuNopTien3 = PhieuNopTien |›‹ ChiNhanh3 Phân mảnh ngang dẫn xuất ChiNhanh – PhieuRutTien ta được 3 trạm: PhieuRutTien1 = PhieuRutTien |›‹ ChiNhanh1 PhieuRutTien2 = PhieuRutTien |›‹ ChiNhanh2 PhieuRutTien3 = PhieuRutTien |›‹ ChiNhanh3 Sau khi phân mảnh ta có 3 trạm như sau: - Trạm 1 - Trạm 2 - Trạm 3 1.4.2 Mô tả về sử dụng dữ liệu cho mỗi chi nhánh - Server : Có quyền thay đổi thông tin, cập nhật toàn bộ dữ liệu trên hệ thống - Máy trạm : Mỗi trạm (chi nhánh) chỉ được cập nhật dữ liệu trong phạm vi chi nhánh đó 1.4.3 Mô tả quá trình nghiệp vụ cho mỗi chi nhánh - Chức năng cập nhật dữ liệu dịch vụ có nhiệm vụ tiếp nhận các điều chỉnh về dịch vụ từ bộ phận quản lý cấp trên và cập nhật nó vào hệ thống Công việc này bao gồm: Thêm một dịch vụ mới vào hệ thống và thay đổi một dịch vụ đang cung cấp (Ví dụ: tăng giảm lãi suất, thời hạn trả lãi,…) - Chức năng quản lý sử dụng dịch vụ: là nơi giao tiếp với khách hàng và có nhiệm vụ cập nhật thông tin của khách hàng cũng như các thông tin về sử dụng dịch vụ của khách hàng - Chức năng thống kê báo cáo có nhiệm vụ tổng hợp và báo cáo thông tin theo yêu cầu của bộ phận quản lý cấp trên 2 Xây dựng CSDL phân tán trong hệ quản trị CSDL SQL Server 2.1 Cấu trúc các bảng dữ liệu 2.1.1 Bảng Chi nhánh Tên trường Kiểu dữ liệu Mô tả MaChiNhanh Int Mã chi nhánh TenChiNhanh Nvarchar(250) Tên chi nhánh DiaChi Nvarchar(250) Địa chỉ DienThoai Nvarchar(50) Điện thoại 2.1.2 Bảng Phòng ban Tên trường Kiểu dữ liệu Mô tả MaPhongBan Int Mã phòng ban TenPhongBan Nvarchar(250) Tên phòng ban DienThoai Nvarchar(50) Điện thoại Tên trường Kiểu dữ liệu Mô tả MaChucVu Int Mã chức vụ TenChucVu Nvarchar(250) Tên chức vụ PhuCapChucVu Decimal(18,0) Phụ cấp chức vụ 2.1.3 Bảng Chức vụ 2.1.4 Bảng Khách hàng Tên trường Kiểu dữ liệu Mô tả SoTaiKhoan Varchar(10) Số tài khoản TenTaiKhoan Nvarchar(250) Tên tài khoản DiaChi Nvarchar(250) Địa chỉ DienThoai Nvarchar(50) Điện thoại ToChuc Nvarchar(250) Tổ chức TrangThai bit GhiChu Nvarchar(250) Trạng thái 2.1.5 Bảng Nhân viên Tên trường Kiểu dữ liệu Mô tả MaNhanVien Varchar(10) Mã nhân viên TenNhanVien Nvarchar(250) Tên nhân viên NgaySinh Date Ngày sinh GioiTinh Nchar(5) Giới tính DiaChi Nvarchar(250) Địa chỉ DienThoai Nvarchar(50) Điện thoại MaChiNhanh Int Mã chi nhánh MaPhongBan Int Mã phòng ban MaChucVu Int Mã chức vụ 2.1.6 Bảng Phiếu chuyển tiền Tên trường Kiểu dữ liệu Mô tả MaPhieuChuyenTien Int Mã nhân viên NgayLap Date Tên nhân viên MaChiNhanh Int Ngày sinh SoTaiKhoanGui Varchar(10) Giới tính SoTaiKhoanNhan Varchar(10) Địa chỉ SoTien Decimal(18,0) Điện thoại PhiChuyenTien Decimal(18,0) Mã chi nhánh MaNhanVien Varchar(10) Mã phòng ban GhiChu Nvarchar(250) Mã chức vụ 2.1.7 Bảng Phiếu nộp tiền Tên trường Kiểu dữ liệu Mô tả MaPhieuNopTien Int Mã phiếu nộp tiền NgayLap Date Ngày lập MaChiNhanh Int Mã chi nhánh SoTaiKhoan Varchar(10) Số tài khoản HoTenNguoiNop Nvarchar(250) Họ tên người nộp DiaChiNguoiNop Nvarchar(250) Địa chỉ người nộp NoiDungNop Nvarchar(250) Nội dung nộp SoTien Decimal(18,0) Số tiền nộp PhiNopTien Decimal(18,0) Phí nộp tiền MaNhanVien Varchar(10) Mã nhân viên GhiChu Nvarchar(250) Ghi chú 2.1.8 Bảng Phiếu rút tiền Tên trường Kiểu dữ liệu Mô tả MaPhieuRutTien Int Mã phiếu rút tiền NgayLap Date Ngày lập MaChiNhanh Int Mã chi nhánh SoTaiKhoan Varchar(10) Số tài khoản SoTien Decimal(18,0) Số tiền nộp PhiNopTien Decimal(18,0) Phí nộp tiền MaNhanVien Varchar(10) Mã nhân viên GhiChu Nvarchar(250) Ghi chú 2.2 Mô hình CSDL phân tán 2.2.1 Một số Trigger ====================================== ====================================== Create T-SQL Trigger Createtrg_ChiNhanh_Tram1 T-SQL Trigger trg_NhanVien_Tram1 ====================================== ====================================== USE VietinBank1 USE VietinBank1 GO GO ====================================== ====================================== Create T-SQL Trigger trg_PhieuNopTien_Tram1 Create T-SQL Trigger trg_PhieuChuyenTien_Tram1 ====================================== ====================================== ====================================== USE VietinBank1 Create T-SQL Trigger trg_PhieuRutTien_Tram1 USE VietinBank1 2.3 Một số truy vấn phân tán trong hệ quản trị CSDL GO ====================================== GO IF OBJECT_ID ('trg_PhieuNopTien_Tram1','TR') IS NOT NULL 2.3.1 Tạo Link Server USE VietinBank1 IF OBJECT_ID ('trg_PhieuChuyenTien_Tram1','TR') IS NOT NULL DROP TRIGGER trg_PhieuNopTien_Tram1 GO DROP TRIGGER trg_PhieuChuyenTien_Tram1 IF OBJECT_ID ('trg_PhieuRutTien_Tram1','TR') IS NOT NULL DROP TRIGGER trg_PhieuRutTien_Tram1 USE2.3.2 master Thực hiện đồng bộ dữ liệu từ Server GO exec sp_addlinkedserver @server = 'LINK_ChiNhanh1', @srvproduct = '', @provider = 'SQLNCLI', @datasrc = ‘CHINHANH1', @catalog = ‘VietinBank1’ GO 3 Cài đặt hệ thống trên CSDL phân tán exec sp_addlinkedserver @server = 'LINK_ChiNhanh2', @srvproduct = '', provider = 'SQLNCLI', EXEC msdb.dbo.sp_start_job N’SERVER-PC-VietinBank-rep-ChiNhanh1’ @datasrc = ‘CHINHANH2', @catalog ‘VietinBank2’ 3.1 Yêu cầu phần cứng và =phần mềm EXEC msdb.dbo.sp_start_job N’SERVER-PC-VietinBank-rep-ChiNhanh2’ 3.2 Thiết kế giao diện chương trình trên các trạm EXEC msdb.dbo.sp_start_job N’SERVER-PC-VietinBank-rep-ChiNhanh3’ 3.3 Cài đặt và thử nghiệm ... liệu SQL Server cho quản lí giao dịch ngân hàng theo phân mảng ngang địa Đà Nẵng, Hà Nội, Sài Gịn” I NỘI DUNG CHÍNH Thiết kế cài đặt sở liệu phân tán hệ quản trị sở liệu SQL Server cho quản lí giao. .. chương : - Chương : Thiết kế CSDL phân tán cho hệ thống - Chương : Xây dựng CSDL phân tán hệ quản trị CSDL - Chương : Cài đặt hệ thống CSDL phân tán Thiết kế CSDL phân tán cho hệ thống 1.1 Khảo... tập trung bộc lộ nhiều nhược điểm Vì xây dựng hệ thống phân tán để thay hệ thống tập trung truyền thống điều tất yếu, nhóm chúng em đề xuất ? ?Thiết kế cài đặt sở liệu phân tán hệ quản trị sở liệu

Ngày đăng: 07/04/2016, 08:13

Từ khóa liên quan

Mục lục

  • I. LỜI NÓI ĐẦU

  • I. NỘI DUNG CHÍNH

    • 1. Thiết kế CSDL phân tán cho hệ thống

      • 1.1. Khảo sát nghiệp vụ

      • 1.2. Bài toán

      • 1.3. Thiết kế cơ sở dữ liệu tập trung cho hệ thống

      • 1.4. Thiết kế mô hình csdl phân tán cho hệ thống

        • 1.4.1. Phân mảnh dữ liệu

        • 1.4.2. Mô tả về sử dụng dữ liệu cho mỗi chi nhánh

        • 1.4.3. Mô tả quá trình nghiệp vụ cho mỗi chi nhánh

        • 2. Xây dựng CSDL phân tán trong hệ quản trị CSDL SQL Server

          • 2.1. Cấu trúc các bảng dữ liệu

            • 2.1.1. Bảng Chi nhánh

            • 2.1.2. Bảng Phòng ban

            • 2.1.3. Bảng Chức vụ

            • 2.1.4. Bảng Khách hàng

            • 2.1.5. Bảng Nhân viên

            • 2.1.6. Bảng Phiếu chuyển tiền

            • 2.1.7. Bảng Phiếu nộp tiền

            • 2.1.8. Bảng Phiếu rút tiền

            • 2.2. Mô hình CSDL phân tán

              • 2.2.1. Một số Trigger

              • 2.3. Một số truy vấn phân tán trong hệ quản trị CSDL

                • 2.3.1. Tạo Link Server

                • 2.3.2. Thực hiện đồng bộ dữ liệu từ Server

                • 3. Cài đặt hệ thống trên CSDL phân tán

                  • 3.1. Yêu cầu phần cứng và phần mềm

                  • 3.2. Thiết kế giao diện chương trình trên các trạm

Tài liệu cùng người dùng

Tài liệu liên quan