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

Thiết kế cơ sở dữ liệu phân tán thuần nhất sử dụng các kỹ thuật khai phá dữ liệu

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 (1.1 MB, 98 trang )

HONG TH LIấN CHI

bộ giáo dục và đào tạo
trường đại học bách khoa hà nội
---------------------------------------

HOàNG THị LIÊN CHI

CễNG NGH THễNG TIN

THIếT Kế Cơ Sở Dữ LIệU PHâN TáN THUầN NHấT
Sử DụNG CáC Kỹ THUậT KHAI PHá Dữ LIệU

LUậN VĂN THạC Sĩ khoa học

20072009
Hà nội
2009

Hà Nội - Năm 2009


BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
---------------------------------------

HOÀNG THỊ LIÊN CHI

THIẾT KẾ CƠ SỞ DỮ LIỆU PHÂN TÁN THUẦN NHẤT SỬ
DỤNG CÁC KỸ THUẬT KHAI PHÁ DỮ LIỆU


Chuyên ngành : CÔNG NGHỆ THÔNG TIN

LUẬN VĂN THẠC SĨ KHOA HỌC

NGƯỜI HƯỚNG DẪN KHOA HỌC :
PGS.TS. NGUYỄN THỊ KIM ANH

Hµ Néi – Năm 2009


Trang 1

MỤC LỤC
MỤC LỤC..............................................................................................................1
DANH MỤC CÁC KÝ HIỆU CHỮ VIẾT TẮT...................................................3
DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ ................................................................4
PHẦN MỞ ĐẦU....................................................................................................5
Chương 1.TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU PHÂN TÁN..............................8
1.1. Khái niệm cơ sở dữ liệu phân tán.............................................................8
1.1.1. Định nghĩa cơ sở dữ liệu phân tán.....................................................8
1.1.2. Hệ quản trị cơ sở dữ liệu phân tán (Distribute DBMS) ..................10
1.1.3. Mơ hình kiến trúc của hệ quản trị cơ sở dữ liệu phân tán...............12
1.2. Các đặc điểm của cơ sở dữ liệu phân tán so với cơ sở dữ liệu tập trung15
1.2.1. Điều khiển tập trung ........................................................................15
1.2.2. Độc lập dữ liệu ................................................................................16
1.2.3. Giảm dư thừa ...................................................................................16
1.2.4. Các lợi ích của cơ sở dữ liệu phân tán.............................................16
1.3. Kiến trúc tham khảo dùng cho các cơ sở dữ liệu phân tán ....................19
1.4. Các loại phân đoạn dữ liệu .....................................................................23
1.4.1. Phân đoạn ngang dẫn xuất...............................................................24

1.4.2. Phân đoạn dọc..................................................................................25
1.4.3. Phân đoạn hổn hợp ..........................................................................26
1.5. Tổng kết chương 1:.................................................................................26
Chương 2.THIẾT KẾ CƠ SỞ DỮ LIỆU PHÂN TÁN THUẦN NHẤT............27
2.1. Giới thiệu................................................................................................27
2.2. Các phương pháp tiếp cận: .....................................................................28
2.2.1. Phương pháp thiết kế từ trên xuống ................................................28
2.2.2. Phương pháp thiết kế từ dưới lên ....................................................28
2.3. Thiết kế phân đoạn .................................................................................29
2.3.1. Thiết kế phân đoạn ngang................................................................29
2.3.2. Thiết kế phân đoạn dọc....................................................................35
2.3.3. Thiết kế phân đoạn hổn hợp ............................................................42
2.4. Thiết kế định vị.......................................................................................43
2.4.1. Đặt vấn đề về bài toán định vị.........................................................43
2.5. Tổng kết chương 2..................................................................................48
Chương 3.CÁC KỸ THUẬT KHAI PHÁ DỮ LIỆU..........................................49
3.1. Tổng quan về phát hiện tri thức và khai phá dữ liệu..............................49
3.1.1. Phát hiện tri thức..............................................................................49
3.1.2. Quá trình phát hiện tri thức .............................................................50


Trang 2

3.1.3. Khai phá dữ liệu ..............................................................................51
3.2. Luật kết hợp và thuật toán Apriori .........................................................53
3.2.1. Tập mục phổ biến ............................................................................53
3.2.2. Luật kết hợp.....................................................................................54
3.2.3. Bài tốn tìm luật kết hợp .................................................................56
3.2.4. Thuật toán Apriori ...........................................................................57
3.2.5. Thuật toán sinh luật kết hợp ............................................................62

3.2.6. Thuật toán sinh luật .........................................................................63
3.3. Phân cụm dữ liệu....................................................................................64
3.3.1. Khái niệm ........................................................................................64
3.3.2. Đo độ tương tự.................................................................................65
3.3.3. Các giải thuật phân cụm ..................................................................65
3.4. Tổng kết chương 3:.................................................................................68
Chương 4.ỨNG DỤNG CÁC KỸ THUẬT KHAI PHÁ DỮ LIỆU TRONG
THIẾT KẾ CƠ SỞ DỮ LIỆU PHÂN TÁN THUẦN NHẤT.............................69
4.1. Giới thiệu................................................................................................69
4.2. Thiết kế phân đoạn dọc với kỹ thuật ứng dụng luật kết hợp..................70
4.2.1. Phương pháp phân đoạn dọc dựa trên luật kết hợp .........................70
4.2.2. Giải thuật phân đoạn........................................................................73
4.3. Thiết kế phân đoạn ngang dựa trên kỹ thuật phân cụm dữ liệu .............79
4.3.1. Giới thiệu .........................................................................................79
4.3.2. Phương pháp phân đoạn ngang dựa trên kỹ thuật phân cụm ..........81
KẾT LUẬN ..........................................................................................................92
TÀI LIỆU THAM KHẢO....................................................................................94


