Phần 4 Cơ sở dữ liệu phân tán trong bài toán WSC - Pdf 63

Phần IV
Cơ Sở Dữ Liệu Phân Tán trong bài toán WSc
(water supply company )
i. Giới thiệu khái quát về hệ thống và các vấn đề liên quan đến hệ thống.
Dữ liệu trong bài toán WSC đợc phân tán theo phơng pháp Partition. Lý do về sự lựa chọn mô hình này
đã đợc giải thích cụ thể trong phần giới thiệu về các mô hình phân tán dữ liệu. Những nội dung đợc trình bày
sau đây sẽ chứng minh thêm tính đúng đắn của sự lựa chọn ấy.
1. Mô hình tổ chức và mô hình mạng của Công ty WSC.
WSC là cơ quan đã có nhiều năm ứng dụng máy tính trong sản xuất và quản lý kinh doanh. Từ tr ớc năm
1997 WSC đã sử dụng hệ máy tính IBM sau đó là các chơng trình viết bằng FoxBase và FoxPro để quản lý và
tính hoá đơn tiền nớc.Đến năm 1997 WSC đợc trang bị một hệ thống mạng máy tính hiện đại đòi hỏi một hệ
thống phần mềm mới, ứng dụng công nghệ hiện dại, có khả năng kết nối diện rộng, quản lý l ợng khách hàng
lớn và đáp ứng yêu cầu nghiệp vụ là:
- Đáp ứng 142 yêu cầu do các chuyên gia t vấn nớc ngoài đa ra bao trùm lên các lĩnh vực chính :
1. Khách hàng.
2. Yêu cầu và khiếu nại của khách hàng.
3. Đồng hồ vật t, thiết bị và các vị trí lắp đặt đồng hồ.
4. Biểu giá tiền nớc và tiền phụ thu.
5. Chỉ số đồng hồ và xử lý hoá đơn tiền nớc.
6. Thu tiền.
7. Thởng phạt khách hàng.
8. Phiếu công tác, thi công và nhân sự.
- Đáp ứng yêu cầu nghiệp vụ hiện tại.
a. Tổ chức công ty:
Thể hiện qua cơ đồ hình 1.IV:

Các công nghệ sử dụng trong CSDL phân tán
Công ty cấp nước
WSC
Hoá đơn
Chi nhánh

Chợ Lớn
Gia Định
Thủ Đức
Nhà máy nước
Các phòng, ban
Account
Server
Billing
Server
File
Server
Developer
Server2. Phạm vi của hệ thống.
Hệ thống đáp ứng 142 yêu cầu do chuyên gia t vấn nớc ngoài đa ra và các yêu cầu nghiệp vụ hiện tại của
WSC.
Hệ đợc chia thành 4 phân hệ chính:
- Hệ quản lý khách hàng.
- Hệ xử lý hoá đơn và thu tiền.
- Hệ tổng hợp và phân tích thông tin.
- Hệ quản trị.
Bao gồm hơn 120 module chơng trình, 70 module làm báo cáo, 30 database triggers, 105 thực thể, 83
thủ tục và hàm. Số bản ghi hệ thống phải lu khoảng 35 000 000 bản ghi.
II. Mô hình phân tán dữ liệu tại WSC.
1. Phân tán chức năng hoạt động giữa trung tâm và chi nhánh tại WSC.
- Trung tâm có các chức năng sau:
+ Quản lý các danh mục của hệ thống.
+ Các thông số hệ thống.

