Tải bản đầy đủ (.doc) (69 trang)

Thiết kế cơ sở dữ liệu phân tán để tổ chức khai thác thông tin về giao thông

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.14 MB, 69 trang )

-i-

Lời cảm ơn
Để hoàn thành chương trình cao học và viết luận văn này, em đã nhận được sự
giúp đỡ và đóng góp nhiệt tình của các thầy cô trường Đại học Công nghệ Thông
tin và Truyền Thông, Đại học Thái Nguyên.
Trước hết, em xin chân thành cảm ơn các thầy cô trong bộ phận Đào tạo sau
đại học, Đại học Công nghệ thông tin và Truyền thông, trường Đại học Thái
Nguyên đã tận tình giảng dạy, trang bị cho em những kiến thức quý báu trong suốt
những năm học qua. Em xin gửi lời biết ơn sâu sắc tới PGS. TS Đỗ Trung Tuấn đã
dành rất nhiều thời gian và tâm huyết hướng dẫn, chỉ bảo em trong suốt quá trình
thực hiện đề tài.
Xin chân thành cảm ơn gia đình, bạn bè đã nhiệt tình ủng hộ, giúp đỡ, động
viên cả về vật chất lẫn tinh thần trong thời gian học tập và nghiên cứu.
Trong quá trình thực hiện luận văn, mặc dù đã rất cố gắng nhưng cũng không
tránh khỏi những thiếu sót. Kính mong nhận được sự cảm thông và tận tình chỉ bảo
của các thầy cô và các bạn.


- ii -

Lời cam đoan
Luận văn thạc sỹ này tôi nghiên cứu và thực hiện dưới sự hướng dẫn của
PGS.TS Đỗ Trung Tuấn. Để hoàn thành bản luận văn này, ngoài các tài liệu đã liệt
kê, tôi cam đoan không sao chép các công trình hoặc đồ án tốt nghiệp của người khác.
Tác giả

NGUYỄN THỊ LAN ANH


- iii -



MỤC LỤC
Lời cảm ơn..............................................................................................................................i
Lời cảm ơn..............................................................................................................................i
Lời cam đoan..........................................................................................................................ii
Lời cam đoan..........................................................................................................................ii
MỤC LỤC.............................................................................................................................iii
MỤC LỤC.............................................................................................................................iii
Danh mục hình vẽ...................................................................................................................v
Danh mục hình vẽ...................................................................................................................v
Danh mục các từ viết tắt........................................................................................................vi
Danh mục các từ viết tắt........................................................................................................vi
MỞ ĐẦU................................................................................................................................1
MỞ ĐẦU................................................................................................................................1
CHƯƠNG 1............................................................................................................................3
CHƯƠNG 1............................................................................................................................3
CƠ SỞ DỮ LIỆU PHÂN TÁN..............................................................................................3
CƠ SỞ DỮ LIỆU PHÂN TÁN..............................................................................................3
1.1. Cơ sở dữ liệu tập trung...............................................................................................3
1.2. Cơ sở dữ liệu phân tán................................................................................................3
1.2.1. Khái niệm cơ sở dữ liệu phân tán.........................................................................3
1.2.3. Các hình thức tổ chức hệ thống phân tán.............................................................4
1.2.4. Ưu nhược điểm của hệ phân tán...........................................................................6
1.2.5. Kiến trúc cơ bản của CSDL phân tán...................................................................6
1.3. So sánh cơ sở dữ liệu phân tán và cơ sở dữ liệu tập trung.........................................9
1.4. Sự cần thiết của cơ sở dữ liệu phân tán....................................................................12
1.5. Kết luận chương.......................................................................................................14
CHƯƠNG 2..........................................................................................................................15
CHƯƠNG 2..........................................................................................................................15
THIẾT KẾ CƠ SỞ DỮ LIỆU PHÂN TÁN.........................................................................15

THIẾT KẾ CƠ SỞ DỮ LIỆU PHÂN TÁN.........................................................................15
2.1. Các vấn đề về phân mảnh dữ liệu.............................................................................15
2.1.1. Lý do phân mảnh................................................................................................15
2.1.2. Các kiểu phân mảnh...........................................................................................16
2.1.3. Mức độ phân mảnh.............................................................................................16
2.1.4. Các quy tắc phân mảnh......................................................................................17
2.1.5. Các kiểu cấp phát...............................................................................................17
2.1.6. Các yêu cầu thông tin.........................................................................................18
2.2. Các phương pháp phân mảnh...................................................................................19
2.2.1. Phân mảnh dữ liệu ngang...................................................................................19
2.2.2. Phân mảnh dọc...................................................................................................24
2.2.3. Phân mảnh hỗn hợp............................................................................................27
2.3. Cấp phát....................................................................................................................27
2.3.1. Bài toán cấp phát................................................................................................27
2.3.2. Yêu cầu về thông tin...........................................................................................28
2.3.3. Mô hình cấp phát................................................................................................29


- iv -

2.4. Truy vấn trong cơ sở dữ liệu phân tán......................................................................31
2.4.1. Mục đích của xử lý truy vấn...............................................................................31
2.4.2. Các tầng của quá trình xử lý truy vấn................................................................32
2.5. Kĩ thuật thực hiện phép nối và phép hợp của đại số quan hệ...................................33
2.5.1. Phép chọn...........................................................................................................35
2.5.2. Phép nối..............................................................................................................36
2.5.3. Phân mảnh..........................................................................................................38
2.7. Kết luận chương.......................................................................................................43
CHƯƠNG 3..........................................................................................................................44
CHƯƠNG 3..........................................................................................................................44