Trang 3

DANH MỤC CÁC KÝ HIỆU CHỮ VIẾT TẮT

CSDL - DB - Database : Cơ sở dữ liệu
HQTCSDL - DBMS - Database Managerment System: Hệ quản trị cơ sở dữ liệu
DDBMS - Distribute Database Managerment System: Hệ quản trị cơ sở dữ liệu
phân tán
LIS - Local Internal Schema
GCS - Global Conceptual Schema
LCS - Local Conceptual Schema

KPDL - Datamining - Khai phá dữ liệu
CA – Clustered Afinity matrix - ma trận tương quan gom tụ
KDD - Knowledge Discovery and Data Mining – Phát hiện tri thức và khai phá
dữ liệu


Trang 4

DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ
Hình 1.1. Hệ cơ sở dữ liệu tập trung trong mơi trường mạng...............................9
Hình 1.2. Môi trường hệ cơ sở dữ liệu phân tán ...................................................9
Hình 1.3. Các thành phần của DDBMS...............................................................11
Hình 1.4. Kiến trúc Client/Server ........................................................................13
Hình 1.5 Kiến trúc Peer to Peer...........................................................................14
Hình 1.6 Một kiến trúc tham khảo dùng cho cơ sở dữ liệu phân tán ..................20
Hình 1.7 Các đoạn và hình ảnh vật lý của một quan hệ tồn cục .......................21
Hình 2.2 Biễu diễn các mối liên kết giữa các quan hệ ........................................30
Hình 2.3 Ví dụ lược đồ tồn cục trong phân đoạn ngang ...................................32
Hình 2.4 Ma trận sử dụng thuộc tính...................................................................38
Hình 2.5 Ma trận tương quan thuộc tính .............................................................40
Hình 2.6 Tính tốn ma trận tương quan gom tụ (CA) .........................................42
Hình 3.1 Quá trình phát hiện tri thức ..................................................................50
Hình 3.2. Các giai đoạn gom cụm .......................................................................65
Hình 4.1. Phát hiện tập mục phổ biến, chọn lọc tập mục...................................78


Trang 5

PHẦN MỞ ĐẦU
Hiện nay công nghệ truyền thông và mạng Internet ngày càng được phát

triển mạnh mẽ và có nhiều ứng dụng chạy trên các mạng cục bộ và mạng diện
rộng. Dữ liệu được lưu trữ tại nhiều nơi khác nhau của mạng máy tính và chương
trình ứng dụng có nhu cầu được truy xuất tại nhiều nơi, do vậy công nghệ hệ
thống cơ sở dữ liệu phân tán là một trong những phát triển của lãnh vực cơ sở dữ
liệu, hiện đã có các hệ quản trị cơ sở dữ liệu phân tán đã được thương mại hóa
như Oracle, Microsoft SQL Server.
Vì u cầu của cơng ty, doanh nghiệp, đơn vị kinh doanh... về vấn đề tổ
chức sao cho kinh doanh có hiệu quả nhất và nắm bắt thông tin nhanh nhất khi
các cơ sở của công ty hiện ở những địa điểm xa nhau cho nên xây dựng một hệ
thống làm việc trên cơ sở dữ liệu phân tán là phù hợp xu hướng hiện nay và vấn
đề thiết kế CSDL phân tán là giải pháp lựa chọn tự nhiên. Lợi điểm về tổ chức và
kỹ thuật của xu hướng phát triển cơ sở dữ liệu phân tán là: giải quyết được
những hạn chế của cơ sở dữ liệu tập trung và phù hợp xu hướng phát triển tự
nhiên với cơ cấu không tập trung của các tổ chức, công ty doanh nghiệp...
Tuy vậy trong thực tế việc thiết kế cơ sở dữ liệu phân tán là vơ cùng phức
tạp và rất khó vì nhiều vấn đề về tổ chức và về kỹ thuật sẽ khó khăn hơn so với
thiết kế cơ sở dữ liệu đặt một nơi. Do đó làm thế nào, sử dụng kỹ thuật nào để
thiết kế cơ sở dữ liệu phân tán cho tốt là vấn đề đặt ra và cần được quan tâm
nghiên cứu.
Một cơ sở dữ liệu phân tán muốn tối ưu hóa việc thực hiện các ứng dụng
cần phải có phân đoạn dữ liệu và phân phối các đoạn này tại các nơi phân tán để
cực tiểu việc truyền dữ liệu. Phân đoạn dữ liệu là một trong những hướng nghiên
cứu mới của CSDL, là kỹ thuật thiết kế CSDL ở mức logic nhằm giảm bớt
những truy xuất không cần thiết đến dữ liệu, cho phép thực hiện song song các
truy vấn bằng cách chia nó ra thành tập các truy vấn con tác động lên các đoạn


Trang 6

nhằm nâng cao việc thực hiện các ứng dụng. Trong mơ hình quan hệ có các kiểu