đợc quản lý bởi một chi nhánh. Tơng ứng với mỗi phần dữ liệu đó sẽ có một bản sao tại trung tâm, các bản
sao của các phần riêng biệt của cùng một bảng tại trung tâm sẽ đợc gộp lại thành một đối tợng duy nhất (bản
sao tổng hợp của các chi nhánh) để phục vụ cho quá trình xử lý dữ liệu.
4. Các chú ý khi tạo các bảng tại các chi nhánh trong cấu hình CSDL phân tán.
- Đảm bảo các ràng buộc: Các ràng buộc của các bảng tại các chi nhánh (tức là tại một CSDL) đơng
nhiên phải đợc đảm bảo. Ngoài ra các ràng buộc này phải đợc đảm bảo trên toàn bộ hệ thống dữ liệu (bao
gồm nhiều CSDL). Oracle Server tại một CSDL không thể đảm bảo đợc điều này, do đó ta phải thiết kế một
cách hợp lý để đảm bảo đợc điều này.
- Phải xác định đợc nơi phát sinh dữ liệu cho một bảng nhất định (tại các chi nhánh, tại trung tâm hoặc
cả hai).
Trang 4 4
Các công nghệ sử dụng trong CSDL phân tán
- Tên của các bảng: Các module tại các chi nhánh khi thực hiện thao tác lên CSDL có một yêu cầu là tên
các đối tợng đợc sử dụng phải ổn định mặc dù đối tợng đó có thể có kiểu khác nhau (table, view, synonym,
snapshot...). Trong khi đó các bảng đợc tạo ra cha chắc đã là các đối tợng truy nhập trực tiếp của các module,
mà nó phải kết hợp với các đối tợng mới, do đó các bảng có thể phải đổi tên để cho các đối tợng có thể sử
dụng tên đó. Nh vậy các module mới có thể truy nhập trực tiếp các đối tợng.
Để đảm bảo cho mô hình dữ liệu phân tán đáp ứng đợc các chú ý trên ta phải thực hiện việc phân tích
từng bảng trong hệ thống để có đợc những thông tin cần thiết trong bảng sau:
Table name Owner Constraints
Sequences

Chú thích:
- Table name: Là tên bảng theo thiết kế hiện tại.
- Owner: Xác định xem quyền làm chủ bảng sẽ là trung tâm hay chi nhánh. Giá trị cho cột này có thể là
một trong hai giá trị 'Trung tâm' hoặc 'Chi nhánh'. Quyền làm chủ ở đây có nghĩa là các thao tác Update lên
bảng sẽ do phía nào thực hiện. Nếu một bảng nào đó có thể Update đợc từ cả trung tâm và chi nhánh thì mô
hình dữ liệu phân tán ở trên sẽ không áp dụng đợc.
- Constrains: Liệt kê tất cả các ràng buộc trên bảng theo thứ tự và khuôn dạng sau:
Primary key: PK_NAME(column1,column2,...)

- Nếu một bảng có nguồn gốc từ chi nhánh thì cách đặt tên nó nh sau:
Tại các chi nhánh có các bảng cùng tên.
Tại trung tâm: Các Snapshot có tên tạo bởi tên bảng ghép với dấu $ và mã chi nhánh, một View có
cùng tên với bảng tổng hợp dữ liệu từ các Snapshot.
Ví dụ :
Bảng ABC có nguồn gốc từ các chi nhánh do đó nó có cách tổ chức nh sau:
Tại các chi nhánh Sài Gòn, Chợ Lớn, Thủ Đức, Gia Định có các bảng tên là ABC. Tại trung tâm có 4
snapshot là ABC$SG, ABC$CL, ABC$TD, ABC$GD lấy dữ liệu từ các bảng ở các chi nhánh theo câu lệnh
sau:
CREATE SNAPSHOT ABC$SG AS
SELECT * FROM ABC@saigon;
và một View tổng hợp dữ liệu từ 4 chi nhánh:
CREATE VIEW ABC AS
SELECT * FROM ABC$SG
UNION
SELECT * FROM ABC$CL
UNION
SELECT * FROM ABC$TD
UNION
SELECT * FROM ABC$GD ;
- Nếu một bảng có nguồn gốc từ trung tâm và dữ liệu của nó không phụ thuộc vào từng chi nhánh thì nó
có cách đặt tên nh sau:
Tại trung tâm có một bảng nh tên đã định.
Tại mỗi chi nhánh có một Snapshot có cùng tên.
Ví dụ: Bảng EXCHANGES có nguồn gốc từ trung tâm.
Tại trung tâm có một bảng có tên là EXCHANGES.
Tại mỗi chi nhánh có một Snapshot có tên EXCHANGES và đợc tạo ra nh sau:
CREATE SNAPSHOT EXCHANGES
AS SELECT * FROM EXCHANGES@wsc ;
- Nếu bảng có nguồn gốc trung tâm nhng bản thân dữ liệu lại phụ thuộc từng chi nhánh thì nó cùng có


Nhờ tải bản gốc
Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status