Tải bản đầy đủ (.pdf) (16 trang)

DSpace at VNU: Tối ưu hóa cơ sở dữ liệu phân tán

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 (324.13 KB, 16 trang )

ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ

NGUYỄN THỊ THƠ MÂY

TỐI ƢU HÓA CƠ SỞ DỮ LIỆU PHÂN TÁN

LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN

HÀ NỘI – 2015


ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ

NGUYỄN THỊ THƠ MÂY

TỐI ƢU HÓA CƠ SỞ DỮ LIỆU PHÂN TÁN

Ngành: Công nghệ thông tin
Chuyên ngành: Hệ thống thông tin
Mã số: 60480104

LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN

NGƢỜI HƢỚNG DẪN KHOA HỌC: PGS. TS. ĐOÀN VĂN BAN

HÀ NỘI – 2015


LỜI CAM ĐOAN


Tôi xin cam đoan, kết quả của luận văn hoàn toàn là kết quả của tự bản thân tôi
tìm hiểu, nghiên cứu. Các tài liệu tham khảo đƣợc trích dẫn và chú thích đầy đủ.

Tác giả

Nguyễn Thị Thơ Mây


LỜI CẢM ƠN
Lời đầu tiên, em xin chân thành cảm ơn PGS.TS Đoàn Văn Ban, ngƣời đã trực
tiếp hƣớng dẫn, giúp đỡ và tạo mọi điều kiện thuận lợi cho em từ lúc tìm hiểu, định
hƣớng cũng nhƣ tìm kiếm tài liệu trong lĩnh vực cơ sở dữ liệu phân tán cho đến lúc
hoàn thành luận văn.
Em xin gửi lời cám ơn sâu sắc đến tất cả các thầy cô giáo đã dạy dỗ và truyền
đạt những kiến thức, kinh nghiệm quý báu cho chúng em trong suốt hai năm cao học ở
trƣờng Đại học Công nghệ - Đại học Quốc gia Hà nội.
Cuối cùng, em xin cảm ơn tất cả bạn bè, ngƣời thân và đồng nghiệp đã khích lệ,
động viên, đóng góp ý kiến và giúp đỡ để em hoàn thành luận văn này.

Hà nội, ngày ….., tháng ….., năm 2015


1
MỤC LỤC
MỤC LỤC .......................................................................................................................1
DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT .................................................3
DANH MỤC CÁC HÌNH VẼ ........................................................................................4
LỜI MỞ ĐẦU .................................................................................................................5
Chƣơng 1: KHÁI QUÁT VỀ CƠ SỞ DỮ LIỆU PHÂN TÁN .......................................7
1.1. Cơ sở dữ liệu phân tán. ...........................................................................................7

1.1.1. Định nghĩa ......................................................................................................7
1.1.2. Ƣu điểm .........................................................................................................8
1.1.3. Nhƣợc điểm....................................................................................................9
1.2. Đặc điểm của cơ sở dữ liệu phân tán .....................................................................9
1.2.1. Chia sẻ tài nguyên ........................................................................................... 9
1.2.2. Tính mở .........................................................................................................10
1.2.3. Khả năng song song ..................................................................................... 10
1.2.4. Khả năng mở rộng ........................................................................................ 10
1.2.5. Khả năng thứ lỗi ........................................................................................... 10
1.2.6. Tính trong suốt .............................................. Error! Bookmark not defined.
1.2.7. Đảm bảo tin cậy và nhất quán....................... Error! Bookmark not defined.
1.3. Kiến trúc cơ bản của CSDL phân tán .................. Error! Bookmark not defined.
1.4. Hệ quản trị cơ sở dữ liệu phân tán ...................... Error! Bookmark not defined.
1.4.1. Khái niệm ..................................................... Error! Bookmark not defined.
1.4.2. Kiến trúc hệ quản trị CSDL phân tán .......... Error! Bookmark not defined.
1.5. Thiết kế cơ sở dữ liệu phân tán ........................... Error! Bookmark not defined.
1.5.1. Các chiến lƣợc phân tán dữ liệu .................. Error! Bookmark not defined.
1.5.2. Phân mảnh dữ liệu ....................................... Error! Bookmark not defined.
1.5.2.1. Phƣơng pháp phân mảnh ngang ............... Error! Bookmark not defined.
1.5.2.2. Phƣơng pháp phân mảnh dọc ................... Error! Bookmark not defined.
1.5.2.3. Phƣơng pháp phân mảnh hỗn hợp. ........... Error! Bookmark not defined.
1.6. Kết luận ................................................................. Error! Bookmark not defined.
Chƣơng 2: TỐI ƢU HÓA TRUY VẤN CƠ SỞ DỮ LIỆU PHÂN TÁN ............ Error!
Bookmark not defined.
2.1. Vấn đề tối ƣu hóa xử lý truy vấn .......................... Error! Bookmark not defined.
2.2. Quá trình xử lý truy vấn ........................................ Error! Bookmark not defined.
2.2.1. Phân rã truy vấn ........................................... Error! Bookmark not defined.