phân đoạn: phân đoạn ngang, phân đoạn dọc, phân đoạn hổn hợp. Phân đoạn
ngang là việc phân chia một quan hệ thành tập các quan hệ con, mỗi quan hệ con
chứa các bộ của quan hệ ban đầu. Phân đoạn dọc là việc phân chia một quan hệ
thành tập các quan hệ con, mỗi quan hệ con được định nghĩa trên tập các thuộc
tính của quan hệ ban đầu.
Hiện đã có nhiều hướng tiếp cận phân đoạn sử dụng các phương pháp
gộp nhóm, phân tách, các phương pháp mang tính heuristic được trình bày trong
[6], [17], [27],….Tuy vậy các hướng tiếp cận này khá phức tạp hoặc chủ quan,
có phần phụ thuộc vào trực quan của người thiết kế.
Do đó mục tiêu của đề tài luận văn này là tiếp cận, nghiên cứu các kỹ
thuật trong khai phá dữ liệu - là một trong những hướng nghiên cứu mới đã và
đang được áp dụng rộng rãi trong nhiều lĩnh vực kinh doanh và đời sống khác
nhau - để ứng dụng trong thiết kế xây dựng cơ sở dữ liệu phân tán.
Kết quả của đề tài hướng đến việc nghiên cứu các tiếp cận dựa trên việc
phát hiện luật kết hợp để phát triển phương pháp phân đoạn dọc, phân chia thuộc
tính của các tập thuộc tính trong cơ sở dữ liệu tồn cục, xây dựng được các lược
đồ phân đoạn dữ liệu tại các trạm đặt các cơ sở dữ liệu cục bộ hoặc sử dụng các
kết quả có được từ kỹ thuật phân cụm dữ liệu để phát triển phương pháp phân
đoạn ngang trong thiết kế phân đoạn của CSDL phân tán.
Trên cơ sở nghiên cứu về cơ sở lý thuyết của thiết kế cơ sở dữ liệu phân
tán, đề tài này đưa ra nhằm lần lượt nghiên cứu các lĩnh vực sau:
 Nghiên cứu các khái niệm về thiết kế cơ sở dữ liệu phân tán như định
nghĩa về cơ sở dữ liệu phân tán, giới thiệu kiến trúc hệ phân tán, các đặc điểm
của cơ sở dữ liệu phân tán so sánh với hệ cơ sở dữ liệu tập trung, nêu các ích lợi
và một số nhược điểm khi sử dụng hệ cơ sở dữ liệu phân tán, nghiên cứu các


Trang 7

phương pháp tiếp cận để thiết kế và bàn luận về thiết kế phân đoạn ngang, phân

đoạn dọc, thiết kế định vị tại các trạm.
 Đề tài nghiên cứu và giới thiệu các kỹ thuật khai phá dữ liệu như phát
hiện luật kết hợp, giới thiệu thuật toán Apriori giải quyết bài tốn phát hiện các
luật kết hợp có trong cơ sở dữ liệu, giới thiệu các phương pháp gom cụm, đặc
biệt giới thuật thuật toán gom cụm k-means để thực hiện phân cụm dữ liệu và
cuối cùng là việc ứng dụng kỹ thuật khai phá dữ liệu để thiết kế CSDL phân tán
thuần nhất, cụ thể là ứng dụng luật kết hợp với giải thuật Apriori sẽ hổ trợ thiết
kế phân đoạn dọc, và đồng thời đề tài nghiên cứu ứng dụng việc phân cụm dữ
liệu để thiết kế phân đoạn ngang nhằm làm tăng hiệu suất của hệ thống CSDL
bởi việc phân đoạn sẽ rút gọn được số truy xuất các giao dịch thực hiện trên
CSDL, đồng thời đề tài đã tìm hiểu thu thập các cơ sở dữ liệu và ứng dụng thực
tế trên CSDL quản lý doanh nghiệp trong địa bàn TPHCM, quản lý tại Cơng ty
Bảo minh làm số liệu thực nghiệm để trình bày kết quả minh họa demo các thuật
toán trong khai phá dữ liệu (Datamining) ứng dụng hổ trợ thiết kế phân đoạn
trong thiết kế cơ sở dữ liệu phân tán thuần nhất. Với mục tiêu đã nêu trên, luận
văn bao gồm 4 chương cụ thể được nêu ra trong từng chương như sau


Trang 8

Chương 1. TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU PHÂN TÁN
1.1. Khái niệm cơ sở dữ liệu phân tán
Những năm gần đây việc phát triển các mơ hình lý thuyết cho hệ cơ sở dữ
liệu và phát triển hệ thống ứng dụng có nhiều kinh nghiệm hình thành dựa trên
cơ sở kết nối các máy tính khác nhau, hệ cơ sở dữ liệu phân tán cũng đã phát
triển dựa trên cơ sở dữ liệu và mạng máy tính. Cơ sở dữ liệu phân tán bao gồm
nhiều cơ sở dữ liệu tích hợp lại với nhau thơng qua mạng máy tính để trao đổi
thơng tin dữ liệu. Cơ sở dữ liệu được tổ chức và lưu trữ ở những vị trí khác nhau
trong mạng máy tính và chương trình ứng dụng làm việc dựa trên cơ sở truy cập
dữ liệu ở những điểm khác nhau đó.

Hiện nay khái niệm xử lý phân tán (Distributed processing), tính tốn
phân tán (Distributed computing) hoặc các thuật ngữ có từ “phân tán” hay
được dùng để chỉ các hệ thống rải rác như các hệ thống máy tính có đa bộ xử lý
(multiprocessor system) hay là các xử lý trên mạng máy tính. Cơ sở dữ liệu
phân tán là một khái niệm không bao gồm các trường hợp xử lý dữ liệu trong
các hệ thống sử dụng bộ nhớ chung, kể cả bộ nhớ trong hay bộ nhớ thứ cấp (đĩa
từ), nhất thiết phải là một hệ có sử dụng giao tiếp mạng với các trạm làm việc
độc lập.
1.1.1. Định nghĩa cơ sở dữ liệu phân tán
Theo các tác giả trong [6],[17]: cơ sở dữ liệu phân tán là tập nhiều cơ sở
dữ liệu nhỏ có quan hệ logic với nhau và được phân tán tại nhiều nơi của một
mạng máy tính. Tại mỗi trạm của mạng có khả năng xử lý tự quản và có thể thực
hiện các ứng dụng cục bộ, mỗi một trạm cũng có thể tham gia vào ít nhất một
ứng dụng tồn cục, có u cầu truy xuất dữ liệu tại nhiều trạm.
Định nghĩa này nhấn mạnh ba khía cạnh quan trọng của cơ sở dữ liệu phân
tán là:


