Báo Cáo Thực Hành Về Thiết Kế Cơ Sở Dữ Liệu Phân Tán

Tài liệu nghiên cứu Bài tập lớn 1 thiết kế cơ sở dữ liệu phân tán, tổng hợp lý thuyết và thực hành, cung cấp kiến thức chuyên sâu về .

Chuyên ngành

Cơ Sở Dữ Liệu Phân Tán

Người đăng

Ẩn danh

Thể loại

báo cáo thực hành

2022

78
4
0

Phí lưu trữ

30 Point

Mục lục chi tiết

1. THIẾT KẾ CSDL PHÂN TÁN

1.1. Thiết kế và mô tả csdl phân tán

1.2. Kiến trúc phân mảnh

1.3. Mô tả phân mảnh

1.4. Minh họa trên 2 chi nhánh

1.5. Xây dựng csdl phân tán

1.6. Kiến trúc phân quyền

1.7. Mô tả kiến trúc phân quyền

1.8. Thực hiện 10 câu truy vấn

2. VIẾT HÀM, THỦ TỤC VÀ RÀNG BUỘC TOÀN VẸN

2.1. Ràng buộc toàn vẹn

3. DEMO CÁC MỨC CÔ LẬP (ISOLATION LEVEL) TRONG MÔI TRƯỜNG PHÂN TÁN

3.1. Trường hợp lost update

3.2. Mô tả tình huống

3.3. Trường hợp dirty read

3.4. Trường hợp unrepeatable read

3.5. Trường hợp phantom read

3.6. Trường hợp deadlock

4. THỰC HIỆN TỐI ƯU HÓA TRUY VẤN TRÊN MÔI TRƯỜNG PHÂN TÁN

4.1. Câu truy vấn đơn giản chưa tối ưu

4.2. EXPLAIN QUERY câu truy vấn đơn giản

4.3. Tối ưu hóa câu truy vấn cục bộ, phân tán

4.4. Viết lại câu query trên môi trường phân tán

5. CƠ CHẾ NHÂN BẢN TRONG MICROSOFT SQL SERVER

5.1. Tìm hiểu cơ chế nhân bản, cách thức hoạt động

5.2. Demo cơ chế nhân bản trên nhiều cụm máy

6. PHÂN CÔNG CÔNG VIỆC

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Tổng Quan Về Thiết Kế Cơ Sở Dữ Liệu Phân Tán

Thiết kế cơ sở dữ liệu phân tán là một lĩnh vực quan trọng trong công nghệ thông tin. Nó cho phép quản lý dữ liệu trên nhiều máy chủ khác nhau, giúp tăng cường hiệu suất và khả năng mở rộng. Việc hiểu rõ về cơ sở dữ liệu phân tán giúp các tổ chức tối ưu hóa quy trình quản lý dữ liệu, từ đó nâng cao hiệu quả hoạt động. Bài viết này sẽ cung cấp cái nhìn tổng quan về thiết kế cơ sở dữ liệu phân tán, các thách thức và giải pháp liên quan.

1.1. Định Nghĩa Cơ Sở Dữ Liệu Phân Tán

Cơ sở dữ liệu phân tán là một hệ thống lưu trữ dữ liệu được phân bố trên nhiều máy chủ. Mỗi máy chủ có thể quản lý một phần dữ liệu nhất định, giúp tăng cường khả năng truy cập và xử lý dữ liệu. Điều này cho phép các tổ chức xử lý khối lượng lớn thông tin một cách hiệu quả hơn.

1.2. Lợi Ích Của Cơ Sở Dữ Liệu Phân Tán

Việc sử dụng cơ sở dữ liệu phân tán mang lại nhiều lợi ích như khả năng mở rộng linh hoạt, tăng cường độ tin cậy và khả năng phục hồi. Hệ thống này cũng giúp giảm thiểu thời gian truy cập dữ liệu, từ đó nâng cao trải nghiệm người dùng.

II. Thách Thức Trong Thiết Kế Cơ Sở Dữ Liệu Phân Tán

Mặc dù có nhiều lợi ích, thiết kế cơ sở dữ liệu phân tán cũng đối mặt với nhiều thách thức. Các vấn đề như đồng bộ hóa dữ liệu, bảo mật và quản lý truy cập là những yếu tố cần được xem xét kỹ lưỡng. Việc không giải quyết tốt những thách thức này có thể dẫn đến mất mát dữ liệu và giảm hiệu suất hệ thống.

2.1. Vấn Đề Đồng Bộ Hóa Dữ Liệu

Đồng bộ hóa dữ liệu giữa các máy chủ là một thách thức lớn trong cơ sở dữ liệu phân tán. Khi dữ liệu được cập nhật trên một máy chủ, việc đảm bảo rằng các máy chủ khác cũng nhận được thông tin mới là rất quan trọng để duy trì tính nhất quán.