2

2.2.2. Cục bộ hóa dữ liệu phân tán ........................ Error! Bookmark not defined.
2.2.2.1. Rút gọn cho phân mảnh ngang nguyên thủy ........... Error! Bookmark not
defined.
2.2.2.2. Rút gọn cho phân mảnh dọc. .................... Error! Bookmark not defined.
2.2.2.3. Rút gọn cho phân mảnh ngang dẫn xuất .. Error! Bookmark not defined.
2.2.2.4. Rút gọn cho phân mảnh hỗn hợp ............... Error! Bookmark not defined.
2.2.3. Tối ƣu hóa toàn cục ...................................... Error! Bookmark not defined.
2.2.3.1. Không gian tìm kiếm ............................... Error! Bookmark not defined.
2.2.3.2. Chiến lƣợc tìm kiếm ................................ Error! Bookmark not defined.
2.2.3.3. Mô hình chi phí ....................................... Error! Bookmark not defined.
2.2.4. Tối ƣu hóa cục bộ ......................................... Error! Bookmark not defined.
2.3. Các thuật toán tối ƣu hóa truy vấn phân tán ......... Error! Bookmark not defined.
2.3.1. Thứ tự kết nối ............................................... Error! Bookmark not defined.
2.3.2. Thuật toán INGRES phân tán ...................... Error! Bookmark not defined.
2.3.3. Thuật toán R* ............................................... Error! Bookmark not defined.
2.3.4. Thuật toán DP-ACO..................................... Error! Bookmark not defined.
2.4. Kết luận ................................................................. Error! Bookmark not defined.
Chƣơng 3: CHƢƠNG TRÌNH CÀI ĐẶT THUẬT TOÁN TỐI ƢU HÓA TRUY
VẤN ............................................................................. Error! Bookmark not defined.
3.1. Bài toán quản lý bệnh nhân .................................. Error! Bookmark not defined.
3.2. Mô hình phân tán CSDL, công cụ, ngôn ngữ lập trình....... Error! Bookmark not
defined.
3.3. Thuật toán áp dụng ............................................... Error! Bookmark not defined.
3.4. Kết quả thực nghiệm ............................................. Error! Bookmark not defined.
3.5. Kết luận ................................................................. Error! Bookmark not defined.
KẾT LUẬN .................................................................. Error! Bookmark not defined.
TÀI LIỆU THAM KHẢO .............................................................................................11


3


DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT
STT
1
2
3
4

5

6
7
8
9

Ký hiệu
ACO
(Ant Colony Optimization)
CSDL
CPU
(Central Processing Unit )
DBMS
(Database Management System)
DDBMS
(Distributed Database Management
System)
DP
(Dynamic Programming)
I/O
(Input/Output)

PT
(Processing tree)
SSL
(Search Space Limit)

Diễn giải
Tối ƣu đàn kiến
Cơ sở dữ liệu
Bộ xử lý trung tâm
Hệ quản trị cơ sở dữ liệu
Hệ quản trị cơ sở dữ liệu phân tán
Quy hoạch động
Vào/Ra
Cây xử lý
Giới hạn không gian tìm kiếm