THIẾT KẾ CƠ SỞ DỮ LIỆU VỀ CÁC CUNG ĐƯỜNG THÁI NGUYÊN......................44
THIẾT KẾ CƠ SỞ DỮ LIỆU VỀ CÁC CUNG ĐƯỜNG THÁI NGUYÊN......................44
3.1. Phát biểu bài toán.....................................................................................................44
3.2. Thiết kế cơ sở dữ liệu phân tán các cung đường......................................................45
3.2.1. Thiết kế lược đồ quan hệ tổng thể......................................................................45
3.2.2. Thiết kế phân mảnh............................................................................................52
3.2.3. Thiết kế định vị...................................................................................................54
3.2.4. Thiết kế sơ đồ ánh xạ địa phương......................................................................54
3.2.5. Thiết kế hệ thống mạng cho hệ thống................................................................55
3.3. Cài đặt ứng dụng......................................................................................................56
3.3.1. Cấu hình các Server............................................................................................56
3.3.2. Môi trường hoạt động.........................................................................................57
3.3.3. Công nghệ sử dụng.............................................................................................57
3.4. Giới thiệu chương trình............................................................................................59
3.4.1. Mục tiêu mà hệ thống đạt được..........................................................................59
3.4.2.Cấu trúc chương trình..........................................................................................59
3.4.3. Một số giao diện chính.......................................................................................60
3.5. Kết luận chương.......................................................................................................61
KẾT LUẬN..........................................................................................................................62
KẾT LUẬN..........................................................................................................................62
Kết quả đạt được.............................................................................................................62
Hướng nghiên cứu tiếp....................................................................................................62
Tài liệu tham khảo................................................................................................................63
Tài liệu tham khảo................................................................................................................63


-v-

Danh mục hình vẽ
Hình 1.1. Mô hình CSDL phân tán........................................................................................4

Hình 1.2. Mô hình Peer-to-peer..............................................................................................4
Hình 1.3. Mô hình File Server................................................................................................5
Hình 1.4. Mô hình Client Server............................................................................................5
Hình 1.5. Kiến trúc cơ bản của CSDL phân tán.....................................................................6
Hình 1.6. Các phân mảnh và mô hình vật lý cho một quan hệ toàn cục................................8
Hình 2.1 So sánh các phương pháp nhân bản......................................................................18
Hình 2.1. Lược đồ phân tầng tổng quát để xử lý truy vấn phân tán.....................................33
Hình 2.2. Rút gọn phân mảnh ngang với phép chọn............................................................36
Hình 2.3a. Cây đại số quan hệ truy vấn gốc.........................................................................37
Hình 2.3b. Rút gọn phân mảnh ngang với phép kết nối.......................................................38
Hình 2.5. Rút gọn cho phân mảnh gián tiếp.........................................................................42
Hình 2.6. Rút gọn phân mảnh hỗn hợp................................................................................43
Hình 3.1. Tỉnh Thái Nguyên................................................................................................44
Hình 3.2. Cần thiết an toàn giao thông.................................................................................45
Bảng 1. Cấu trúc bảng HUYEN...........................................................................................46
Bảng 2. Cấu trúc bảng DUONG...........................................................................................47
Bảng 3. Cấu trúc bảng LOAIMADUONG...........................................................................47
Bảng 4. Cấu trúc bảng KIEUDUONG.................................................................................48
Bảng 5. Cấu trúc bảng TOCHUCGIAOTHONG.................................................................48
Bảng 6. Cấu trúc bảng MUCDOHUHONG.........................................................................49
Bảng 7. Cấu trúc bảng LOAIBAOTRI.................................................................................49
Bảng 8. Cấu trúc bảng DONVITHICONG..........................................................................50
Bảng 9. Cấu trúc bảng THONGTINBAOTRI......................................................................51
Hình 3.3. Sơ đồ về mối quan hệ...........................................................................................51
Hình 3.3. Sơ đồ định vị của các mảnh tại các vị trí..............................................................54
Hình 3.3. Các mảnh và hình ảnh vật lý của một quan hệ tổng thể.......................................55
Hình 3.3. Mô hình mạng của hệ thống quản lí các cung đường...........................................56
Hình 3.7. Giao diện form quản lý thông tin cung đường.....................................................60
Hình 3.8. Giao diện form quản lý thông tin bảo trì..............................................................61
Hình 3.9. Giao diện form tìm kiếm cung đường..................................................................61



- vi -

Danh mục các từ viết tắt
DBMS

Database Management System

ADSL
C#

Đường truyền bất đối xứng Asymmetric
Digital Subscriber Line
Ngôn ngữ lập trình

CPU

Central Processing Unit

CSDL

Cơ sở dữ liệu

CSDLPT

Cơ sở dữ liệu phân tán

DB2


Hệ quản trị cơ sở dữ liệu DB2 của IBM

DHM
ER

Highway Development and Management
System
Entity-Relationship

ETL

Extract Transform Load

IMS

Information Management System

LAN

Local Area Network

Mainframe

Máy tính mainframe

MDX

Multidimensional eXpressions

MSIL


MicroSoft Intermediate Language

MSSQL

Microsoft SQL Server

NT

Network Technology

ORACLE

Hệ quản trị cơ sở dữ liệu ORACLE

Partition

Phân đoạn

PC

Máy vi tính, máy cá nhân

SQL

Structured Query Language

XML

Extensible Markup Language



-1-

MỞ ĐẦU
Trong hệ thống kết cấu hạ tầng kinh tế - xã hội, hạ tầng giao thông vận tải
đóng vai trò rất quan trọng trong việc tạo điều kiện đi lại thuận lợi cho nhân dân,
giao thương hàng hóa, thúc đẩy tăng trưởng kinh tế, giảm nhẹ thiên tai, phòng thủ
quốc phòng, cải thiện đời sống cho nhân dân, do đó phải ưu tiên phát triển. Nhiều
cung đường liên tỉnh, liên huyện, liên xã được bảo trì, nâng cấp, nhiều cung đường
mới được mở rộng. Vì vậy khối lượng thông tin về giao thông ngày càng lớn, phong
phú và đa dạng, cần phải quản lý thông tin này một cách khoa học.
Hiện tại, Sở Giao thông Thái Nguyên quản lý các thông tin này theo cách thức
sau: các đơn vị quản lý giao thông tại các cung đường thường xuyên có báo cáo về
các Sở giao thông như: lưu lượng tham gia giao thông, số vụ tai nạn xảy ra, chất
lượng các cung đường, công tác bảo dưỡng duy tu, giám sát cung đường,... Với và
cách thức tổ chức đó sẽ tốn thời gian và dữ liệu có thể không đồng bộ.
Để khắc phục những nhược điểm trên cần áp dụng công nghệ thông tin vào
trong quá trình quản lý. Vì vậy tôi đã chọn đề tài “Thiết kế cơ sở dữ liệu phân tán
để tổ chức khai thác thông tin về giao thông” làm đề tài luận văn tốt nghiệp của
mình.
Đối tượng và phạm vi nghiên cứu.
• Đối tượng nghiên cứu của đề tài gồm: Nghiên cứu về CSDL phân tán,
thiết kế CSDL phân tán như: các vấn đề về thiết kế phân tán, các
phương pháp thiết kế phân tán, phương pháp phân mảnh, cấp phát cho
các mảnh, … tìm hiểu Các thông tin về giao thông. Ứng dụng lý thuyết
thiết kế CSDL phân tán vào hệ thống. Ứng dụng khả năng quản trị
CSDL phân tán của SQL Server và Visual Studio vào hệ thống.
• Trong phạm vi thực hiện của đề tài sẽ phân tích, thiết kế cơ sở dữ liệu
các cung đường trên địa bàn tỉnh Thái Nguyên.