2.2. Bảo Mật Trong Cơ Sở Dữ Liệu Phân Tán

Bảo mật là một yếu tố quan trọng trong thiết kế cơ sở dữ liệu phân tán. Các tổ chức cần đảm bảo rằng dữ liệu được bảo vệ khỏi các mối đe dọa bên ngoài và nội bộ. Việc áp dụng các biện pháp bảo mật như mã hóa và kiểm soát truy cập là cần thiết.

III. Phương Pháp Thiết Kế Cơ Sở Dữ Liệu Phân Tán Hiệu Quả

Để thiết kế một cơ sở dữ liệu phân tán hiệu quả, cần áp dụng các phương pháp và công nghệ tiên tiến. Việc lựa chọn kiến trúc phù hợp, phân mảnh dữ liệu và tối ưu hóa truy vấn là những yếu tố quan trọng giúp nâng cao hiệu suất hệ thống.

3.1. Kiến Trúc Phân Mảnh Dữ Liệu

Phân mảnh dữ liệu là một phương pháp quan trọng trong thiết kế cơ sở dữ liệu phân tán. Bằng cách chia nhỏ dữ liệu thành các phần riêng biệt, hệ thống có thể xử lý thông tin nhanh chóng và hiệu quả hơn.

3.2. Tối Ưu Hóa Truy Vấn

Tối ưu hóa truy vấn là một bước quan trọng trong thiết kế cơ sở dữ liệu phân tán. Việc sử dụng các kỹ thuật như lập chỉ mục và phân tích truy vấn giúp cải thiện tốc độ truy cập dữ liệu, từ đó nâng cao hiệu suất hệ thống.

IV. Ứng Dụng Thực Tiễn Của Cơ Sở Dữ Liệu Phân Tán

Các ứng dụng thực tiễn của cơ sở dữ liệu phân tán rất đa dạng, từ quản lý dữ liệu trong doanh nghiệp đến các hệ thống thương mại điện tử. Việc áp dụng cơ sở dữ liệu phân tán giúp các tổ chức xử lý thông tin một cách hiệu quả, đồng thời cải thiện khả năng phục vụ khách hàng.

4.1. Quản Lý Dữ Liệu Doanh Nghiệp

Trong môi trường doanh nghiệp, cơ sở dữ liệu phân tán giúp quản lý thông tin khách hàng, sản phẩm và giao dịch một cách hiệu quả. Điều này cho phép các tổ chức đưa ra quyết định nhanh chóng và chính xác hơn.

4.2. Hệ Thống Thương Mại Điện Tử

Các hệ thống thương mại điện tử sử dụng cơ sở dữ liệu phân tán để quản lý thông tin sản phẩm, đơn hàng và khách hàng. Việc này giúp cải thiện trải nghiệm mua sắm trực tuyến và tăng cường khả năng phục vụ khách hàng.

V. Kết Luận Về Thiết Kế Cơ Sở Dữ Liệu Phân Tán

Thiết kế cơ sở dữ liệu phân tán là một lĩnh vực quan trọng trong công nghệ thông tin. Việc hiểu rõ về các thách thức và phương pháp thiết kế giúp các tổ chức tối ưu hóa quy trình quản lý dữ liệu. Tương lai của cơ sở dữ liệu phân tán hứa hẹn sẽ tiếp tục phát triển với sự xuất hiện của các công nghệ mới.

5.1. Xu Hướng Tương Lai

Tương lai của cơ sở dữ liệu phân tán sẽ được định hình bởi sự phát triển của công nghệ điện toán đám mây và trí tuệ nhân tạo. Những công nghệ này sẽ giúp cải thiện khả năng xử lý và quản lý dữ liệu một cách hiệu quả hơn.

5.2. Tầm Quan Trọng Của Đào Tạo

Đào tạo và nâng cao kỹ năng cho nhân viên là rất quan trọng trong việc triển khai cơ sở dữ liệu phân tán. Việc này giúp đảm bảo rằng các tổ chức có đủ năng lực để quản lý và tối ưu hóa hệ thống một cách hiệu quả.

13/07/2025

Trích đoạn nội dung tài liệu

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA HỆ THỐNG THÔNG TIN □ □ Báo cáo thực hành: BÀI TẬP LỚN 1 THIẾT KẾ CƠ SỞ DỮ LIỆU PHÂN TÁN Môn học: CƠ SỞ DỮ LIỆU PHÂN TÁN Giảng viên giảng dạy: Nguyễn Minh Nhựt Lớp: IS211.HTCL Sinh viên thực hiện: Nguyễn Thị Mỹ Trân - 20520322 Tôn Nữ Tú Quyên - 20520296 Thái Tăng Đức - 20521203 Trần Anh Huy - 20520551 Tp.HCM, tháng 12 năm 2022 Báo cáo bài tập lớn 1 Cơ sở dữ liệu phân tán MỤC LỤC MỤC LỤC. THIẾT KẾ CSDL PHÂN TÁN. Thiết kế và mô tả csdl phân tán. Kiến trúc phân mảnh.