4

DANH MỤC CÁC HÌNH VẼ
Hình 1.1 Môi trƣờng hệ CSDL phân tán ............................................................ ….8
Hình 1.2 Kiến trúc cơ bản của CSDL phân tán ...................................................... 12
Hình 1.3: Mối quan hệ giữa các quan hệ bởi các đƣờng nối ................................... 16
Hình 1.4: Ma trận tụ tƣơng quan CA....................................................................... 26
Hình 1.5: Phân đoạn hỗn hợp .................................................................................. 29
Hình 1.6. Tái xây dựng phân đoạn hỗn hợp ............................................................ 30
Hình 2.1: Giải pháp A..............................................................................................32
Hình 2.2: Giải pháp B .............................................................................................. 32
Hình 2.3: Sơ đồ truy trình xử lý truy vấn ............................................................... 34
Hình 2.4: Đồ thị truy vấn và Đồ thị nối ................................................................... 37

Hình 2.5: Đồ thị truy vấn và Đồ thị nối với câu truy vấn sai ngữ nghĩa ................. 37
Hình 2.6: Cây đại số quan hệ .................................................................................. 39
Hình 2.7: Cây đại số quan hệ sau khi tái cấu trúc .................................................. 41
Hình 2.8: Câu truy vấn gốc ..................................................................................... 42
Hình 2.9: Câu truy vấn đã rút gọn ........................................................................... 42
Hình 2.10: Rút gọn phân mảnh ngang .................................................................... 43
Hình 2.11. Rút gọn phân mảnh dọc ........................................................................ 44
Hình 2.12: Rút gọn cho phân mảnh ngang dẫn xuất .............................................. 46
Hình 2.13: Rút gọn phân mảnh hỗn hợp ................................................................. 47
Hình 2.14: Bộ tối ƣu truy vấn ................................................................................. 48
Hình 2.15: Các cây nối ............................................................................................ 49
Hình 2.16: Hình dáng của một số cây nối ............................................................... 49
Hình 2.17: Đồ thị minh họa tổng chi phí và thời gian trả lời ..........................51
Hình 2.18:Truyền các toán hạng trong phép toán hai ngôi .............................55
Hình 2.19: Đồ thị nối của truy vấn phân tán ........................................................... 56
Hình 2.20: Đồ thị nối của truy vấn q1 ..................................................................... 62
Hình 2.21: Các thứ tự kết nối .................................................................................. 63
Hình 2.22: Quá trình quyết định đƣờng đi của đàn kiến ......................................... 64
Hình 3.1: Mối quan hệ giữa các bảng dữ liệu ......................................................... 70
Hình 3.2: Kết quả thực hiện câu truy vấn tại trạm 1 ............................................... 71
Hình 3.3: Kết quả thực hiện câu truy vấn tại trạm 2 ............................................... 71
Hình 3.4: Kết quả thực hiện câu truy vấn tại trạm 3 ............................................... 72


5
Hình 3.5: Kết quả thực hiện câu truy vấn tại trạm 1 ............................................... 72
Hình 3.6: Kết quả thực hiện câu truy vấn tại trạm 2 ............................................... 73


6