Trang 9

 Sự phân tán: dữ liệu không cư trú trên một vị trí mà được phân tán ở
nhiều nơi
 Ứng dụng cục bộ: mỗi nơi phải thực hiện ít nhất một ứng dụng cục bộ
 Ứng dụng toàn cục: mỗi nơi phải tham gia vào sự thực hiện của ít nhất
một ứng dụng toàn cục
Nếu dữ liệu chỉ tập trung tại một trạm (như hình 1.1 dưới đây) thì không
được coi là hệ thống cơ sở dữ liệu phân tán
Trạm 1
Trạm 2
Trạm 5

Mơi trường mạng

Trạm 4

Trạm 3

Hình 1.1. Hệ cơ sở dữ liệu tập trung trong môi trường mạng
Trạm 1
Trạm 2
Trạm 5
Mơi trường mạng

Trạm 4

Trạm 3

Hình 1.2. Mơi trường hệ cơ sở dữ liệu phân tán
Xét ví dụ sau:


Trang 10

Tổng Cơng ty Bảo minh (Bảo hiểm TPHCM) có các công ty thành viên
(chi nhánh) đặt tại các vị trí khác nhau trên tồn quốc. Tại mỗi cơng ty thành
viên 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)
và cơ sở dữ liệu thống kê của cơng ty thành viên đó. Mỗi máy tính với cơ sở dữ
liệu thống kê địa phương 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.
Các nút trong một mạng phân tán một mặt xử lý thông tin tại vị trí mà nó quản
lý, mặt khác nó cũng tham gia vào việc xử lý các yêu cầu về thơng tin cần truy

cập qua nhiều địa điểm. Ví dụ như việc lên danh sách tất cả nhân viên của tổng
công ty hoặc cập nhật các chứng từ kế tốn thu chi. u cầu này địi hỏi tất cả
các máy tính ở các cơng ty thành viên của tổng công ty đều phải hoạt động để
cung cấp thông tin.
1.1.2. Hệ quản trị cơ sở dữ liệu phân tán (Distribute DBMS)
Hệ Quản trị cơ sở dữ liệu phân tán (Distributed DBMS) là hệ thống phần
mềm cho phép quản lý các hệ cơ sở dữ liệu phân tán và làm cho sự phán tán trở
nên “trong suốt” đối với người sử dụng. Hệ quản trị cơ sở dữ liệu phân tán
(DDBMS – Distributed DBMS) hổ trợ tạo lập và bảo trì các CSDL phân tán.
Nhiều hệ thống CSDL phân tán được thương mại hóa đã được phát triển bởi các
nhà cung cấp các quản trị cơ sở dữ liệu tập trung. Các hệ thống này bao gồm các
thành phần mới để mở rộng các khả năng của các DBMS tập trung bằng cách hổ
trợ sự truyền thông và sự hợp tác giữa các hệ quản trị CSDL được cài đặt tại các
nơi khác nhau của một mạng máy tính. Các thành phần phần mềm cần thiết để
xây dựng một CSDL phân tán là:
 Thành phần quản trị CSDL (DB – Database management component)
 Thành phần truyền thông dữ liệu (DC – Data Communication
component)


Trang 11

 Từ điển dữ liệu (DD – Data Dictionary) được mở rộng để biễu diễn
thông tin về sự phân tán dữ liệu trong mạng.
 Thành phần CSDL phân tán (DDB – Distribute Database)
Chúng ta dùng thuật ngữ “hệ quản trị CSDL phân tán” để nói đến tập
hợp bốn thành phần trên, dùng thuật ngữ “hệ quản trị CSDL” để nói đến tập
hợp các thành phần phục vụ cho việc quản lý một CSDL không phân tán, tức
là các thành phần DB, DC và DD.
DB

CSDL 1

DC

DB
CSDL 2

DDB

DD
DC
DD

DDB

Hình 1.3. Các thành phần của DDBMS
Một đặc tính quan trọng khác của các DDBMS là sự thuần nhất
(homogeneous) hoặc không thuần nhất (heterogeneous). Tính thuần nhất và
tính khơng thuần nhất có thể được xem xét ở các mức khác nhau trong CSDL
phân tán: phần cứng, hệ điều hành, và các DBMS cục bộ. Thuật ngữ
“DDBMS thuần nhất” nói đến một DDBMS có các DBMS tại mỗi nơi giống
nhau, ngay cả khi các máy tính và hệ điều hành khác nhau.
Một DDBMS khơng thuần nhất phải sử dụng ít nhất hai DBMS khác
nhau. Các DDBMS khác nhau cịn có thêm vấn đề chuyển đổi giữa các mơ
hình dữ liệu khác nhau của các DBMS cục bộ khác nhau, phức tạp hơn so với
các DDBMS thuần nhất. Do đó việc phát triển một cơ sở dữ liệu phân tán từ
trên xuống mà khơng có một hệ thống đã tồn tại trước thì sẽ thuận lợi cho việc
phát triển một hệ thống thuần nhất. Tuy nhiên động cơ thúc đẩy cho việc tạo
lập một cơ sở dữ liệu phân tán là sự cần thiết của việc tích hợp các cơ sở dữ



Trang 12