-2-

Hướng nghiên cứu của đề tài : Nghiên cứu và ứng dụng CSDL phân tán, tìm
hiểu, thu thập các thông tin về giao thông. Từ những thông tin thu thập được phân
tích, thiết kế CSDL phân tán để quản lý các thông tin đó
Phương pháp nghiên cứu : Để thực hiện được mục tiêu và nhiệm vụ đặt ra
trong đề tài, tôi áp dụng hai phương pháp nghiên cứu đó là: phương pháp nghiên
cứu lý thuyết và phương pháp nghiên cứu thực nghiệm. Đối với phương pháp
nghiên cứu lý thuyết: tôi tiến hành nghiên cứu và thu thập các tài liệu liên quan đến
CSDL phân tán, thiết kế CSDL phân tán, các công cụ có thể triển khai quản trị
CSDL phân tán. Tiếp đến tôi thu thập các tài liệu liên quan đến thông tin về hệ
thống các cung đường. Đối với phương pháp thực nghiệm: tôi phân tích yêu cầu
thực tế của hệ thống và để xác định được các chức năng, quy trình hoạt động của hệ
thống. Tiếp theo vận dụng cơ sở lý thuyết liên quan như CSDL phân tán, thiết kế
CSDL phân tán vào thiết kế hệ thống, sử dụng công cụ SQL Server và Visual
Studio để quản trị CSDL phân tán và công cụ thiết kế giao diện và cuối cùng đánh
giá kết quả đạt được.
Ý nghĩa khoa học của đề tài : Việc ứng dụng CSDL phân tán để quản lý dữ
liệu về các cung đường hiện nay là vấn đề quan trọng và cần thiết cho những người
làm công tác quản lý giao thông vận tải có cái nhìn chính xác, và đưa ra quyết định
kịp thời.
Bố cục của luận văn
Luận văn chia thành các chương:
1. Chương 1: Tổng quan về cơ sở dữ liệu phân tán
2. Chương 2: Thiết kế cơ sở dữ liệu phân tán
3. Chương 3: Thiết kế, xây dựng cơ sở dữ liệu các cung đường tại Thái
Nguyên
Cuối luận văn là phần kết luận và tài liệu tham khảo.



-3-

CHƯƠNG 1.
CƠ SỞ DỮ LIỆU PHÂN TÁN
1.1. Cơ sở dữ liệu tập trung
Trong mô hình CSDL tập trung, các thành phần xử lý ứng dụng, phần mềm cơ
sở dữ liệu và bản thân CSDL đều ở trên một bộ xử lý.
Ví dụ người dùng máy tính cá nhân có thể chạy các chương trình ứng dụng có
sử dụng phần mềm cơ sở dữ liệu Oracle để truy nhập tới cơ sở dữ liệu nằm trên đĩa
cứng của máy tính cá nhân đó. Từ khi các thành phần ứng dụng, phần mềm cơ sở
dữ liệu và bản thân cơ sở dữ liệu cùng nằm trên một máy tính thì ứng dụng đã thích
hợp với mô hình tập trung.
Hầu hết công việc xử lý luồng thông tin chính được thực hiện bởi nhiều tổ
chức mà vẫn phù hợp với mô hình tập trung. Ví dụ một bộ xử lý mainframe chạy
phần mềm cơ sở dữ liệu IMS hoặc DB2 của IBM có thể cung cấp cho các trạm làm
việc ở các vị trí phân tán sự truy nhập nhanh chóng tới cơ sở dữ liệu trung tâm. Tuy
nhiên trong rất nhiều hệ thống như vậy, cả 3 thành phần của ứng dụng cơ sở dữ liệu
đều thực hiện trên cùng một máy mainframe do vậy cấu hình này cũng thích hợp
với mô hình tập trung.

1.2. Cơ sở dữ liệu phân tán
1.2.1. Khái niệm cơ sở dữ liệu phân tán
Một CSDL phân tán là một tập hợp nhiều CSDL có liên đới logic và được
phân bố trên một mạng máy tính.
• Tính chất phân tán: Toàn bộ dữ liệu của CSDL phân tán không được
cư trú ở một nơi mà cư trú trên nhiều trạm thuộc mạng máy tính, điều
này giúp chúng ta phân biệt CSDL phân tán với CSDL tập trung đơn lẻ.
• Tương quan logic: Toàn bộ dữ liệu của CSDL phân tán có một số các

thuộc tính ràng buộc chúng với nhau, điều này giúp chúng ta có thể


-4-

phân biệt một CSDL phân tán với một tập hợp CSDL cục bộ hoặc các
tệp cư trú tại các vị trí khác nhau trong một mạng máy tính [03].

Hình 1.1. Mô hình CSDL phân tán

Trong hệ thống cơ sở dữ liệu phân tán gồm nhiều trạm, mỗi trạm có thể khai
thác các giao tác truy nhập dữ liệu trên nhiều trạm khác.

1.2.3. Các hình thức tổ chức hệ thống phân tán
a)Mô hình Peer-to-peer
Các máy tính cá nhân và máy trạm có thể được sử dụng như một hệ thống độc
lập trợ giúp các ứng dụng địa phương. Mỗi thành viên trong mạng có vai trò ngang
nhau, tự quản lý tài nguyên của chính mình và chia sẻ tài nguyên cho các máy tính
khác trên mạng. Mỗi một máy tính trên mạng vừa đóng vai trò máy chủ (Server),
vừa đóng vai trò là máy khách (Client).
Đây là mô hình mạng đơn giản, phù hợp với những hệ thống mạng nhỏ không
có yêu cầu cao về bảo mật.