LỜI MỞ ĐẦU
Ngày nay, cùng với sự phát triển nhanh chóng của công nghệ thông tin, các ứng
dụng cơ sở dữ liệu đã thâm nhập vào mọi hoạt động kinh tế xã hội, quản lý nhà nƣớc
và đem lại hiệu quả vô cùng to lớn, góp phần tăng năng suất lao động, đơn giản trong
quản lý và cải cách nền hành chính. Xã hội ngày càng phát triển, yêu cầu khối lƣợng
thông tin cần lƣu trữ, xử lý ngày càng tăng. Trên thực tế, các doanh nghiệp, các đơn vị,
cơ quan, tổ chức phân bố trên một vùng rộng lớn về mặt địa lý, có thể là trên phạm vi
nhiều thành phố hoặc toàn bộ quốc gia hay một vài quốc gia, thậm chí trên toàn cầu.
Do đó, dữ liệu không thể lƣu trữ tập trung ở một địa điểm nhất định mà rải khắp các
địa điểm mà cơ quan, tổ chức hay doanh nghiệp đó hoạt động. Khi dữ liệu không còn
lƣu trữ tập trung thì vấn đề làm thế nào để quản lý, tốc độ truy xuất dữ liệu phục vụ
cho xử lý công việc không bị ảnh hƣởng, không bị gián đoạn đƣợc đặt ra. Cơ sở dữ
liệu phân tán ra đời đã giải quyết đƣợc những yêu cầu đó.
Cơ sở dữ liệu là một trong những lĩnh vực đƣợc quan tâm nhiều trong công nghệ
thông tin. Việc nghiên cứu CSDL đã và đang phát triển ngày càng phong phú, đa dạng.
Cho đến nay, đã có hàng loạt các vấn đề về CSDL đƣợc nghiên cứu, giải quyết. CSDL
phân tán nói riêng và các hệ phân tán nói chung là một lĩnh vực nghiên cứu không
mới, nhƣng gần đây cùng với sự phát triển nhanh chóng và mạnh mẽ của công nghệ
truyền thông, mạng Internet và đặc biệt là xu thế phát triển của thƣơng mại điện tử, thì
CSDL phân tán đã trở thành một lĩnh vực thu hút nhiều sự quan tâm của các nhà
nghiên cứu cũng nhƣ các nhà sản xuất phần mềm.
Khi khối lƣợng thông tin phải xử lý ngày càng lớn, phong phú và đa dạng thì vấn
đề đặt ra là xử lý thông tin nhƣ thế nào để giảm chi phí đến mức tối thiểu. Một trong
các giải pháp có tính khả thi là phải tối ƣu hóa các câu lệnh khi truy vấn dữ liệu.
Nghiên cứu về tối ƣu hóa truy vấn trong cơ sở dữ liệu phân tán là cần thiết để khai
thác có hiệu quả dữ liệu phân tán. Do đó, tôi chọn nghiên cứu đề tài “Tối ưu hóa cơ sở
dữ liệu phân tán” làm luận văn tốt nghiệp.
Mục tiêu của luận văn là nghiên cứu các phƣơng pháp thiết kế cơ sở dƣ̃ liê ̣u phân
tán, các kỹ thuật tối ƣu hóa câu truy vấn trong cơ sở dữ liệu phân tán, cài đặt thử
nghiệm một số thuật toán tối ƣu hóa câu truy vấn trong cơ sở dữ liệu phân tán, từ đó

đƣa ra nhận xét, đánh giá ƣu điểm, nhƣợc điểm của từng thuật toán tối ƣu để có lựa
chọn phù hợp với từng bài toán thực tế.
Với mục tiêu của luận văn nhƣ vậy, bố cục của luận văn gồm: phần mở đầu, ba
chƣơng nội dung và phần kết luận.
Chƣơng 1: Khái quát về cơ sở dữ liệu phân tán. Giới thiệu tổng quan về cơ sở dữ
liệu phân tán, phân biệt cơ sở dữ liệu tập trung với cơ sở dữ liệu phân tán để thấy đƣợc
sự khác biệt của hai cơ sở dữ liệu này và lợi ích của cơ sở dữ liệu phân tán; Tìm hiểu
các phƣơng pháp thiết kế cơ sở dữ liệu phân tán, tập trung nghiên cứu các kỹ thuật
phân mảnh: phân mảnh ngang, phân mảnh dọc và phân mảnh hỗn hợp.