liệu đã có trước, trong trường hợp này cần phải phát triển một DDBMS khơng
thuần nhất, có khả năng xây dựng cái nhìn tồn cục về CSDL. Như vậy ta có
định nghĩa lại cơ sở dữ liệu phân tán thuần nhất và không thuần nhất như sau:
 Cơ sở dữ liệu phân tán thuần nhất: Cơ sở dữ liệu phân tán có được
bằng cách chia một cơ sở dữ liệu thành một tập các cơ sở dữ liệu địa phương
(cục bộ), mỗi cơ sở dữ liệu này được quản lý bởi cùng hệ quản trị cơ sở dữ liệu
 Cơ sở dữ liệu phân tán không thuần nhất: Cơ sở dữ liệu phân tán có
được bằng cách tích hợp vào một cơ sở dữ liệu duy nhất một tập các cơ sở dữ
liệu địa phương được quản lý bởi các hệ quản trị cơ sở dữ liệu khác nhau
Nếu xây dựng cơ sở dữ liệu phân tán từ cơ sở dữ liệu đã tồn tại thì được
xây dựng quản lý bởi các hệ quản trị CSDL khác nhau
Nếu xây dựng từ đầu thì nên xây dựng hệ CSDL phân tán thuần nhất
1.1.3. Mơ hình kiến trúc của hệ quản trị cơ sở dữ liệu phân tán
1. Hệ thống Client/Server
Đặc trưng của hệ này là chức năng của hệ thống được chia làm hai lớp:
 Chức năng đại lý – server function
 Chức năng khách hàng – client function.
Trong hệ thống khách/đại lý các thao tác xử lý dữ liệu đáp ứng yêu
cầu của khách hàng đều được thực hiện bởi các chức năng đại lý, chỉ có kết
quả được gửi trả cho khách hàng như mơ hình 1.4.
Hệ client/server có ưu điểm là xử lý dữ liệu tập trung, trên đường
truyền chỉ có các gói tin yêu cầu (câu hỏi) và các kết quả đáp ứng câu hỏi,
giảm tải được khối lượng truyền tin trên mạng kết hợp với thiết bị tại đại lý
rất mạnh sẽ tăng tốc độ xử lý dữ liệu của cả hệ thống.


Hệ điều hành


Trang 13

Giao

Chương

diện

trình ứng

người

dụng

...

dùng
Client DBMS
Phần mềm dùng chung

SQL

Result

Query

relation
Phần mềm mạng dùng chung
Kiểm soát ngữ nghĩa dữ liệu

Tối ưu truy vấn
Điều khiển các giao dịch
Điều khiển phục hồi
Hổ trợ xử lý thực thi
Hệ điều hành

Cơ sở dữ liệu

Hình 1.4. Kiến trúc Client/Server
2. Hệ thống phân tán Peer to Peer
Đặc điểm nổi bật của hệ thống này là dữ liệu được tổ chức ở các nút có
chức năng như nhau, đồng thời sự tổ chức dữ liệu ở các nút này lại có thể rất khác
nhau, từ đó cần phải có:
 Định nghĩa dữ liệu tại mỗi vị trí: tại mỗi nút phải xây dựng lược đồ
dữ liệu cục bộ LIS (Local Internal Schema)


Trang 14

 Mơ tả cấu trúc logic tồn cục: Lược đồ khái niệm tồn cục GCS
(Global Conceptual Schema).
 Mơ tả cấu trúc logic tại mỗi vị trí, điều nảy xảy ra do nhân bản và phân
đoạn, gọi là lược đồ khái niệm cục bộ LCS (Local Conceptual Schema).

Hình 1.5 Kiến trúc Peer to Peer
 Mô tả cấu trúc dữ liệu của các ứng dụng gọi là lược đồ ngoại giới ES
(External Schema).


Trang 15


Cấu trúc của hệ thống bao gồm hai thành phần chính: Bộ phận tiếp nhận
người dùng (User Processor) và bộ phận xử lý dữ liệu (Data Processor). Hai
modul này được đặt chung trên mỗi máy chứ không tách biệt như hệ thống
khách/đại lý.
Các chức năng cơ bản của từng modul như sau:
 User Interface Handler – Giao tiếp người sử dụng: Diễn dịch yêu
cầu, định dạng kết quả.
 Semantic Data Controler – Kiểm soát dữ liệu ngữ nghĩa: Dựa vào
lược đồ khái niệm toàn cục để kiểm tra câu vấn tin có thực hiện được hay khơng.
 Global Query Optimizer – Tối ưu hóa câu hỏi tồn cục: Định ra
chiến lược thực thi tốt nhất trên các nút.
 Global Execution Monitor – Điều khiển thực thi câu vấn tin toàn cục.
 Local Query Processor – Xử lý câu hỏi cục bộ
 Local Recovery Manager – Quản lý khôi phục cục bộ: Quản lý sự
nhất quán khi có sự cố.
 Run-Time Support Processor – Bộ phận hỗ trợ thực thi: Quản lý truy
xuất cơ sở dữ liệu.
1.2. Các đặc điểm của cơ sở dữ liệu phân tán so với cơ sở dữ liệu tập trung
1.2.1. Điều khiển tập trung
Trong cơ sở dữ liệu phân tán khái niệm này không được nhấn mạnh, khả
năng điều khiển tập trung phụ thuộc vào kiến trúc của cơ sở dữ liệu phân tán,
chúng ta có thể nhận biết được một cấu trúc điều khiển trong đó có người quản
trị cơ sở dữ liệu tồn cục (global database administrator) mà người này có trách
nhiệm chính về toàn bộ cơ sở dữ liệu, và những người quản trị cơ sở dữ liệu cục
bộ (local database administrator) mà họ có trách nhiệm trên các cơ sở dữ liệu cục
bộ tại các trạm của họ.