Hình 1.2. Mô hình Peer-to-peer


-5-

b) Mô hình File Server
Máy chủ tệp một số máy dịch vụ tệp được gán trực tiếp vào mạng LAN, máy

chủ tệp là một thiết bị quản lý các hoạt động tệp và phục vụ các máy tính cá nhân
được kết nối trong mạng LAN. Mỗi máy cá nhân được phân chia một dung lượng
cố định trên ổ cứng của máy chủ tệp, chương trình ở các máy tính cá nhân có thể
tham chiếu đến các tệp trên phần đĩa tương ứng của nó bằng một đặc tả đường dẫn.
Những hạn chế của máy chủ tệp như: dữ liệu di chuyển trên mạng quá nhiều, việc
kiểm soát dữ liệu là phi tập trung, các máy trạm phải đủ mạnh.

Hình 1.3. Mô hình File Server

c) Mô hình Client/Server
Một số máy dịch vụ tệp được gán trực tiếp vào mạng LAN: Server có chức
năng điều khiển, lưu trữ CSDL, xử lý các truy vấn và quản lý việc khai thác tài
nguyên trên mạng của các máy tính khác. Thuật ngữ client được sử dụng để chỉ
người khai thác tài nguyên mạng.

Hình 1.4. Mô hình Client Server


-6-

1.2.4. Ưu nhược điểm của hệ phân tán
-

Ưu điểm: Đáp ứng nhanh hầu hết các ứng dụng sử dụng dữ liệu tại các trạm
Tăng cường các đơn thể ứng dụng và CSDL mà không làm cản trở người sử
dụng hiện tại. Kiểm soát dữ liệu địa phương theo hướng hoàn thiện sự tích hợp
và quản trị dữ liệu từ xa Tăng cường khả năng của hệ thống liên quan đến sự dư
thừa dữ liệu.

-


Nhược điểm: Phần mềm đắt và phức tạp. Phải xử lý các thay đổi thông báo trong
mọi địa điểm. Khó kiểm soát tính toàn vẹn dữ liệu với nhiều bản sao dữ liệu được
phân bố khắp mọi nơi. Đáp ứng chậm nhu cầu của các trạm trong trường hợp các
phần mềm ứng dụng không được phân bố phù hợp với việc sử dụng chung.

1.2.5. Kiến trúc cơ bản của CSDL phân tán
Đây không là kiến trúc tường minh cho tất cả các CSDL phân tán, tuy vậy
kiến trúc này thể hiện tổ chức của bất kỳ một CSDL phân tán nào.
Sơ đồ tổng thể
Sơ đồ phân đoạn
Sơ đồ định vị

Sơ đồ ánh xạ địa phương 1

Sơ đồ ánh xạ địa phương 2

DBMS của vị trí 1

DBMS của vị trí 2

CSDL địa phương tại vị trí 1

CSDL địa phương tại vị trí 2

Hình 1.5. Kiến trúc cơ bản của CSDL phân tán

Người ta xét các khái niệm sau [2]

Các vị trí khác…



-7-

(1) Lược đồ toàn cục
Lược đồ toàn cục định nghĩa tất cả dữ liệu được chứa trong cơ sở dữ liệu phân
tán như trong cơ sở dữ liệu tập trung. Vì vậy, lược đồ toàn cục được định nghĩa
chính xác như định nghĩa lược đồ cơ sở dữ liệu tập trung. Tuy nhiên, mô hình dữ
liệu lược đồ toàn cục cần phải tương thích với việc định nghĩa các ánh xạ tới các
mức của cơ sở dữ liệu phân tán. Vì vậy mô hình dữ liệu quan hệ sẽ được sử dụng
trong kiến trúc mô hình tham chiếu cơ sở dữ liệu phân tán, định nghĩa một tập các
quan hệ toàn cục.
(2) Lược đồ phân mảnh
Mỗi quan hệ toàn cục có thể chia thành nhiều phần không chồng lặp lên nhau
được gọi là phân mảnh. Ánh xạ giữa các quan hệ toàn cục và phân mảnh được định
nghĩa là lược đồ phân mảnh. Ánh xạ này là mối quan hệ một-nhiều. Ví dụ, nhiều
phân mảnh tương ứng với một quan hệ toàn cục, nhưng chỉ một quan hệ toàn cục
tương ứng với một phân mảnh. Các phân mảnh được chỉ ra bằng tên của quan hệ
toàn cục với một chỉ số (chỉ số phân mảnh). Ví dụ, R i chỉ đến phân mảnh thứ i trong
quan hệ toàn cục R.
Các kiểu phân mảnh dữ liệu bao gồm phân mảnh ngang và phân mảnh dọc và
một kiểu phân mảnh phức tạp hơn là sự hết hợp của 2 loại trên. Trong tất cả các
kiểu phân mảnh, một phân mảnh có thể được định nghĩa bằng một biểu thức ngôn
ngữ quan hệ cho các quan hệ toàn cục như là các toán hạng và kết quả đầu ra là các
phân mảnh.
(3) Lược đồ cấp phát
Các phân mảnh là những phần logic của các quan hệ toàn cục được chứa ở
một hay nhiều trạm trong mạng. Lược đồ cấp phát xác định các phân mảnh được
chứa ở những trạm nào. Tất cả các phân mảnh tương ứng với cùng một quan hệ R
và được lưu ở dùng một trạm j tạo thành một mô hình vật lý của quan hệ toàn cục

lên trạm j. Do đó, có một ánh xạ một-một giữa một mô hình vật lý và một cặp là
một quan hệ toàn cục được định danh và một chỉ số trạm tương ứng với một mô


-8-

hình vật lý. Ký hiệu Rji tương ứng với mô hình vật lý mảnh thứ i của quan hệ R trên
trạm j.
Có thể định nghĩa một bản sao của một phân mảnh tại một trạm cho trước và
kí hiệu bằng tên Quan hệ toàn cục R và hai chỉ số. Ví dụ R 32 để chỉ bản sao của
phân mảnh R2 được chứa ở trạm 3. Hai mô hình vật lý có thể giống nhau, ví là bản
sao của nhau.
Lược đồ các trạm phụ thuộc: gồm lược đồ ánh xạ cục bộ, DBMS của các trạm
cục bộ, cơ sở dữ liệu ở trạm đó.
R1 trạm 1