Mô tả phân mảnh. Minh họa trên 2 chi nhánh. Xây dựng csdl phân tán. Kiến trúc phân quyền.

Mô tả kiến trúc phân quyền. Thực hiện 10 câu truy vấn. VIẾT HÀM, THỦ TỤC VÀ RÀNG BUỘC TOÀN VẸN. Ràng buộc toàn vẹn.

DEMO CÁC MỨC CÔ LẬP (ISOLATION LEVEL) TRONG MÔI TRƯỜNG PHÂN TÁN. Trường hợp lost update. Mô tả tình huống. 59 Trang | 1 Báo cáo bài tập lớn 1 Cơ sở dữ liệu phân tán 3.

Trường hợp dirty read. Trường hợp unrepeatable read. Trường hợp phantom read. Trường hợp deadlock.

THỰC HIỆN TỐI ƯU HÓA TRUY VẤN TRÊN MÔI TRƯỜNG PHÂN TÁN. Câu truy vấn đơn giản chưa tối ưu. EXPLAIN QUERY câu truy vấn đơn giản. Tối ưu hóa câu truy vấn cục bộ, phân tán.

Viết lại câu query trên môi trường phân tán. CƠ CHẾ NHÂN BẢN TRONG MICROSOFT SQL SERVER. Tìm hiểu cơ chế nhân bản, cách thức hoạt động. Demo cơ chế nhân bản trên nhiều cụm máy.

PHÂN CÔNG CÔNG VIỆC. 76 TÀI LIỆU THAM KHẢO. 77 Trang | 2 Báo cáo bài tập lớn 1 Cơ sở dữ liệu phân tán 1. THIẾT KẾ CSDL PHÂN TÁN 1.

Thiết kế và mô tả csdl phân tán CSDL Quản lý các chi nhánh Mini Mart Mini Mart có 2 chi nhánh tại Thành Phố Hồ Chí Minh. Trụ sở chính của Mini Mart nằm tại chi nhánh ‘Lê Văn Việt, Quận 9’ Lược đồ cơ sở dữ liệu của mỗi chi nhánh của Mini Mart như sau: BRANCH (BRANCH_ID, BRANCH_NAME, ADDRESS) Tân từ: Mỗi chi nhánh có mã chi nhánh (BRANCH_ID) dùng để phân biệt các chi nhánh với nhau ngoài ra còn lưu tên chi nhánh (BRANCH_NAME) và địa chỉ của chi nhánh đó (ADDRESS). Trường tên chi nhánh là duy nhất EMPLOYEE (EMP_ID, FIRST_NAME, LAST_NAME, GENDER, BIRTHDAY, PHONE, ADDRESS, START_DATE, SALARY, ROLE, BRANCH_ID) Tân từ: Mỗi nhân viên có mã nhân viên (EMPLOYEE_ID) là duy nhất, tên nhân viên (FIRST_NAME, LAST_NAME ), giới tính (GENDER), ngày sinh (BIRTHDAY), điện thoại (PHONE), địa chỉ (ADDRESS), chức vụ của nhân viên (JOB), ngày vào làm (START_DATE), gmức lương của nhân viên (SALARY), mã chi nhánh mà nhân viên đó làm việc (BRANCH_ID). CUSTOMER (CUS_ID, FIRST_NAME, LAST_NAME, GENDER, ADDRESS, PHONE, BIRTHDAY, REG_DATE, SPENT_MONEY, POINT) Tân từ: Mỗi khách hàng có mã khách hàng (CUSTOMER_ID) là duy nhất, họ và tên khách hàng (FIRST_NAME, LAST_NAME), giới tính (GENDER), ngày sinh Trang | 3 Báo cáo bài tập lớn 1 Cơ sở dữ liệu phân tán (BIRTHDAY), địa chỉ khách hàng (ADDRESS), điện thoại (), ngày đăng ký (PHONE), tổng tiền chi mua (SPENT_MONEY), điểm tích lũy đơn hàng (POINT) PRODUCT (PRO_ID, PRODUCT_NAME, COUNTRY, ORIGINAL_PRICE, SALE_PRICE, MFG, EXP, PRODUCT_TYPE, VAT, REMAINING_QUANTITY) Tân từ: mỗi sản phẩm có mã sản phẩm (PRO_ID) là suy nhất, tên sản phẩm (PRODUCT_NAME), nước sản xauast (COUNTRY), giá gốc (ORIGINAL_PRICE), giá bán (SALE_PRICE), ngày sản xuất (MFG), ngày hết hạn (EXP), loại sản phẩm ( PRODUCT_TYPE), vat (VAT) WAREHOUSE_MANAGEMENT (BRANCH_ID, PRO_ID, IMPORTED_DATE, IMPORTED_QUANTITY) Tân từ: Kho quản lý sản phảm có mã chi nhánh (BRANCH_ID), mã sản phẩm (PRO_ID), ngày nhập (IMPORTED_DATE), số lượng nhập (IMPORTED_QUANTITY) WAREHOUSE_SALES (BRANCH_ID, PRO_ID, STATUS) Tân từ: quản lý tình trạng bán hàng: mã chi nhánh (BRANCH_ID), mã sản phẩm (PRO_ID), tình trạng (STATUS) BILL (BILL_ID, EMP_ID, CUS_ID, BILL_DATE, TOTAL_MONEY) Tân từ: hóa đơn bán hàng có mã hóa đơn (BILL_ID), mã nhân viên thanh toán (EMP_ID), mã khách hàng (CUS_ID), ngày hóa đơn (BILL_ID), tổng tiền hóa đơn (TOTAL_MONEY) BILL_DETAILS (BILL_ID, PRO_ID, AMOUNT) Tân từ: chi tiết hóa đơn có mã hóa đơn (BILL_ID), mã sản phẩm (PRO_ID), và số lượng sản phẩm (AMOUNT) Trang | 4 Báo cáo bài tập lớn 1 Cơ sở dữ liệu phân tán 1.