Trang 16


Tuy nhiên những người quản trị cơ sở dữ liệu cục bộ có thể có một mức tự
trị cao, cao đến mức khơng cần có người quản trị cơ sở dữ liệu toàn cục và sự
phối hợp giữa các nơi được thực hiện bởi chính những người quản trị cục bộ, đó
chính là tính tự trị vị trí.
Các cơ sở dữ liệu phân tán có thể khác nhau rất nhiều về mức độ tự trị vị
trí từ hồn tồn tự trị đến hầu như điều khiển tập trung.
1.2.2. Độc lập dữ liệu
Độc lập dữ liệu là tổ chức của dữ liệu độc lập với người lập trình ứng
dụng, tức là các chương trình ứng dụng khơng bị thay đổi về tổ chức vật lý của
dữ liệu, tính đúng đắn của các chương trình khơng bị ảnh hưởng bởi việc di
chuyển dữ liệu từ một nơi này đến một nơi khác.
Trong cơ sở dữ liệu phân tán, độc lập dữ liệu có tầm quan trọng như trong
các cơ sở dữ liệu truyền thống, tuy nhiên một khía cạnh mới được đưa vào trong
khái niệm thông thường của độc lập dữ liệu, được gọi là tính trong suốt phân tán,
nhờ tính trong suốt mà các chương trình có thể được viết giống như khi không
được phân tán.
1.2.3. Giảm dư thừa
Trong cơ sở dữ liệu truyền thống dư thừa được giảm vì hai nguyên nhân
sau:
 Do sự mâu thuẩn giữa các bản sao của cùng một dữ liệu được tự động
tránh vì thực tế chỉ có một bản sao và tiết kiệm không gian lưu trữ. Trong cơ sở
dữ liệu phân tán, có nhiều lý do để xem dư thừa dữ liệu là đặc điểm cần thiết:
 Do đó việc giảm dư thừa đòi hỏi một sự ước lượng định giá khá phức
tạp, và việc sao bản là tỉ lệ thuận với việc tăng số lượng thực hiện các truy nhập
sửa đổi dữ liệu vì khi thực hiện truy nhập sửa đổi dữ liệu trên một dữ liệu chúng
ta đồng thời phải sửa đổi dữ liệu trên các bản sao của dữ liệu đó.
1.2.4. Các lợi ích của cơ sở dữ liệu phân tán



Trang 17