R2 trạm 2

R3 trạm 3

Quan hệ toàn cục

Phân mảnh

Mô hình vật lý

Hình 1.6. Các phân mảnh và mô hình vật lý cho một quan hệ toàn cục

(4) Lược đồ ánh xạ cục bộ
Do ba mức đầu các trạm độc lập, nên chúng không phụ thuộc vào mô hình dữ

liệu của DBMS cục bộ. Ở mức thấp hơn, nó cần phải ánh xạ mô hình vật lý thành
các đối tượng được thao tác bởi các DBMS cục bộ. Ánh xạ này được gọi là lược đồ
ánh xạ cục bộ và phụ thuộc vào kiểu của DBMS cục bộ. Trong hệ thống không
đồng nhất có các kiểu khác nhau của ánh xạ cục bộ tại các trạm khác nhau. Yếu tố
quan trọng nhất để thiết kế kiến trúc này là:
• Phân mảnh và cấp phát dữ liệu;
• Quản lí dư thừa dữ liệu;


-9-

• Sự độc lập của các DBMS cục bộ;
(5) DBMS ở các trạm cục bộ độc lập
Tính năng trong suốt trong ánh xạ cục bộ cho phép xây dựng một hệ thống cơ
sở dữ liệu phân tán đồng nhất hoặc không đồng nhất. Trong hệ thống đồng nhất, các
lược đồ độc lập của một trạm được định nghĩa sử dụng cùng một mô hình như
DBMS cục bộ nhưng trong hệ thống không đồng nhất thì các lược đồ ánh xạ cục bộ
dùng để phối hợp các kiểu khác nhau của DBMS…

1.3. So sánh cơ sở dữ liệu phân tán và cơ sở dữ liệu tập trung
Cơ sở dữ liệu tập trung cùng với cơ sở dữ liệu không qua thiết kế hình thành
trước khi có cơ sở dữ liệu phân tán. Hai hình thức này phát triển trên cơ sở tự phát
và hệ thống tập trung. Như vậy hai hình thức này không đáp ứng được yêu cầu tổ
chức và công việc trên phạm vi lớn.
Cơ sở dữ liệu phân tán được thiết kế khác cơ sở dữ liệu tập trung. Do đó cần
đối sánh các đặc trưng của cơ sở dữ liêu phân tán với cơ sở dữ liệu tập trung để thấy
được lợi ích của cơ sở dữ liệu phân tán. Đặc trưng mô tả cơ sở dữ liệu tập trung là
điều khiển tập trung, độc lập dữ liệu, giảm bớt dư thừa, cơ cấu vật lý phức tạp đối
với khả năng truy cập, toàn vẹn, hồi phục, điều khiển tương tranh, biệt lập và an
toàn dữ liệu.

a) Điều khiển tập trung:
Điều khiển tập trung các nguồn thông tin của công việc hay tổ chức. Có người
quản trị đảm bảo an toàn dữ liệu. Trong cơ sở dữ liệu phân tán: không đề cập đến
vấn đề điều khiển tập trung. Người quản trị cơ sở dữ liệu chung phân quyền cho
người quản trị cơ sở dữ liệu địa phương.
b) Độc lập dữ liệu
Độc lập dữ liệu là một trong những nhân tố tác động đến cấu trúc cơ sở dữ liệu
để tổ chức dữ liệu chuyển cho chương trình ứng dụng. Tiện lợi chính của độc lập dữ
liệu là các chương trình ứng dụng không bị ảnh hưởng khi thay đổi cấu trúc vật lý


- 10 -

của dữ liệu. Trong cơ sở dữ liệu phân tán, độc lập dữ liệu có tầm quan trọng cũng
như trong cơ sở dữ liệu truyền thống. Khái niệm cơ sở dữ liệu trong suốt mô tả hoạt
động chương trình trên cơ sở dữ liệu phân tán được viết như làm việc trên cơ sở dữ
liệu tập trung. Hay nói cách khác tính đúng đắn của chương trình không bị ảnh
hưởng bởi việc di chuyển dữ liệu từ nơi này sang nơi khác trong mạng máy tính.
Tuy nhiên tốc độ làm việc bị ảnh hưởng do có thời gian di chuyển dữ liệu [03].
c) Giảm dư thừa dữ liệu
Trong CSDL tập trung, tính dư thừa hạn chế được càng nhiều càng tốt vì:
Dữ liệu không đồng nhất khi có vài bản sao của cùng cơ sở dữ liệu logic; để
tránh được nhược điểm này giải pháp là chỉ có một bản sao duy nhất.
Giảm không gian lưu trữ. Giảm dư thừa có nghĩa là cho phép nhiều ứng dụng
cùng truy cập đến một cơ sở dữ liệu mà không cần đến nhiều bản sao ở những nơi
chương trình ứng dụng cần.
Trong cơ sở dữ liệu truyền thống tính dư thừa dữ liệu cũng cần quan tâm vì:
• Tính cục bộ của chương trình ứng dụng sẽ tăng nếu dữ liệu đặt ở mọi
nơi mà chương trình ứng dụng cần.
• Khả năng sẵn sàng của hệ thống cao bởi vì khi có lỗi ở một nơi nào đó

trong hệ thống thì không cản trở hoạt động của chương trình ứng dụng.
Nói chung, nguyên nhân đối lập với tính dư thừa đưa ra trong môi trường truyền
thống vẫn còn đúng cho hệ thống phân tán và vì vậy công việc định giá mức độ tốt
của tính dư thừa đòi hỏi định giá lại công việc lựa chọn mức độ dư thừa dữ liệu.
Cơ sở dữ liệu phân tán khắc phục được hai nhược điểm này vì dữ liệu được
chia ra thành nhiều phần nhỏ và chỉ có một bản sao logic tổng thể duy nhất để tiện
cho việc truy cập dữ liệu.


- 11 -