7
Chƣơng 2: Tối ƣu hóa truy vấn cơ sở dữ liệu phân tán. Trong chƣơng này sẽ
trình bày chi tiết các bƣớc trong quy trình xử lý câu truy vấn; trình bày các thuật toán
tối ƣu hóa câu truy vấn cơ sở dữ liệu phân tán nhƣ: INGRES phân tán, R*, DP-ACO.
Chƣơng 3: Cài đặt thử nghiệm thuật toán: Trình bày mô hình cài đặt hệ thống.
Cài đặt thuật toán INGRES phân tán, R* và so sánh, đánh giá kết quả thực nghiệm cho
bài toán tối ƣu hóa truy vấn. Cuối cùng là kết luận và hƣớng phát triển của đề tài.
Nội dung cơ bản của luận văn đã đƣợc trình bày, thảo luận tại seminar khoa học
ở Bộ môn Hệ thống thông tin, khoa Công nghệ Thông tin, trƣờng Đại học Công nghệ Đại học Quốc gia Hà Nội.


8
Chƣơng 1
KHÁI QUÁT VỀ CƠ SỞ DỮ LIỆU PHÂN TÁN
1.1. Cơ sở dữ liệu phân tán
1.1.1. Định nghĩa
Một cơ sở dữ liệu (CSDL) phân tán là một tập dữ liệu có quan hệ logic với nhau,
đƣợc phân bố trên các máy tính của một mạng máy tính [11].
- Tính chất phân tán: Toàn bộ dữ liệu của CSDL phân tán không nằm ở một nơi

mà nằm trên nhiều trạm thuộc mạng máy tính.
- Quan hệ logic: Trong CSDL phân tán, dữ liệu có một số đặc tính liên kết với
nhau nhƣ tính kết nối, mối quan hệ logic, điều này giúp chúng ta có thể 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 nằm tại các vị trí khác
nhau trong một mạng máy tính.
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.
Ví dụ: Với một ngân hàng có 3 chi nhánh đặt ở các vị trí khác nhau. Tại mỗi chi
nhánh có một máy tính điều khiển một số máy kế toán cuối cùng (Teller terminal). Mỗi
máy tính với cơ sở dữ liệu thống kê cục bộ của nó tại mỗi chi nhánh đƣợc đặt ở một vị
trí của cơ sở dữ liệu phân tán. Các máy tính đƣợc nối với nhau bởi một mạng truyền
thông.
Ở mức phần cứng vật lý, những nhân tố chính sau là để phân biệt một hệ cơ sở
dữ liệu phân tán với hệ cơ sở dữ liệu tập trung:
- Có nhiều máy tính đƣợc gọi là các trạm hay các nút.
- Các trạm này phải đƣợc kết nối bởi một kiểu mạng truyền thông để truyền dữ
liệu và những câu lệnh giữa các trạm với nhau, nhƣ Hình 1.1.
Trong mô hình dữ liệu tập trung, tài nguyên tập trung tại một máy tính. Trong
hệ thống cơ sở dữ liệu phân tán, cơ sở dữ liệu đƣợc chứa trong nhiều máy tính, các
máy tính này đƣợc nối với nhau qua các hệ thống truyền thông, chúng không chia sẻ
bộ nhớ chung cũng nhƣ không dùng chung đồng hồ. Các bộ xử lý trong hệ thống phân
tán có kích cỡ và chức năng khác nhau (chẳng hạn có thể bao gồm các bộ vi xử lý,
trạm làm việc, máy tính mini, hay các máy lớn vạn năng). Trong hệ thống cơ sở dữ
liệu phân tán gồm nhiều trạm thì mỗi trạm có thể truy nhập dữ liệu ở các trạm khác.


9
Trạm 1

Trạm 2


DB

Mạng truyền thông

DB

DB

DB

Trạm 4

Trạm 3