1. Bảo đảm cơ cấu tổ chức không tập trung:
Do nhiều tổ chức phân bố trên các vị trí địa lý khác nhau như Công ty gồm
nhiều chi nhánh đặt tại nhiều nơi, do đó để tổ chức hệ thống thông tin tương ứng
với cơ cấu tổ chức như vậy thì vấn đề phát triển cơ sở dữ liệu phân tán là điều rất
cần thiết, đồng thời có thể làm giảm chi phí so với việc tổ chức để có các trung
tâm máy tính tập trung.
2. Bảo đảm kết nối các cơ sở dữ liệu đã tồn tại:
Khi các cơ sở dữ liệu cục bộ đã được xây dựng và tồn tại trong một tổ
chức có nhu cầu cần phải thực hiện việc kết nối và xây dựng các ứng dụng tồn
cục thì cơ sở dữ liệu phân tán là giải pháp lựa chọn tự nhiên và được tạo từ dưới
lên từ các cơ sở dữ liệu cục bộ đã tồn tại, tuy vậy việc tái cấu trúc này sẽ cần sự
nổ lực ít hơn so với việc tạo mới hoàn toàn một cơ sở dữ liệu tập trung
3. Bảo đảm sự lớn mạnh gia tăng:
Khi một tổ chức phát triển mạnh thêm do có thêm các đơn vị tổ chức mới
(như thêm các chi nhánh mới, thêm các cơng ty con mới, thêm kho hàng mới...)
thì cơ sở dữ liệu phân tán hổ trợ dễ dàng cho sự gia tăng phát triển này của các
đơn vị tổ chức. So với cơ sở dữ liệu tập trung thì qui mô ban đầu của hệ thống
phải thận trọng để mở rộng vì có thể sẽ ảnh hưởng nhiều đến các ứng dụng mới
và các ứng dụng đang tồn tại và ảnh hưởng đến chi phí thực hiện mở rộng rất
khó thấy và có thể tốn kém nhiều khi thực hiện.
4. Giảm chi phí truyền thơng:
Trong một cơ sở dữ liệu phân tán về mặt địa lý các ứng dụng cục bộ làm
giảm chi phí truyền thơng so với cơ sở dữ liệu tập trung
5. Cân đối hiệu năng:
Vì có nhiều bộ xử lý độc lập do đó hiệu suất được nâng cao thơng qua cơ
chế song song hóa mức độ cao. Nghiên cứu này có thể áp dụng cho bất kỳ hệ
thống đa xử lý nào chứ không [hải chỉ áp dụng cho CSDL phân tán.



Trang 18

Tuy nhiên các CSDL phân tán có ưu điểm trong trường hợp sự phân rã dữ
liệu phản ánh các tiêu chí phụ thuộc ứng dụng mà các tiêu chí này làm cực đại
hóa tính cục bộ của ứng dụng. Bằng cách này các bộ xử lý ít liên lạc với nhau.
Tải được dùng chung giữa các bộ xử lý khác nhau và các hiện tượng cổ chai
nguy kịch chẳng hạn như mạng truyền thông hoặc các dịch vụ chung của toàn bộ
hệ thống sẽ được tránh khỏi. Hiệu quả này là kết quả của khả năng xử lý tự trị
đối với các ứng dụng cục bộ mà đã được nói đến trong định nghĩa của CSDL
phân tán.
6. Độ tin cậy và tính sẵn sàng:
Cách tiếp cận CSDL phân tán nhất là với dữ liệu dư thừa có thể được sử
dụng để có được tính sẵn sàng và độ tin cậy cao. Tuy nhiên để có được mục tiêu
này là điều không phải dễ dàng và cần phải sử dụng các kỹ thuật mà hồn tồn
cịn chưa được thỏa thuận với nhau. Khả năng xử lý tự trị các nơi khác nhau tuy
khơng thể bảo đảm tồn bộ độ tin cậy cao của hệ thống nhưng nó bảo đảm đặc
tính suy biến. Nói cách khác các hư hỏng trong CSDL phân tán có thể xảy ra
nhiều hơn so với trong CSDL tập trung bởi vì số thành phần nhiều hơn nhưng
ảnh hưởng của mỗi hư hỏng bị hạn chế đối các ứng dụng sử dụng dữ liệu của nơi
hư hỏng và rất hiếm khi hệ thống bị ngưng hoàn toàn.
Các động cơ thúc đẩy ở trên đối với CSDL phân tán không phải là mới.
Tại sao sự phát triển của hệ thống CSDL chỉ mới bắt đầu? Lý do là:
Sự phát triển hiện nay của các máy tính nhỏ cung cấp nhiều khả năng có
mức chi phí thấp so với máy tính lớn trước đây sẽ hổ trợ phần cứng cần thiết để
phát triển các hệ thống thông tin phân tán.
Ngồi ra cơng nghệ CSDL phân tán dựa trên hai công nghệ khác nhau đã
được phát triển thành nền tảng vững chắc trong những thập niên 70 đó là cơng
nghệ mạng máy tính và cơng nghệ CSDL, đó là cơng việc phức tạp để xây dựng
CSDL phân tán ở trên một mạng máy tính và một tập hợp các hệ quản trị CSDL



Trang 19

cục bộ tại mỗi nơi nó sẽ khơng khả thi nếu khơng có các khối xây dựng có sẵn
này.
7. Bảo đảm tính tự trị tại các trạ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
1.2.4 Một số nhược điểm khi sử dụng hệ phân tán
Hiện nay chưa có cơng cụ hoặc phương pháp nào giúp người dùng thay
đổi từ cơ sở dữ liệu tập trung sang phân tán. Nghiên cứu về cơ sở dữ liệu phân
tán không thuần nhất và sự thống nhất cơ sở dữ liệu là hướng nghiên cứu để giải
quyết khó khăn này.
Ngồi ra vấn đề bảo mật trong cơ sở dữ liệu phân tán khó khăn hơn trong
cơ sở dữ liệu tập trung. Xây dựng cơ sở dữ liệu phân tán phức tạp hơn cơ sở dữ
liệu tập trung.
1.3. Kiến trúc tham khảo dùng cho các cơ sở dữ liệu phân tán
Hình 1.6 bên dưới cho thấy một kiến trúc tham khảo dành cho CSDL phân
tán. Kiến trúc này không thực hiện tường minh cho tất cả các cơ sở dữ liệu phân
tán, tuy nhiên các mức của nó thích hợp về mặt ý niệm để hiểu tổ chức của một
cơ sở dữ liệu phân tán bất kỳ
 Sơ đồ tổng thể: định nghĩa tất cả các dữ liệu lưu trữ trong cơ sở dữ liệu
phân tán. Trong mô hình quan hệ sơ đồ tổng thể chính là tập các quan hệ tổng
thể hay nói cách khác đây chính là quan hệ toàn cục R
 Sơ đồ phân đoạn: mỗi quan hệ tổng thể có thể chia thành vài phần
không gối lên nhau được gọi là đoạn hay đoạn. Các đoạn là những phần luận lý
của các quan hệ toàn cục, mà về mặt vật lý chúng được đặt tại một hoặc ở nhiều
nơi của mạng. Có nhiều cách khác nhau để thực hiện sự phân chia này. ánh xạ
một nhiều giữa sơ đồ tổng thể và các đoạn được định nghĩa trong sơ đồ phân
đoạn.



Trang 20

 Sơ đồ định vị: Các đoạn là các phần logic trong sơ đồ tổng thể được
định vị tại các vị trí vật lý trên một hoặc nhiều vị trí trên mạng. Sơ đồ định vị
định nghĩa các đoạn nào định vị tại vị trí vật lý nào. Ánh xạ được định nghĩa
trong lược đồ định vị sẽ xác định cơ sở dữ liệu phân tán là dư thừa (ánh xạ một nhiều) hay không dư thừa (ánh xạ một - một). Tất cả các đoạn thuộc cùng một
quan hệ toàn cục R được đặt tại cùng một nơi j sẽ tạo thành hình ảnh vật lý của
quan hệ toàn cục R tại nơi j.
Sơ đồ tổng thể

Sơ đồ phân
đoạn

Sơ đồ định vị

Sơ đồ quan niệm địa
phương 1

Sơ đồ quan niệm địa
phương 2

Sơ đồ quan niệm địa
phương n

Sơ đồ hệ quản trị
CSDL DBMS1

Sơ đồ hệ quản trị

CSDL DBMS2

Sơ đồ hệ quản trị
CSDL DBMSn

CSDL 2

CSDL n

CSDL 1

Hình 1.6 Một kiến trúc tham khảo dùng cho cơ sở dữ liệu phân tán


Trang 21

R1 1
R1

R2

R2 1
R1 2
R2 2

R3

R2 (trạm 2)

R2 3

R33

R4

R1

R3

R4 3

Quan hệ tồn
Các hình ảnh vật lý
Các phân đoạn
cục
Hình 1.7 Các đoạn và hình ảnh vật lý của một quan hệ tồn cục
Hình 1.7 cho thấy một ví dụ về mối liên kết giữa các loại đối tượng đã nói
trên
Một quan hệ toàn cục R được phân thành 4 đoạn R1, R2, R3, R4. Bốn đoạn
này được đặt một cách dư thừa tại 3 nơi của một mạng máy tính do đó tạo thành
3 hình ảnh vật lý R1 R2 R3.
Một đoạn đặt tại một nơi cho trước được gọi là bản nhân của đoạn này và
được ký hiệu bằng cách dùng tên quan hệ toàn cục và hai chỉ số (một chỉ số đoạn
và một chỉ số nơi). Ví dụ trong hình trên ký hiệu R2 3 là bản nhân của đoạn R2 đặt
tại nơi 3. Cuối cùng hai hình ảnh vật lý có thể giống nhau.
Trong trường hợp này chúng ta sẽ nói rằng một hình ảnh vật lý là một bản
nhân của một hình ảnh vật lý khác.


Trang 22


Kiến trúc được mơ tả ở hình 1.7 này cung cấp một cơ cấu tổ chức ý niệm
rất tổng quát. Đặc điểm của kiến trúc này: là phân đoạn dữ liệu, định vị dữ liệu,
điều khiển dư thừa và sự độc lập giữa các DBMS cục bộ.
Khái niệm phân đoạn dữ liệu tách biệt với khái niệm định vị dữ liệu. Sự
khác biệt này cho phép chúng ta phân biệt hai mức trong suốt phân tán khác
nhau được gọi là trong suốt phân đoạn và trong suốt định vị. Trong suốt phân
đoạn là mức trong suốt cao nhất cho phép người sử dụng hoặc người lập trình
ứng dụng làm việc trên các quan hệ toàn cục. Trong suốt vị trí là mức trong suốt
thấp hơn và địi hỏi người sử dụng và người lập trình ứng dụng làm việc trên các
đoạn thay vì trên quan hệ tồn cục tuy nhiên họ không biết các đoạn được đặt tại
nơi nào. Sự tách biệt giữa khái niệm về sự phân đoạn và sự định vị sẽ rất thuận
lợi trong thiết kế CSDL phân tán bởi việc xác định các phần dữ liệu thích hợp sẽ
khác với vấn đề định vị tối ưu.
Kiến trúc tham khảo cung cấp điều khiển dư thừa tường minh ở mức phân
đoạn, như ví dụ trên hình ảnh vật lý R2, R3 phủ lấp nhau nghĩa là chúng chứa dữ
liệu chung, định nghĩa các đoạn tách biệt khi xây dựng các khối hình ảnh vật lý
cho phép chúng ta tham chiếu tường minh đến phần phủ lấp này : đoạn được
nhân bản R2.
Kiến trúc trên cũng cho thấy sự độc lập giữa các DBMS cục bộ, đặc điểm
này được gọi là sự trong suốt ánh xạ cục bộ, trong hệ thống đồng nhất các lược
đồ độc lập vị trí có thể được định nghĩa bằng cách sử dụng cùng mơ hình dữ liệu
của các DBMS cục bộ do đó làm giảm độ phức tạp của ánh xạ này.
Một loại trong suốt liên quan chặt chẽ với trong suốt vị trí là trong suốt
nhân bản, có nghĩa là người sử dụng khơng biết là có sự nhân bản các đoạn. Rõ
ràng trong suốt nhân bản bao hàm trong suốt vị trí tuy nhiên trong một số trường
hợp người sử dụng khơng có trong suốt vị trí nhưng có trong sốt nhân bản (do đó


Trang 23


họ sử dụng một bản nhân riêng biệt và hệ thống làm các tác vụ tương ứng trên
các bản nhân khác)
1.4. Các loại phân đoạn dữ liệu
Việc chia một quan hệ thành nhiều quan hệ nhỏ hơn được gọi là phân
đoạn quan hệ.
Có các loại phân đoạn sau:
 Phân đoạn ngang (horizontal fragmentation)
 Phân đoạn dọc (vertical fragmentation)
Trước tiên chúng ta sẽ xét hai loại phân đoạn này một cách riêng biệt và
sau đó sẽ xét phân đoạn phức tạp hơn có thể có được bằng cách áp dụng sự kết
hợp của hai loại này. Việc phân đoạn là nhằm phân bố dữ liệu hợp lý giữa các
trạm cục bộ và phải đảm bảo cơ sở dữ liệu không bị thay đổi ngữ nghĩa trong
quá trình phân đoạn, tức là đảm bảo tính đúng đắn khi phân đoạn. Sau đây ta sẽ
xét các qui tắc này:
1. Điều kiện đầy đủ:
Nếu một quan hệ R được phân thành các đoạn R1, R2,.... ,Rn mỗi một mục
dữ liệu có thể được tìm thấy trong R thì nó cũng có thể được tìm thấy trong một
hoặc nhiều đoạn Ri. Đặc tính này giống như đặc tính phân rã bảo tồn nội dung,
nó đảm bảo dữ liệu trong quan hệ toàn cục được ánh xạ vào trong các đoạn mà
không bị mất. Lưu ý rằng trong phân đoạn ngang, mục dữ liệu (data item) là một
bộ, và trong trường hợp phân đoạn dọc, mục dữ liệu là một thuộc tính
 Phân đoạn ngang:
u  R,  i  [1,n]: u  Ri
 Phân đoạn dọc:
A  Attr(R),  i  [1,n]: A  Attr(Ri)
2. Điều kiện tái tạo:


×