d) Cấu trúc vật lý và khả năng truy cập
Người sử dụng truy cập đến cơ sở dữ liệu tập trung phải thông qua cấu trúc
truy cập phức tạp: định vị cơ sở dữ liệu, thiết lập đường truyền ...
Trong cơ sở dữ liệu phân tán, cấu trúc truy cập phức tạp không phải là công cụ
chính để truy cập hiệu quả đến cơ sở dữ liệu. Hiệu quả có nghĩa là thời gian tìm
kiếm và chuyển dữ liệu nhỏ nhất, chi phí truyền thông thấp nhất.
Mỗi cách thức truy cập cơ sở dữ liệu phân tán viết bởi người lập trình hoặc tạo
ra bởi một bộ tối ưu. Công việc viết ra một cách thức truy cập cơ sở dữ liệu phân
tán cũng giống như viết chương trình duyệt trong cơ sở dữ liệu tập trung. Công việc
mà chương trình duyệt này làm là xác định xem có thể truy cập đến được bao nhiêu
cơ sở dữ liệu.
e) Tính toàn vẹn, hồi phục và điều khiển tương tranh
Mặc dù trong cơ sở dữ liệu, tính toàn vẹn, hồi phục và điều khiển đồng thời
liên quan nhiều vấn đề liên quan lẫn nhau. Mở rộng hơn vấn đề này là việc cung cấp
các giao tác. Giao tác là đơn vị cơ bản của việc thực hiện: giao tác cụ thể là bó công
việc được thực hiện toàn bộ hoặc không được thực hiện.
Trong cơ sở dữ liệu phân tán, vấn đề điều khiển giao tác tự trị có ý nghĩa quan
trọng: hệ thống điều phối phải chuyển đổi các quỹ thời gian cho các giao tác liên
tiếp. Như vậy giao tác tự trị là phương tiện đạt được sự toàn vẹn trong cơ sở dữ liệu.

Có hai mối nguy hiểm của giao tác tự trị là lỗi và tương tranh.
1. Thứ nhất, trong cơ sở dữ liệu phân tán với cấp độ tự trị cao ở mỗi điểm,
người có dữ liệu địa phương sẽ cảm thấy an toàn hơn vì họ có thể tự bảo vệ
dữ liệu của mình thay vì phụ thuộc vào người quản trị hệ thống tập trung.
2. Thứ hai, vấn đề an toàn thực chất với hệ thống phân tán không giống như
các hệ thống thông thường khác mà còn liên quan đến mạng truyền thông.
Như vậy trong cơ sở dữ liệu phân tán vấn đề an toàn cơ sở dữ liệu phức tạp hơn.


- 12 -

f) Tính biệt lập và an toàn: trong CSDL truyền thống, người quản trị hệ thống
có quyền điều khiển tập trung, người sử dụng có chắc chắn được phân quyền mới
truy cập vào được dữ liệu. Điểm quan trọng là trong cách tiếp cận cơ sở dữ liệu tập
trung, không cần thủ tục điều khiển chuyên biệt.
Trong CSDL phân tán, những người quản trị địa phương cũng phải giải quyết
vấn đề tương tự như người quản trị cơ sở dữ liệu truyền thống.

1.4. Sự cần thiết của cơ sở dữ liệu phân tán
a) Sự phát triển của các cơ cấu tổ chức
Cùng với sự phát triển của xã hội, nhiều cơ quan, xí nghiệp có cơ cấu tổ chức
không tập trung, hoạt động phân tán trên phạm vi rộng. Vì vậy thiết kế và cài đặt cơ
sở dữ liệu phân tán là phù hợp, đáp ứng mọi nhu cầu truy cập và khai thác dữ liệu.
Cùng với sự phát triển của công nghệ viễn thông, tin học, động cơ thúc đẩy kinh tế,
việc tổ chức các trung tâm máy tính lớn và tập trung trở thành vấn đề cần nghiên cứu.
Cơ cấu tổ chức và vấn đề kinh tế là một trong những nguyên nhân quan trọng
nhất của sự phát triển cơ sở dữ liệu phân tán.
b) Giảm chi phí truyền thông
Trong thực tế, sử dụng một số ứng dụng mang tính địa phương sẽ làm giảm
chi phí truyền thông. Bởi vậy, việc tối ưu hoá tính địa phương của các ứng dụng là

một trong những mục tiêu chính của việc thiết kế và cài đặt một CSDL phân tán.
c) Hiệu quả công việc
Sự tồn tại một số hệ thống xử lý điạ phương đạt được thông quan việc xử lý
song song. Vấn đề này có thể thích hợp với mọi hệ đa xử lý. CSDL phân tán có
thuận lợi trong phân tích dữ liệu phản ánh điều kiện phụ thuộc của các ứng dụng,
cực đại hoá tính địa phương của ứng dụng. Theo cách này tác động qua lại giữa các
bộ xử lý được làm cực tiểu. Công việc được phân chia giữa các bộ xử lý khác nhau
và tránh được các tắc nghẽn thông tin trên mạng truyền thông hoặc các dịch vụ


- 13 -

chung của toàn hệ thống. Sự phân tán dữ liệu phản ánh hiệu quả làm tăng tính địa
phương của các ứng dụng.
d) Độ tin cậy và tính sẵn sàng
Cách tiếp cận CSDL phân tán, cho phép truy nhập độ tin cậy và tính sẵn sàng
cao hơn. Tuy nhiên, để đạt được mục đích đó là vấn đề không đơn giản đòi hỏi kỹ
thuật phức tạp. Những lỗi xuất hiện trong một CSDL phân tán có thể xảy ra nhiều
hơn vì số các thành phần cấu thành lớn hơn, nhưng ảnh hưởng của lỗi chỉ ảnh
hưởng tới các ứng dụng sử dụng các trạm lỗi. Sự hỏng hóc của toàn hệ thống hiếm
khi xảy ra.
CSDL phân tán là sự tập hợp các dữ liệu thuộc cùng một hệ thống về mặt
logic nhưng phân bố trên các trạm của mạng máy tính. Công nghệ CSDL phân tán
là sự kết hợp giữa hai vấn đề phân tán và hợp nhất:
• Phân tán: phân tán dữ liệu trên các trạm của mạng;
• Hợp nhất: hợp nhất về mặt logic các dữ liệu phân tán sao cho chúng
xuất hiện với người sử dụng giống như với CSDL đơn lẻ duy nhất.
Công nghệ CSDL phân tán mới thực sự phát triển trong những năm gần đây
nhờ sự phát triển của kỹ thuật tính toán, kỹ thuật truyền thông và mạng máy tính.
Những ứng dụng được xây dựng trên CSDL phân tán đã xuất hiện nhiều trên thị