Hình 1.1 Môi trƣờng hệ CSDL phân tán
1.1.2. Ưu điểm
Lợi ích cơ bản nhất của cơ sở dữ liệu phân tán là dữ liệu của các cơ sở dữ liệu vật
lý riêng biệt đƣợc tích hợp logic với nhau làm cho nhiều ngƣời sử dụng trên mạng có
thể truy nhập đƣợc.
Cho phép quản lý dữ liệu theo nhiều mức trong suốt: Hệ quản trị cơ sở dữ liệu
phải đƣợc trong suốt phân tán theo nghĩa làm cho ngƣời sử dụng không cần biết vị trí
của dữ liệu và không cần biết sự phức tạp truy cập qua mạng.
Tăng độ tin cậy và khả năng sẵn sàng: Độ tin cậy là khả năng hệ thống đang làm
việc (không bị ngừng) tại một thời điểm nào đó, tính sẵn sàng là khả năng hệ thống
tiếp tục làm việc trong một khoảng thời gian nào đó. Khi cơ sở dữ liệu phân tán trên
một vài trạm, một trạm có thể có sự cố trong khi các trạm khác vẫn có thể hoạt động
hoặc sử dụng các thành phần khác của cơ sở dữ liệu, chỉ trên trạm bị sự cố, dữ liệu và
ứng dụng không thể truy cập đƣợc. Để nâng cao độ tin cậy và tính sẵn sàng, có thể áp
dụng cơ chế tạo bản sao trên nhiều trạm [2].

Cải thiện hiệu năng: Một hệ quản trị cơ sở dữ liệu phân tán, phân mảnh cơ sở dữ
liệu có thể làm cho dữ liệu đƣợc lƣu trữ tại gần nơi sử dụng nhất. Dữ liệu đƣợc lƣu trữ
cục bộ làm giảm cạnh tranh CPU, giảm các phục vụ I/O và giảm tƣơng tranh truy nhập
trên mạng. Dữ liệu đƣợc phân tán tại các trạm nên dung lƣợng dữ liệu cục bộ sẽ nhỏ
hơn, các xử lý giao tác và truy vấn cục bộ sẽ đƣợc thực hiện tốt hơn. Hơn nữa, trên
mỗi trạm có ít các giao tác hơn số giao tác trên cơ sở dữ liệu tập trung, vì vậy cũng
tăng hiệu suất hệ thống. Tính song song trong các hệ CSDL phân tán có thể nâng cao
đƣợc hiệu quả truy nhập. Tính chất này có thể lợi dụng để xử lý song song các câu truy
vấn. Có hai dạng:
- Câu truy vấn đồng thời phát sinh tại các trạm khác nhau.
- Câu truy vấn có thể đƣợc phân rã thành những câu truy vấn con đƣợc thực hiện
song song trên các trạm khác nhau.
Tổ chức dữ liệu phân tán kinh tế hơn so với tổ chức dữ liệu tập trung. Chi phí
cho một hệ máy tính nhỏ rẻ hơn nhiều so với chi phí của một máy tính lớn khi triển


10
khai cùng một mục đích ứng dụng. Chi phí truyền thông cũng ít hơn do việc cục bộ
hóa dữ liệu.
Dễ dàng mở rộng: Việc thêm cơ sở dữ liệu mới, tăng kích cỡ cơ sở dữ liệu hoặc
thêm bộ xử lý trong môi trƣờng phân tán là dễ hơn vì cũng chỉ nhƣ là thêm các cơ sở
dữ liệu thành phần.
1.1.3. Nhược điểm
Bên cạnh những ƣu điểm đã trình bày phần trên, CSDL phân tán có một số
nhƣợc điểm sau:
- Độ phức tạp thiết kế và cài đặt hệ thống tăng: Hệ quản trị cơ sở dữ liệu phân
tán phải bổ sung thêm các chức năng nhƣ:
+ Theo dõi dấu vết dữ liệu
+ Xử lý các truy vấn phân tán
+ Quản lý giao dịch phân tán