Kiến trúc phân mảnh 1. Mô tả phân mảnh • Quan hệ BRANCH là phân mảnh ngang chính • Quan hệ EMPLOYEE, BILL, BILL_DETAILS là phân mảnh ngang dẫn xuất • Quan hệ WAREHOUSE được phân mảnh hỗn hợp thành WAREHOUSE_MANAGEMENT và WAREHOUSE_SALES. Trong đó: o Quan hệ WAREHOUSE_MANAGEMENT chứa các thông tin dùng để quản lý thông tin nhập sản phẩm; o Quan hệ WAREHOUSE_SALES quản lý thông tin trạng thái bán hàng của sản phẩm • Quan hệ CUSTOMER, PRODUCT được nhân bản tại tất cả chi nhánh 1. Minh họa trên 2 chi nhánh * Quan hệ BRANCH là phân mảnh ngang chính CN1.BRANCH = 𝛿(𝐵𝑅𝐴𝑁𝐶𝐻_𝑁𝐴𝑀𝐸 =′𝑀𝑖𝑛𝑖 𝑚𝑎𝑟𝑡 𝑄𝑢𝑎𝑛 9′) BRANCH CN2.BRANCH = 𝛿 (𝐵𝑅𝐴𝑁𝐶𝐻_𝑁𝐴𝑀𝐸 = BRANCH ′𝑀𝑖𝑛𝑖 𝑚𝑎𝑟𝑡 𝑐ℎ𝑖 𝑛ℎ𝑎𝑛ℎ 𝑄𝑢𝑎𝑛 1′) * Quan hệ EMPLOYEE, BILL, BILL_DETAILS là phân mảnh ngang dẫn xuất CN1.EMPLOYEE = EMPLOYEE ⋉𝐵𝑅𝐴𝑁𝐶𝐻_𝐼𝐷 CN1.EMPLOYEE = EMPLOYEE ⋉𝐵𝑅𝐴𝑁𝐶𝐻_𝐼𝐷 CN2.BILL_ID = BILL_ID ⋉𝐸𝑀𝑃_𝐼𝐷 CN1.BILL_ID = BILL_ID ⋉𝐸𝑀𝑃_𝐼𝐷 CN2.BILL_DETAILS = BILL_DETAILS ⋉𝐵𝐼𝐿𝐿_𝐼𝐷 CN1.

BILL_ID CN2. TRANSACTION = BILL_DETAILS ⋉𝐵𝐼𝐿𝐿_𝐼𝐷 CN2. BILL_ID *Quan hệ WAREHOUSE được phân mảnh hỗn hợp thành WAREHOUSE_MANAGEMENT và WAREHOUSE_SALES. Trong đó: Trang | 5 Báo cáo bài tập lớn 1 Cơ sở dữ liệu phân tán CN1.