trường và từng bước chứng minh tính ưu việt của nó so với CSDL tập trung.
Tuy nhiên, hệ cơ sở dữ liệu phân tán cũng có những hạn chế như:
• Phần mềm phức tạp và kinh phí tốn kém;
• Phải xử lý các thay đổi thông báo trong mọi địa điểm;
• Khó kiểm soát tính toàn vẹn dữ liệu với nhiều bản sao dữ liệu được
phân bố khắp mọi nơi;
Nói chung, kỹ thuật thiết kế cơ sở dữ liệu phân tán phức tạp nhưng hệ cơ sở
dữ liệu phân tán cũng cần thiết cho xu hướng phát triển kinh tế hiện nay.


- 14 -

1.5. Kết luận chương
Cơ sở dữ liệu phân tán rất quan trọng vì nhiều lý do khác nhau, nó có thể được
cài đặt trên các mạng máy tính diện rộng và các mạng cục bộ nhỏ. Có hai lý do về
tổ chức và kỹ thuật đối với sự phát triển cơ sở dữ liệu phân tán đó là: Cơ sở dữ liệu
phân tán được xây dựng để khắc phục các thiếu sót của cơ sở dữ liệu tập trung và
nó phù hợp hơn trong cấu trúc phân quyền của nhiều tổ chức. Kỹ thuật cơ sở dữ liệu
phân tán được mở rộng và phát triển từ kỹ thuật của cơ sở dữ liệu truyền thống.
Trong môi trường mới này, một số vấn đề kỹ thuật đòi hỏi các giải pháp khác, và
một số giải pháp hoàn toàn mới.


- 15 -

CHƯƠNG 2.
THIẾT KẾ CƠ SỞ DỮ LIỆU PHÂN TÁN
2.1. Các vấn đề về phân mảnh dữ liệu
Phần lớn các hệ cơ sở dữ liệu phân tán được thiết kế theo hướng từ trên xuống
(TopDown). Thiết kế phân mảnh dữ liệu là công việc đầu tiên phải thực hiện. Mục

đích của việc phân mảnh dữ liệu là tạo ra các đơn vị cấp phát logic, sao cho chi phí
để thực hiện truy vấn thông tin là thấp nhất. Các bộ hoặc các thuộc tính của quan
hệ không thể được xem như một đơn vị cấp phát, vì sẽ làm cho việc cấp phát trở lên
phức tạp hơn. Thiết kế phân mảnh bằng cách nhóm một số bộ trong trường hợp
phân mảnh ngang hay nhóm các thuộc tính trong trường hợp phân mảnh dọc có
cùng đặc tính theo quan điểm cấp phát. Các mảnh hình thành bằng các phương pháp
phân mảnh tạo ra các đơn vị cấp phát dữ liệu khác nhau [2].

2.1.1. Lý do phân mảnh
Trong thiết kế CSDL phân tán, cần thiết phải thực hiện phân mảnh dữ liệu vì
những lý do sau đây:
1. Trong các hệ quản trị CSDL, các quan hệ được lưu trữ dưới dạng các bảng
hai chiều. Các thao tác đối với CSDL được thực hiện trên các bảng. Tuy
nhiên trong thực tế, các ứng dụng chỉ yêu cầu thao tác trên các tập con của
các quan hệ, là khung nhìn dữ liệu của người sử dụng. Vì vậy việc xem
tập con của quan hệ là đơn vị truy cập thông tin để phân tán dữ liệu là hợp
lý.
2. Việc phân rã một quan hệ thành nhiều mảnh, mỗi mảnh được xử lý như
một đơn vị dữ liệu, sẽ cho phép thực hiện nhiều giao dịch đồng thời. Đồng
thời việc phân mảnh các quan hệ cũng cho phép thực hiện song song một
câu vấn tin bằng cách chia nó thành một tập các câu vấn tin con hoạt tác
trên các mảnh. Vì thế việc phân mảnh sẽ làm tăng mức độ hoạt động đồng
thời và tăng lưu lượng hoạt động của hệ thống. Tuy nhiên không phải việc


- 16 -

phân mảnh chỉ có ưu điểm hoàn toàn, mà nó cũng thể hiện những hạn chế
nhất định như:
3. Nếu ứng dụng có những yêu cầu “xung đột” ngăn cản phân rã thành các

mảnh được sử dụng độc quyền.
4. Những ứng dụng có các khung nhìn được định nghĩa trên nhiều mảnh khác
nhau sẽ làm giảm hiệu suất hoạt động của hệ thống, làm tăng chi phí truy
cập dữ liệu đến các mảnh và tăng chi phí kết nối các mảnh
5. Việc kiểm soát ngữ nghĩa, đặc biệt là vấn đề kiểm tra tính toàn vẹn sẽ khó
khăn hơn

2.1.2. Các kiểu phân mảnh
Các quan hệ cơ sở dữ liệu thường được biểu diễn dưới dạng bảng. Việc phân
mảnh một quan hệ thành nhiều quan hệ con khác nhau theo các cách khác nhau, sẽ
có các cách phân mảnh tương ứng. Có hai kiểu phân mảnh tương ứng với việc chia
quan hệ theo chiều dọc và chia quan hệ theo chiều ngang .
Phân mảnh theo chiều dọc: Các quan hệ được chia theo chiều dọc. Nghĩa là
thiết lập một quan hệ mới chỉ có một số thuộc tính từ quan hệ gốc. Thực chất đây là
phép chiếu trên tập con các thuộc tính của quan hệ.

2.1.3. Mức độ phân mảnh
Phân mảnh cơ sở dữ liệu đến mức độ nào là đủ, không làm ảnh hưởng đến
hiệu năng của việc thực hiện truy vấn. Mức độ phân mảnh có thể là phân mảnh một
quan hệ chưa được phân mảnh, có thể phân mản các quan hệ đã được phân mảnh.
Có thể phân mảnh theo chiều dọc (theo từng thuộc tính) hoặc theo chiều ngang
(theo từng bộ trong quan hệ).
Một mức độ ứng phân mảnh thích hợp sao cho tránh được các hạn chế khi
phân mảnh chỉ được định nghĩa ứng với các ứng dụng sẽ chạy trên cơ sở dữ liệu.


- 17 -

2.1.4. Các quy tắc phân mảnh
Các nguyên tắc để đảm bảo cơ sở dữ liệu khi phân mảnh sẽ đảm bảo tính