+ Phục hồi cơ sở dữ liệu phân tán
+ Quản lý các bản sao
+ Quản lý thƣ mục - catalog phân tán
- Tăng chi phí: Độ phức tạp tăng đồng nghĩa với chi phí cho việc mua sắm và
bảo trì cho hệ quản trị CSDL phân tán tăng so với CSDL tập trung. Hơn nữa, hệ quản
trị CSDL phân tán còn yêu cầu thêm phần cứng để thiết lập mạng liên kết giữa các
trạm làm cho chi phí truyền thông liên tục phát sinh. Ngoài ra, còn có thêm chi phí lao
động để quản lý và duy trì các CSDL cục bộ và hệ thống mạng.
- Bảo mật khó khăn: Trong hệ thống tập trung, việc truy cập dữ liệu có thể đƣợc
kiểm soát dễ dàng. Tuy nhiên, trong hệ quản trị CSDL phân tán không chỉ việc truy
cập dữ liệu lặp ở nhiều vị trí đƣợc kiểm soát mà bản thân mạng cũng phải đảm bảo an
toàn.
- Kiểm soát tính toàn vẹn khó khăn hơn: CSDL toàn vẹn đề cập đến độ tin cậy và
tính nhất quán của dữ liệu đƣợc lƣu trữ. Tính toàn vẹn thƣờng đƣợc thể hiện trong các
điều kiện ràng buộc. Thực hiện các ràng buộc này thƣờng yêu cầu truy cập lƣợng lớn
dữ liệu định nghĩa các ràng buộc. Trong hệ quản trị CSDL phân tán, chi phí truyền
thông và chi phí xử lý để thực thi các ràng buộc toàn vẹn cao hơn trong hệ thống tập
trung.
1.2. Đặc điểm của cơ sở dữ liệu phân tán
1.2.1. Chia sẻ tài nguyên
Việc chia sẻ tài nguyên của hệ phân tán đƣợc thực hiện thông qua mạng truyền
thông. Để chia sẻ tài nguyên một cách có hiệu quả thì mỗi tài nguyên cần đƣợc quản lý
bởi một chƣơng trình có giao diện truyền thông, các tài nguyên có thể đƣợc truy cập,
cập nhật một cách tin cậy và nhất quán. Quản lý tài nguyên ở đây là lập kế hoạch dự
phòng, đặt tên cho các lớp tài nguyên, cho phép tài nguyên đƣợc truy cập từ nơi này
đến nơi khác, ánh xạ lên tài nguyên vào địa chỉ truyền thông, ...


11
1.2.2. Tính mở

Tính mở của hệ thống máy tính là dễ dàng mở rộng phần cứng (thêm các thiết bị
ngoại vi, bộ nhớ, các giao diện truyền thông, ...) và các phần mềm (các mô hình hệ
điều hành, các giao thức truyền tin, các dịch vụ chung tài nguyên, ...)
Một hệ phân tán có tính mở là hệ có thể đƣợc tạo ra từ nhiều loại phần cứng và
phần mềm của nhiều nhà cung cấp khác nhau theo một tiêu chuẩn chung.
Tính mở của hệ phân tán đƣợc xem xét theo mức độ bổ sung các dịch vụ dùng
chung tài nguyên mà không phá hỏng hay nhân đôi các dịch vụ đang tồn tại. Tính mở
đƣợc hoàn thiện bằng cách xác định hay phân định rõ các giao diện chính của một hệ
và làm cho nó tƣơng thích với các nhà phát triển phần mềm.
Tính mở của hệ phân tán dựa trên việc cung cấp cơ chế truyền thông giữa các tiến
trình và công khai các giao diện dùng để truy cập các tài nguyên chung.
1.2.3. Khả năng song song
Hệ phân tán hoạt động trên một mạng truyền thông có nhiều máy tính, mỗi máy
có thể có một hay nhiều CPU. Trong cùng một thời điểm nếu có N tiến trình cùng tồn
tại, ta nói chúng thực hiện đồng thời. Việc thực hiện tiến trình theo cơ chế phân chia
thời gian (một CPU) hay song song (nhiều CPU).
Khả năng làm việc song song trong hệ phân tán đƣợc thực hiện do:
- Nhiều ngƣời sử dụng đồng thời đƣa ra các lệnh hay tƣơng tác với các chƣơng
trình ứng dụng.
- Nhiều tiến trình Server chạy đồng thời, mỗi tiến trình đáp ứng các yêu cầu từ
các tiến trình Client khác.
1.2.4. Khả năng mở rộng
Hệ phân tán có khả năng hoạt động tốt và hiệu quả ở nhiều mức khác nhau. Một
hệ phân tán nhỏ nhất có thể hoạt động chỉ cần hai trạm làm việc và một File Server.
Các hệ lớn hơn có thể có hàng nghìn máy tính.
Khả năng mở rộng đƣợc đặc trƣng bởi tính không thay đổi phần mềm hệ thống và
phần mềm ứng dụng khi hệ đƣợc mở rộng. Điều này chỉ đạt đƣợc mức độ nào đó với
hệ phân tán hiện tại. Yêu cầu việc mở rộng không chỉ là sự mở rộng về phần cứng, về
mạng mà trải trên các khía cạnh khi thiết kế hệ phân tán.
1.2.5. Khả năng thứ lỗi