WAREHOUSE_MANAGEMENT = 𝜋(𝐵𝑅𝐴𝑁𝐶𝐻_𝐼𝐷,𝑃𝑅𝑂_𝐼𝐷,𝐼𝑀𝑃𝑂𝑅𝑇𝐸𝐷_𝐷𝐴𝑇𝐸,𝐼𝑀𝑃𝑂𝑅𝑇𝐸𝐷_𝑄𝑈𝐴𝑁𝑇𝐼𝑇𝑌) (WAREHOUSE ⋉𝐵𝑅𝐴𝑁𝐶𝐻_𝐼𝐷 CN1. WAREHOUSE_SALES = 𝜋(𝐵𝑅𝐴𝑁𝐶𝐻_𝐼𝐷,𝑃𝑅𝑂_𝐼𝐷,𝑆𝑇𝐴𝑇𝑈𝑆) (WAREHOUSE⋉𝐵𝑅𝐴𝑁𝐶𝐻_𝐼𝐷 CN1. WAREHOUSE_MANAGEMENT = 𝜋(𝐵𝑅𝐴𝑁𝐶𝐻_𝐼𝐷,𝑃𝑅𝑂_𝐼𝐷,𝐼𝑀𝑃𝑂𝑅𝑇𝐸𝐷_𝐷𝐴𝑇𝐸,𝐼𝑀𝑃𝑂𝑅𝑇𝐸𝐷_𝑄𝑈𝐴𝑁𝑇𝐼𝑇𝑌) (WAREHOUSE ⋉𝐵𝑅𝐴𝑁𝐶𝐻_𝐼𝐷 CN1. WAREHOUSE_SALES = 𝜋(𝐵𝑅𝐴𝑁𝐶𝐻_𝐼𝐷,𝑃𝑅𝑂_𝐼𝐷,𝑆𝑇𝐴𝑇𝑈𝑆) (WAREHOUSE⋉𝐵𝑅𝐴𝑁𝐶𝐻_𝐼𝐷 CN1.BRANCH) *Quan hệ CUSTOMER, PRODUCT được nhân bản tại tất cả chi nhánh 1.

Xây dựng csdl phân tán 1. Dll CN1 CN2 CREATE TABLE CN1.BRANCH( CREATE TABLE CN2.BRANCH( BRANCH_ID VARCHAR2(5) BRANCH_ID VARCHAR2(5) CONSTRAINT BRANCH_PK CONSTRAINT BRANCH_PK PRIMARY KEY, PRIMARY KEY, BRANCH_NAME BRANCH_NAME VARCHAR2(200), VARCHAR2(200), ADDRESS VARCHAR2(200) ADDRESS VARCHAR2(200) ); ); CREATE TABLE CREATE TABLE CN1.EMPLOYEE( EMP_ID NUMBER EMP_ID NUMBER CONSTRAINT EMPLOYEE_PK CONSTRAINT EMPLOYEE_PK PRIMARY KEY, PRIMARY KEY, FIRST_NAME VARCHAR2(200), FIRST_NAME VARCHAR2(200), Trang | 6 Báo cáo bài tập lớn 1 Cơ sở dữ liệu phân tán LAST_NAME VARCHAR2(200), LAST_NAME VARCHAR2(200), GENDER VARCHAR(10), GENDER VARCHAR(10), BIRTHDAY DATE, BIRTHDAY DATE, PHONE VARCHAR2(200), PHONE VARCHAR2(200), ADDRESS VARCHAR2(200), ADDRESS VARCHAR2(200), START_DATE DATE, START_DATE DATE, SALARY NUMBER, SALARY NUMBER, ROLE VARCHAR2(200), ROLE VARCHAR2(200), BRANCH_ID VARCHAR2(5), BRANCH_ID VARCHAR2(5), CONSTRAINT CONSTRAINT FK_EMP_BRANCH FOREIGN FK_EMP_BRANCH FOREIGN KEY(BRANCH_ID) REFERENCES KEY(BRANCH_ID) REFERENCES BRANCH(BRANCH_ID) BRANCH(BRANCH_ID) ); ); CREATE TABLE CREATE TABLE CN2.CUSTOMER ( ( CUS_ID NUMBER CUS_ID NUMBER CONSTRAINT PK_STUDENT CONSTRAINT PK_STUDENT PRIMARY KEY, PRIMARY KEY, FIRST_NAME VARCHAR(20), FIRST_NAME LAST_NAME VARCHAR(20), VARCHAR(20), GENDER VARCHAR(10), LAST_NAME ADDRESS VARCHAR(200), VARCHAR(20), PHONE VARCHAR(20), GENDER VARCHAR(10), BIRTHDAY DATE, ADDRESS REG_DATE DATE, VARCHAR(200), SPENT_MONEY NUMBER, PHONE VARCHAR(20), POINT INT BIRTHDAY DATE, ); REG_DATE DATE, Trang | 7 Báo cáo bài tập lớn 1 Cơ sở dữ liệu phân tán SPENT_MONEY NUMBER, POINT INT ); CREATE TABLE CN1.PRODUCT CREATE TABLE CN2.PRODUCT ( ( PRO_ID NUMBER PRO_ID NUMBER CONSTRAINT PK_PRO PRIMARY CONSTRAINT PK_PRO PRIMARY KEY, KEY, PRODUCT_NAME PRODUCT_NAME VARCHAR(200), VARCHAR(200), COUNTRY VARCHAR(50), COUNTRY VARCHAR(50), ORIGINAL_PRICE NUMBER, ORIGINAL_PRICE NUMBER, SALE_PRICE NUMBER, SALE_PRICE NUMBER, MFG DATE, MFG DATE, EXP DATE, EXP DATE, PRODUCT_TYPE PRODUCT_TYPE VARCHAR(200), VARCHAR(200), VAT NUMBER, VAT NUMBER, REMAINING_QUANTITY REMAINING_QUANTITY NUMBER NUMBER ); ); CREATE TABLE CREATE TABLE CN1.WAREHOUSE_MANAGEME CN2.WAREHOUSE_MANAGEME NT NT ( ( BRANCH_ID VARCHAR2(5), BRANCH_ID VARCHAR2(5), PRO_ID NUMBER, PRO_ID NUMBER, IMPORTED_DATE DATE, IMPORTED_DATE DATE, Trang | 8 Báo cáo bài tập lớn 1 Cơ sở dữ liệu phân tán IMPORTED_QUANTITY IMPORTED_QUANTITY NUMBER, NUMBER, CONSTRAINT PK_WM CONSTRAINT PK_WM PRIMARY KEY(BRANCH_ID, PRIMARY KEY(BRANCH_ID, PRO_ID), PRO_ID), CONSTRAINT CONSTRAINT FK_WM_BRANCH FOREIGN KEY FK_WM_BRANCH FOREIGN KEY (BRANCH_ID) REFERENCES (BRANCH_ID) REFERENCES BRANCH(BRANCH_ID), BRANCH(BRANCH_ID), CONSTRAINT FK_WM_PRO CONSTRAINT FK_WM_PRO FOREIGN KEY (PRO_ID) FOREIGN KEY (PRO_ID) REFERENCES PRODUCT(PRO_ID) REFERENCES PRODUCT(PRO_ID) ); ); CREATE TABLE CREATE TABLE CN1.WAREHOUSE_SALES CN2.WAREHOUSE_SALES ( ( BRANCH_ID VARCHAR2(5), BRANCH_ID VARCHAR2(5), PRO_ID NUMBER, PRO_ID NUMBER, STATUS VARCHAR2(200), STATUS VARCHAR2(200), CONSTRAINT WS_PK CONSTRAINT WS_PK PRIMARY KEY(BRANCH_ID, PRIMARY KEY(BRANCH_ID, PRO_ID), PRO_ID), CONSTRAINT CONSTRAINT FK_WS_BRANCH FOREIGN KEY FK_WS_BRANCH FOREIGN KEY (BRANCH_ID) REFERENCES (BRANCH_ID) REFERENCES BRANCH(BRANCH_ID), BRANCH(BRANCH_ID), CONSTRAINT FK_WS_PRO CONSTRAINT FK_WS_PRO FOREIGN KEY (PRO_ID) FOREIGN KEY (PRO_ID) REFERENCES PRODUCT(PRO_ID) REFERENCES PRODUCT(PRO_ID) ); ); Trang | 9 Báo cáo bài tập lớn 1 Cơ sở dữ liệu phân tán CREATE TABLE CN1.BILL CREATE TABLE CN2.BILL ( ( BILL_ID NUMBER BILL_ID NUMBER CONSTRAINT PK_BILL PRIMARY CONSTRAINT PK_BILL PRIMARY KEY, KEY, EMP_ID NUMBER, EMP_ID NUMBER, CUS_ID NUMBER, CUS_ID NUMBER, BILL_DATE DATE, BILL_DATE DATE, TOTAL_MONEY NUMBER, TOTAL_MONEY NUMBER, CONSTRAINT FK_BILL_EMP CONSTRAINT FK_BILL_EMP FOREIGN KEY(EMP_ID) FOREIGN KEY(EMP_ID) REFERENCES REFERENCES EMPLOYEE(EMP_ID), EMPLOYEE(EMP_ID), CONSTRAINT FK_BILL_CUS CONSTRAINT FK_BILL_CUS FOREIGN KEY(CUS_ID) FOREIGN KEY(CUS_ID) REFERENCES REFERENCES CUSTOMER(CUS_ID) CUSTOMER(CUS_ID) ); ); CREATE TABLE CREATE TABLE CN1.BILL_DETAILS CN1. Dml CN1 CN2 INSERT INTO INSERT INTO CN1.BRANCH(BRANCH_ID, CN2.BRANCH(BRANCH_ID, BRANCH_NAME, ADDRESS) BRANCH_NAME, ADDRESS) VALUES ('CN1', 'Mini mart Quan 9', VALUES ('CN2', 'Mini mart chi '5, Le Van Viet, Quan 9, TPHCM'); nhanh Quan 1', '55, Ly Thanh Tong, Quan 1, TPHCM'); INSERT INTO CN1.EMPLOYEE INSERT INTO CN2.EMPLOYEE VALUES VALUES (CN1.EMP_ID_SEQUENCE.EMP_ID_SEQUENCE.nextval, 'Nguyen Thi My', 'Tran','Female', 'Nguyen Thi My', 'Tam','Female', TO_DATE('05/05/2002', TO_DATE('05/05/2002', 'dd/mm/yyyy'), '0921231741', 'KTX 'dd/mm/yyyy'), '0921231741', 'KTX khu B', TO_DATE('21/02/2022', khu B', TO_DATE('21/02/2022', 'dd/mm/yyyy'), 10000000,'Manager', 'dd/mm/yyyy'), 10000000,'Manager', 'CN1'); 'CN2'); INSERT INTO CN1.EMPLOYEE INSERT INTO CN2.EMPLOYEE VALUES VALUES (CN1.EMP_ID_SEQUENCE.EMP_ID_SEQUENCE.nextval, 'Ton Nu Tu', 'Quyen','Female', 'Ton Nu Tu', 'Tran','Female', Trang | 11 Báo cáo bài tập lớn 1 Cơ sở dữ liệu phân tán TO_DATE('05/01/2002', TO_DATE('05/01/2002', 'dd/mm/yyyy'), '0977164279', 'KTX 'dd/mm/yyyy'), '0977164279', 'KTX khu A', TO_DATE('21/02/2022', khu A', TO_DATE('21/02/2022', 'dd/mm/yyyy'),5000000, 'Cashier', 'dd/mm/yyyy'),5000000, 'Cashier', 'CN1'); 'CN2'); INSERT INTO CN1.EMPLOYEE INSERT INTO CN2.EMPLOYEE VALUES VALUES (CN1.EMP_ID_SEQUENCE.EMP_ID_SEQUENCE.nextval, 'Ngo Thi', 'Anh','Female', 'Ngo Thi', 'Bap','Female', TO_DATE('25/08/2002', TO_DATE('25/08/2002', 'dd/mm/yyyy'), '0356315873', '731 'dd/mm/yyyy'), '0356315873', '731 Tran Hung Dao, Q5, TpHCM', Tran Hung Dao, Q5, TpHCM', TO_DATE('21/02/2022', TO_DATE('21/02/2022', 'dd/mm/yyyy'), 5000000, 'Cashier', 'dd/mm/yyyy'), 5000000, 'Cashier', 'CN1'); 'CN2'); INSERT INTO CN1.EMPLOYEE INSERT INTO CN2.EMPLOYEE VALUES VALUES (CN1.EMP_ID_SEQUENCE.EMP_ID_SEQUENCE.nextval, 'Nguyen Anh', 'Viet','Male', 'Nguyen Anh', 'Kiet','Male', TO_DATE('05/07/2002', TO_DATE('05/07/2002', 'dd/mm/yyyy'), '0585784600', '45 'dd/mm/yyyy'), '0585784600', '45 Nguyen Canh Chan, Q1, TPHCM', Nguyen Canh Chan, Q1, TPHCM', TO_DATE('21/02/2022', TO_DATE('21/02/2022', 'dd/mm/yyyy'), 5000000, 'dd/mm/yyyy'), 5000000, 'Storekeeper', 'CN1'); 'Storekeeper', 'CN2'); INSERT INTO CN1.EMPLOYEE INSERT INTO CN2.EMPLOYEE VALUES VALUES (CN1.EMP_ID_SEQUENCE.EMP_ID_SEQUENCE.nextval, 'Nguyen Thi Minh', 'Triet','Female', 'Nguyen Thi Minh', 'Huong','Female', TO_DATE('05/09/2002', TO_DATE('05/09/2002', Trang | 12 Báo cáo bài tập lớn 1 Cơ sở dữ liệu phân tán 'dd/mm/yyyy'), '0932342312', '50/34 'dd/mm/yyyy'), '0932342312', '50/34 Le Dai Hanh, Q10, TPHCM', Le Dai Hanh, Q10, TPHCM', TO_DATE('21/02/2022', TO_DATE('21/02/2022', 'dd/mm/yyyy'), 5000000, 'dd/mm/yyyy'), 5000000, 'Salesperson', 'CN1'); 'Salesperson', 'CN2'); INSERT INTO CN1.EMPLOYEE INSERT INTO CN2.EMPLOYEE VALUES VALUES (CN1.EMP_ID_SEQUENCE.EMP_ID_SEQUENCE.nextval, 'Tran Anh', 'Huy','Male', 'Tran Anh', 'Tuan','Male', TO_DATE('26/09/2002', TO_DATE('26/09/2002', 'dd/mm/yyyy'), '0916430073', 'KTX 'dd/mm/yyyy'), '0916430073', 'KTX khu B', TO_DATE('21/02/2022', khu B', TO_DATE('21/02/2022', 'dd/mm/yyyy'), 7000000, 'dd/mm/yyyy'), 7000000, 'Salesperson', 'CN1'); 'Salesperson', 'CN2'); INSERT INTO CN1.EMPLOYEE INSERT INTO CN2.EMPLOYEE VALUES VALUES (CN1.EMP_ID_SEQUENCE.EMP_ID_SEQUENCE.nextval, 'Phan Hong', 'Anh','Female', 'Phan Hong', 'Duc','Female', TO_DATE('20/08/2001', TO_DATE('20/08/2001', 'dd/mm/yyyy'), '0944562311', '16 Le 'dd/mm/yyyy'), '0944562311', '16 Le Van Viet, Q9, TPHCM', Van Viet, Q9, TPHCM', TO_DATE('21/02/2022', TO_DATE('21/02/2022', 'dd/mm/yyyy'), 7000000, 'Customer 'dd/mm/yyyy'), 7000000, 'Customer Service Assistant', 'CN1'); Service Assistant', 'CN2'); INSERT INTO CN1.EMPLOYEE INSERT INTO CN2.EMPLOYEE VALUES VALUES (CN1.EMP_ID_SEQUENCE.EMP_ID_SEQUENCE.nextval, 'Thai Tang', 'Duc','Male', 'Thai Tang', 'Minh','Male', TO_DATE('16/10/2002', TO_DATE('16/10/2002', 'dd/mm/yyyy'), '0931231756', 'KTX 'dd/mm/yyyy'), '0931231756', 'KTX Trang | 13 Báo cáo bài tập lớn 1 Cơ sở dữ liệu phân tán khu A', TO_DATE('21/02/2022', khu A', TO_DATE('21/02/2022', 'dd/mm/yyyy'), 5000000, 'Quality 'dd/mm/yyyy'), 5000000, 'Quality Checker', 'CN1'); Checker', 'CN2'); INSERT INTO CN1.EMPLOYEE INSERT INTO CN2.EMPLOYEE VALUES VALUES (CN1.EMP_ID_SEQUENCE.EMP_ID_SEQUENCE.nextval, 'Le Nguyen Thuy', 'Vi','Female', 'Le Nguyen Thuy', 'Lieu','Female', TO_DATE('06/06/2001', TO_DATE('06/06/2001', 'dd/mm/yyyy'), '0948965678', 'KTX 'dd/mm/yyyy'), '0948965678', 'KTX khu B', TO_DATE('21/02/2022', khu B', TO_DATE('21/02/2022', 'dd/mm/yyyy'), 5000000, 'Sanitation 'dd/mm/yyyy'), 5000000, 'Sanitation Worker', 'CN1'); Worker', 'CN2'); INSERT INTO CN1.EMPLOYEE INSERT INTO CN2.EMPLOYEE VALUES VALUES (CN1.EMP_ID_SEQUENCE.EMP_ID_SEQUENCE.nextval, 'Nguyen Thi Kim', 'Hieu','Female', 'Nguyen Thi Kim', 'Ngan','Female', TO_DATE('28/08/2002', TO_DATE('28/08/2002', 'dd/mm/yyyy'), '0931231756', 'KTX 'dd/mm/yyyy'), '0931231756', 'KTX khu B', TO_DATE('21/02/2022', khu B', TO_DATE('21/02/2022', 'dd/mm/yyyy'), 5000000, 'Security 'dd/mm/yyyy'), 5000000, 'Security Guard', 'CN1'); Guard', 'CN2'); INSERT INTO INSERT INTO CN2.CUSTOMER VALUES(CN2.CUS_ID_SEQUENC VALUES(CN1.CUS_ID_SEQ E.nextval,'Tran Minh', 'Tien', 'Male', UENCE.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Tài liệu có tiêu đề Thiết Kế Cơ Sở Dữ Liệu Phân Tán: Báo Cáo Thực Hành cung cấp cái nhìn sâu sắc về cách thiết kế và triển khai các cơ sở dữ liệu phân tán, một yếu tố quan trọng trong việc tối ưu hóa hiệu suất và khả năng mở rộng của hệ thống thông tin hiện đại. Báo cáo này không chỉ nêu rõ các nguyên tắc cơ bản mà còn trình bày các phương pháp thực hành tốt nhất, giúp người đọc hiểu rõ hơn về cách thức hoạt động của các cơ sở dữ liệu phân tán và lợi ích mà chúng mang lại cho doanh nghiệp.

Để mở rộng kiến thức của bạn về lĩnh vực này, bạn có thể tham khảo thêm tài liệu Hệ thống mạng thông minh và giải pháp phát triển lên osp, nơi cung cấp các giải pháp mạng thông minh trong ngành hàng không, hoặc tìm hiểu về Phát triển hệ thống thông tin doanh nghiệp dựa trên kiến trúc hướng dịch vụ, tài liệu này sẽ giúp bạn nắm bắt cách thức phát triển hệ thống thông tin doanh nghiệp hiệu quả hơn. Những tài liệu này sẽ giúp bạn có cái nhìn toàn diện hơn về các khía cạnh khác nhau của thiết kế và phát triển hệ thống thông tin.