không thay đổi về ngữ nghĩa. Dưới đây là ba qui tắc phải tuân thủ khi phân mảnh cơ
sở dữ liệu quan hệ.
1. Tính đầy đủ: Quan hệ R được phân rã thành các mảnh R 1, R2…Rn, thì
mỗi mục dữ liệu có trong quan hệ R sẽ được chứa trong ít nhất một mảnh R i
(i=1,..,n). Quy tắc này đảm bảo cho các mục dữ liệu trong R được ánh xạ hoàn toàn
vào các mảnh và không bị mất. Mục dữ liệu có thể hiểu là bộ trong phân mảnh
ngang và thuộc tính trong phân mảnh dọc.
2. Tính phục hồi: Nếu một quan hệ R được phân rã thành các mảnh R 1, R2,
…,Rn khi đó: R = ∇ Ri, ∀ Ri ∈ FR. Toán tử ∇ thay đổi tùy theo từng loại phân mảnh.
Khả năng phục hồi quan hệ từ các mảnh sẽ đảm bảo bảo toàn các phụ thuộc.
3. Tính tách biệt: Nếu quan hệ R được phân rã ngang thành các mảnh Ri,
i=1,..n và mục dữ liệu di nằm trong một mảnh Ri thì nó sẽ không nằm trong mảnh
Rk , (k≠j). Quy tắc này đảm bảo các mảnh phân rã rời nhau. Trong trường hợp phân
mảnh dọc, khóa chính của quan hệ phải được lập lại trong tất cả các mảnh. Vì vậy
tính tách biệt trong phân mảnh dọc được hiểu không liên quan gì đến khóa chính
của quan hệ.

2.1.5. Các kiểu cấp phát
Giả sử CSDL đã được phân mảnh, thích hợp và thoả các yêu cầu phải cấp
phát cho các vị trí trên mạng. Khi dữ liệu được cấp phát, có thể không nhân bản
hoặc có thể được nhân bản. Không nhân bản, thường được gọi là CSDL phân
hoạch, các mảnh chỉ được cấp phát trên các trạm và không có bản sao nào trên
mạng. Trong trường hợp nhân bản, hoặc toàn bộ CSDL đều có ở trên tất cả các từng
trạm (CSDL được nhân bản đầy đủ), hoặc các mảnh của CSDL được phân tán tới
các trạm bằng cách các mảnh sao được đặt trên nhiều trạm (CSDL được nhân bản
từng phần). Một số các bản sao của mảnh có thể là đầu vào cho thuật toán cấp phát
hoặc quyết định giá trị của biến được xác bởi thuật toán.


- 18 -


Nhân bản làm tăng độ tin cậy và tăng hiệu quả của các câu vấn tin chỉ đọc.
Đặc biệt có thể truy cập CSDL khi gặp sự cố. Hơn nữa các câu truy vấn đọc truy
cập đến cùng một mục dữ liệu có thể cho thực hiện song song vì các bản sao có mặt
tại nhiều vị trí. Hình 2.2 so sánh ba cách nhân bản theo một số chức năng của hệ
quản trị CSDL phân tán.
Việc cấp phát dữ liệu phải được thực hiện sao cho thỏa mãn hai yêu cầu sau:
• Chi phí nhỏ nhất
• Hiệu năng lớn nhất: Giảm thiểu thời gian đáp ứng và tăng tối đa lưu lượng
hệ thống tại mỗi vị trí.

Hình 2.1 So sánh các phương pháp nhân bản

2.1.6. Các yêu cầu thông tin
Công việc thiết kế cơ sở dữ liệu phân tán phụ thuộc rất nhiều vào các yếu tố
có là ảnh hưởng đến một thiết kế tối ưu, tổ chức logic cơ sở dữ liệu, vị trí các ứng
dụng, đặc tính truy cập của các ứng dụng đến cơ sở dữ liệu và các đặc tính của hệ
thống máy tính tại mỗi vị trí. Điều này làm cho việc diễn đạt bài toán phân tán trở
nên hết sức phức tạp. Các thông tin cần thiết cho thiết kế phân tán bao gồm:
• Thông tin cơ sở dữ liệu
• Thông tin ứng dụng


- 19 -

• Thông tin về mạng
• Thông tin về hệ thống máy tính
Yêu cầu thông tin về mạng và hệ thống máy tính chỉ được sử dụng trong các
mô hình cấp phát, không sử dụng trong các thuật toán phân mảnh dữ liệu


2.2. Các phương pháp phân mảnh
2.2.1. Phân mảnh dữ liệu ngang
Phân mảnh ngang chính là việc chia quan hệ thành nhiều các nhóm bộ. Kết
quả của quá trình phân mảnh ngang là các quan hệ con, số lượng quan hệ con phụ
thuộc vào điều kiện ràng buộc của các thuộc tính. Và các bộ trong các quan hệ con
là tách biệt nhau. Phân mảnh ngang thực chất là phép chọn quan hệ thỏa mãn một
biểu thức điều kiên cho trước. [2]
Có hai loại phương pháp phân mảnh ngang là:
1. Phân mảnh ngang nguyên thủy: Là phân mảnh ngang được thực hiện
trên các vị từ của chính quan hệ đó.
2. Phân mảnh ngang dẫn xuất: Là phân rã một quan hệ dựa trên các vị từ
của quan hệ khác.
2.2.1.4. Yêu cầu thông tin về phân mảnh ngang
a) Thông tin về CSDL có liên quan tới lược đồ khái niệm toàn cục. Trong mô
hình quan hệ, các mối quan hệ giữa các thực thể được mô tả như là những quan hệ.
Trong mô hình quan hệ thực thể (ER), các mối liên hệ giữa các đối tượng CSDL
được mô tả rõ ràng. Nhìn chung mối quan hệ giữa các đối tượng trong CSDL
thường mô tả bằng các mối quan hệ một - một, một - nhiều và mối quan hệ nhiều nhiều. Với mục đích cho thiết kế, đường nối có hướng giữa các quan hệ được sử
dụng cho việc biểu diễn bởi thao tác nối bằng.
Quan hệ tại điểm cuối của đường nối được gọi là quan hệ chủ (quan hệ đích)
và các quan hệ tại điểm đầu được gọi là các quan hệ thành viên (quan hệ nguồn).


×