Việc thiết kế khả năng thứ lỗi của các hệ thống máy tính dựa trên hai giải pháp:
- Dùng khả năng thay thế để đảm bảo sự hoạt động liên tục và hiệu quả.
- Dùng các chƣơng trình hồi phục khi xảy ra sự cố.
Xây dựng một hệ thống có thể khắc phục sự cố theo cách thứ nhất thì nối hai máy
tính với nhau để thực hiện cùng một chƣơng trình, một trong hai máy chạy ở chế độ
Standby. Giải pháp này tốn kém vì phải nhân đôi phần cứng của hệ thống. Một giải
pháp để giảm chi phí là các Server riêng lẻ đƣợc cung cấp các ứng dụng quan trọng để
có thể thay thế nhau khi có sự cố xuất hiện. Khi không có sự cố các Server hoạt động


12
TÀI LIỆU THAM KHẢO
Tài liệu tiếng Việt
[1] Nguyễn Văn Nhuận, Phạm Việt Bình (2009), “Giáo trình hệ cơ sở dữ liệu phân tán
& suy diễn: Lý thuyết và thực hành”, NXB Khoa học và kỹ thuật.
[2] Phạm Thế Quế (2009), “Giáo trình Cơ sở dữ liệu phân tán”, NXB Thông tin và
Truyền thông.
[3] Nguyễn Bá Tƣờng (2005), ”Nhập môn cơ sở dữ liệu dữ liệu phân tán”, NXB Khoa
học và kỹ thuật.
Tài liệu tiếng Anh
[4] Alaa Aljanaby, Emad Abuelrub, and Mohammed Odeh (2005), “A Survey of
Distributed Query Optimization”, The International Arab Journal of Information
Technology, Vol. 2, No. 1.
[5] Tansel Dokeroglu, Ahmet Cosar (2011), “Dynamic Programming with Ant
Colony Optimization Metaheuristic for optimization of Distributed Database
Queries”, ISCIS:26th International Symposium on Computer and Information
Sciences, IEEE, Vol 2, pp.107-113.
[6] Marco Dorigo, Thomas Stutzle (2003), The Ant Colony Optimization
Metaheuristic, Algorithms, Applications, and Advances - Handbook of
Metaheuristics, Springer US, pp 250-285.

[7] Marco Dorigo, Thomas Stutzle (2004), Ant Colony Optimization, MIT Press
[8] Chhanda Ray (2009), Distributed Database Systems, Pearson Education India.
[9] Sacco, M.P, and Yao, S.B (1982), “Query Optimization in Distributed Database
Systems,” Advances in Computers, Vol. 21, Academic Press.
[10] Preeti Tiwari, Swati V. Chande (2013), “Optimization of Distributed Database
Queries Using Hybrids of Ant Colony Optimization Algorithm”, International
Journal of Advanced Research in Computer Science and Software Engineering
3(6), pp. 609-614.
[11] M. Tamer Özsu, Patrick Valduriez (2011), Principles of Distributed Database
Systems third edition, Springer.
[12] Preeti Tiwari, Swati V. Chande (2013), “Query Optimization Strategies in
Distributed Databases”, International Journal of Advances in Engineering
Sciences Vol.3.
[13] Yasmeen R. M. Umar, Amit R. Welekar (2014), “Query Optimization in
Distributed Database: A Review”, Query Optimization in Distributed Database: A
Review, Vol. 4, No. 6.



×