Tổng quan về hệ quản trị cơ sở dữ liệu phõn tỏn

Một phần của tài liệu Cơ sở dữ liệu phân tán (Trang 38)

(Database Distributed Managment System)

2.6.1 Mở đầu

Một cỏch trực quan, một CSDL phõn tỏn là một bộ sưu tập cỏc loại dữ liệu cú liờn kết logic với nhau và được phõn bố vật lý trờn nhiều mỏy chủ của mạng mỏy tớnh. Khỏi niệm hệ CSDLPT bao gồm cả khỏi niệm CSDL và hệ quản trị CSDLPT.

Định nghĩa này nhấn mạnh hai khớa cạnh quan trọng của CSDLPT:

• Tớnh phõn tỏn: thực tế dữ liệu khụng cư trỳ trờn cựng một site, vỡ vậy cú thể phõn biệt một CSDLPT với cơ sở dữ liệu tập trung (CSDLTT).

• Sự tương quan logic: cỏc loại dữ liệu cú một số tớnh chất ràng buộc lẫn nhau, như vậy cú thể phõn biệt CSDLPT với tập cỏc CSDL địa phương hoặc với cỏc tệp lưu trữ trờn cỏc site khỏc nhaụ

Hệ quản trị CSDL phõn tỏn là hệ thống phần mềm cho phộp quản trị CSDL phõn tỏn và làm cho sự phõn tỏn đú là trong suốt đối với người sử dụng. Núi cỏch khỏc CSDL phõn tỏn là CSDL được phõn tỏn một cỏch vật lý nhưng được thống nhất tổ chức như là một CSDL duy nhất.

Như vậy sự phõn tỏn dữ liệu là trong suốt đối với người sử dụng. Việc quản lý cỏc dữ liệu phõn tỏn đũi hỏi mỗi trạm (site) cài đặt cỏc thành phần hệ thống sau:

• Thành phần quản trị CSDL (Database Management DM) • Thành phần truyền dữ liệu (Data Communication DC)

• Từ điển dữ liệu (Data Dictionary Đ): thụng tin về sự phõn tỏn dữ liệu trờn mạng • Thành phần CSDLPT (Distributed Database ĐB)

Cỏc dịch vụ của hệ thống trờn bao gồm: • Cỏc ứng dụng truy nhập CSDL từ xa . • Cung cấp cỏc mức trong suốt phõn tỏn.

• Hỗ trợ quản trị và điều khiển CSDL, bao gồm cỏc bộ cụng cụ, thu thập thụng tin từ cỏc trỡnh tiện ớch, cung cấp cỏch nhỡn tổng quan về cỏc file dữ liệu trờn mạng.

• Khả năng mở rộng với cỏc hệ thống khỏc nhau

Cỏc hệ QTCSDL phõn tỏn thường hỗ trợ về điều khiển tương tranh và khụi phục cỏc tiến trỡnh phõn tỏn. Khả năng truy cập từ xa cú thể thực hiện được bằng 2 cỏch.

Cỏch thứ nhất (hỡnh 2.12 a) trỡnh ứng dụng yờu cầu truy cập từ xạ Yờu cầu này được định tuyến tự động bởi ĐBMS tới mỏy chủ chứa dữ liệụ Được thực hiện tại mỏy chủ chứa cơ sở dữ liệu và gửi lại kết quả. về trạm yờu cầụ Cỏch tiếp cận này được sử dụng cho truy cập từ xa, trong suốt phõn tỏn cú thể thực hiện được bằng việc cung cấp cỏc file chung (global) và cỏc truy nhập trước đú cú thể địa chỉ hoỏ một cỏch tự động tới cỏc trạm ở xạ

Hỡnh 2.12 b chỉ ra một cỏch tiếp cận khỏc, chương trỡnh phụ thực hiện tại cỏc trạm ở xa (người lập trỡnh phải tự lập), cỏc kết quả trả lại cho chương trỡnh ứng dụng.

Hệ quản trị CSDL phõn tỏn hỗ trợ cả hai cỏch tiếp cận trờn. Mỗi một cỏch tiếp cận đều cú những thuận lợi và khú khăn riờng. Giải phỏp thứ nhất cung cấp khả năng trong suốt phõn tỏn cao hơn, trong khi giải phỏp thứ hai cú thể hiệu quả hơn nếu như cú rất nhiều chương trỡnắtngs dụng cựng yờu cầu truy nhõp, bởi vỡ cỏc chương trỡnh phụ cú thể thực hiện cỏc yờu cầu từ cỏc trạm ở xa và trả lại kết quả.

Hỡnh 2.11 Hệ quản trị CSDL phõn tỏn Databas Network Trỡnh quản lý cỏc ứng dụng Trỡnh quản lý dữ liệu phõn tỏn Trỡnh quản lý truyền thụng Hệ quản trị CSDL phõn tỏn Trỡnh quản lý cỏc ứng dụng Trỡnh quản lý dữ liệu phõn tỏn Trỡnh quản lý truyền thụng Hệ quản trị CSDL phõn tỏn Database Hỡnh 2.12a Truy nhập CSDL từ xa

Yờu cầu truy nhập

Chương trỡnh ứng dụng Hệ quản trị CSDL 1 2 1 5 Trả kết quả 6 Site 1 Hệ quản trị CSDL 2 CSDL 3 4 Site 2

2.6.2 Hệ quản trị CSDL phõn tỏn thuần nhất

CSDLPT cú được bằng cỏch chia một CSDL thành một tập cỏc CSDL cục bộ (Local) và được quản lý bởi cựng một hệ QTCSDL, trong hỡnh 2.13

CSDLPT cú thuần nhất hay khụng được phụ thuộc bởi cỏc yờu tố phần cứng, hệ điều hành và cỏc hệ quản trị CSDL cục bộ. Tuy nhiờn, hạn chế quan trọng tại hệ QTCSDL cục bộ, bởi vỡ nú phụ thuộc vào sự quản lý hệ điều hành mạng truyền thụng

2.6.3 Hệ quản trị CSDL phõn tỏn khụng thuần nhất

CSDLPT khụng thuần nhất được tớch hợp bởi một tập cỏc CSDL cục bộ được quản lý bởi cỏc hệ QTCSDL khỏc nhaụ Hệ QTCSDLPT khụng thuần nhất thờm việc chuyển đổi cỏc mơ hỡnh dữ liệu của cỏc hệ QTCSDL khỏc nhau để thống nhất việc quản lý. Hỡnh 14

Hỡnh 2.12b Truy nhập từ xa bằng chương trỡnh phụ Chương trỡnh ứng dụng Hệ quản trị CSDL 1 CSDL Site 1 Site 2 Chương trỡnh ứng dụng Hệ quản trị CSDL 2 ............. Hệ quản trị CSDL phõn tỏn Hệ QTCSDL Hệ QTCSDL Hệ QTCSDL Databa Databa Databa

Nếu việc phỏt triển CSDL phõn tỏn theo mơ hỡnh Top-down, khơng phụ thuộc vào hệ thống trước đú (hệ thống cỏc CSDL cục bộ), thỡ việc phỏt triển một hệ thuần nhất là tốt nhất. Tuy nhiờn, trong một số trường hợp cần xõy dựng CSDL phõn tỏn từ cỏc CSDL đó cú thỡ đũi hỏi phải phỏt triển một hệ khụng thuần nhất. Phương phỏp tốt nhất là tiếp cận từ dưới lờn (Bottum-up). Trỡnh quản lý dữ liệu phõn tỏn phải cung cấp cỏc giao diện trao đổi giữa cỏc hệ QTCSDL . Vấn đề quản trị CSDL phõn tỏn khụng thuần nhất rất khú khăn. 2.7 Mơ hỡnh kiến trỳc hệ quản trị cơ sở dữ liệu phõn tỏn

Cú ba kiểu kiến trỳc tham chiếu cho hệ quản trị CSDL phõn tỏn , đú là hệ Client Server, hệ quản trị CSDL phõn tỏn kiểu ngang hàng (Peer-to-Peer) và hệ đa CSDL.

Cỏc lựa chọn cài đặt một hệ quản trị CSDLđược tổ chức hệ thống theo cỏc đặc tớnh: (1) tớnh tự trị, (2) tớnh phõn tỏn, (3) tớnh hỗn hợp (khụng thuần nhất) của hệ thống.

2.7.1 Tớnh tự vận hành

Tớnh tự vận hành hay cũn gọi là tớnh tự trị, được hiểu là sự phõn tỏn quyền điều khiển. Là mức độ hoạt động độc lập của từng hệ quản trị CSDL riờng lẻ. Tớnh tự vận hành được biểu hiện qua chức năng của một số yếu tố, như sự trao đổi thụng tin giữa cỏc hệ thống thành viờn với nhau, thực hiện giao dịch độc lập/ khụng đụck lập và cú được phộp sửa đổi chỳng hay khụng. Yờu cầu của hệ thống tự vận hành được xỏc định theo nhiều cỏch. Vớ dụ, • Cỏc thao tỏc cục bộ của hệ quản trị CSDL riờng lẻ khụng bị ảnh hưỏng khi tham gia

hoạt động trong hệ đa CSDL (Multi Database System).

• Cỏc hệ quản trị CSDL xử lý và tối ưu truy vấn cũng khụng bị ảnh hưởng bởi thực thi truy vấn toàn cục truy nhập nhiều hệ CSDL.

• Tớnh nhất quỏn của hệ thống hoặc thao tỏc khụng bị ảnh hưởng khi cỏc hệ quản trị CSDL riờng lẻ kết nối hoặc tỏch rời khỏi tập cỏc CSDL.

Hỡnh 2.14 Kiến trỳc mơ hỡnh hệ QTCSDLPT khụng thuần nhất Hệ quản trị CSDL1 Hệ quản trị CSDL2 Hệ quản trị CSDL3

(A0, D2, H0)

(A2, D2, H1)

Phõn tỏn dữ liệu

Tớnh hỗn hợp

Tính tự trị

Hỡnh 2.15. Lựa chọn cài đặt hệ quản trị CSDL Mặt khỏc, xỏc định chiều của tớnh tự trị như sau:

1. Tự trị thiết kế: Mỗi hệ quản trị CSDL riờng lẻ cú thể sử dụng mơ hỡnh dữ liệu và kỹ thuật quản lý giao dịch theo ý muốn.

2. Tự trị truyền thụng: Mỗi hệ quản trị CSDL riờng lẻ tuỳ ý đưa ra quyết định của nú về loại thơng tin mà nú cần cung cấp cho cỏc hệ quản trị CSDL khỏc hoặc phần mềm điều khiển thực thi toàn cục của nú.

3. Tự trị thực thi: Mỗi hệ quản trị CSDL cú thể thực thi cỏc giao dịch được gửi tới nú theo bất kỳ cỏch nào mà nú muốn.

Ba lựa chọn xem xột ở trờn cho cỏc hệ thống tự trị khụng phải là những khả năng duy nhất, mà là ba lựa chọn phổ biến nhất.

2.7.2 Tớnh phõn tỏn dữ liệu

Tớnh phõn tỏn dữ liệu: Tớnh tự vận hành đề cập đến việc phõn tỏn quyền điều khiển, thỡ tớnh phõn tỏn dữ liệu đề cập đến dữ liệụ Hiển nhiờn, sự phõn tỏn vật lý của dữ liệu trờn nhiều vị trớ khỏc nhaụ Người sử dụng nhỡn dữ liệu bằng khung nhỡn dữ liệụ Cú hai cỏch phõn tỏn dữ liệu: phõn tỏn kiểu Client/Server và phõn tỏn kiểu ngang hàng. Kết hợp với cỏc tựy chọn khụng phõn tỏn, trục kiến trỳc cho ba loại kiến trỳc khỏc nhaụ

• Phõn tỏn kiểu Client/Server ngày càng phổ biến. Quản trị dữ liệu tại Server, Client cung cấp mụi trường ứng dụng và giao diện người sử dụng. Nhiệm vụ truyền thụng được chia sẻ giữa cỏc Client và Server. Hệ quản trị CSDL kiểu Client/Server là hệ phõn tỏn chức năng. Cú nhiều cỏchễuõy dựng, mỗi cỏch cung cấp một mức độ phõn tỏn

• Trong kiểu ngang hàng khơng cú sự khỏc biệt giữa chức năng Client và Server. Mỗi mỏy đều cú đầy đủ chức năng của hệ quản trị CSDL và cú thể trao đổi thụng tin với cỏc mỏy khỏc để thực hiện cỏc truy vấn và giao dịch. Cỏc hệ thống này cũng được gọi là phõn tỏn đầy đủ,

2.7.3 Tớnh hỗn hợp

Tớnh hỗn hợp: Từ khỏc biệt về phần cứng và cỏc giao thức mạng đến khỏc biệt trong cỏch quản lý dữ liệu, cú một số dạng hỗn hợp trong cỏc hệ phõn tỏn. Sự khỏc biệt lớn nhất liờn quan đến cỏc mơ hỡnh dữ liệu, ngụn ngữ truy vấn và giao thức quản lý giao dịch. Biểu diễn dữ liệu bằng nhiều mơ hỡnh khỏc nhau tạo ra tớnh hỗn hợp. Tớnh hỗn hợp trong ngụn ngữ truy vấn khụng chỉ bao gồm việc sử dụng cỏc dạng truy nhập dữ liệu khỏc nhau trong cỏc mơ hỡnh dữ liệu khỏc nhau , mà cũn bao gồm những khỏc biệt trong cỏc ngụn ngữ ngay cả khi sử dụng cựng một mơ hỡnh dữ liệụ Ngụn ngữ truy vấn khỏc nhau sử dụng cựng một mơ hỡnh dữ liệu thường chọn cỏc phương phỏp khỏc nhau để diễn tả cỏc yờu cầu giống nhau, vớ dụ, DB2 sử dụng SQL, trong khi INGRES sử dụng QUEL.

2.7.4 Cỏc kiểu kiến trỳc

Xem xột cỏc kiến trỳc trong hỡnh 2.15, bắt đầu từ gốc và di chuyển theo trục tự trị. Ký hiệu A là tự trị, D là phõn tỏn và H là hỗn hợp. Cỏc kiểu trờn trục tự trị được định nghĩa, A0 là biểu diễn tớch hợp chặt chẽ,A1 biểu diễn hệ bỏn tự trị và A2 biểu diễn hệ cụ lập. Trờn trục phõn tỏn, D0 nghĩa là khụng phõn tỏn, D1 là hệ Client/Server, và D2 là phõn tỏn ngang hàng. Trờn trục hỗn hợp, H0 xỏc định cỏc hệ thống thuần nhất, H1 là cỏc hệ hỗn hợp. Trong hỡnh 2.15 định nghĩa hai loại kiến trỳc: (A0, D2, H0) là hệ quản trị CSDL thuần nhất phõn tỏn (ngang hàng) và (A2, D2, H1) là phức hệ CSDLhỗn hợp, phõn tỏn ngang hàng. • Loại kiến trỳc (A0, D0, H0): Được gọi là hệ thống phức hợp (Composite System). Nếu

khụng phõn tỏn dữ liệu và hỗn hợp, thỡ hệ thống chỉ là một tập gồm nhiều hệ quản trị CSDL được tớch hợp về mặt lụgic. Phự hợp với cỏc hệ thống đa xử lý và tài nguyờn đều dựng chung. Kiểu này khụng xuất hiện nhiều trong thực tế

• Loại kiến trỳc (A0, D0, H1): Nếu hỗn hợp thỡ phải cú nhiều bộ quản lý dữ liệu hỗn hợp cú thể cung cấp một khung nhỡn tớch hợp cho người sử dụng. Trước đõy được thiết kế truy nhập tớch hợp CSDL mạng, phõn cấp và quan hệ trờn cựng một mỏy đơn.

• (A0, D1, H0):Trường hợp CSDL phõn tỏn khi cú một khung nhỡn tớch hợp về dữ liệu cung cấp cho người sử dụng. Hệ thống loại này thớch hợp cho phõn tỏn Client/Server. • (A0, D2, H0): Biểu diễn mụi trường phõn tỏn hoàn toàn trong suốt cung cấp cho người

sử dụng. Khụng phõn biệt giữa Client và Server, cung cấp đầy đủ cỏc chức năng.

• (A1, D0, H0): Là dạng cỏc hệ thống bỏn tự trị. Cỏc hệ thống thành viờn cú quyền tự trị nhất định trong cỏc hoạt động của chỳng. Kiến trỳc này sử dụng thiết lập bộ khung cho hai dạng kiến trỳc kế tiếp. Trong thực tế rất ớt sử dụng

• (A1, D0, H1): Là hệ thống hỗn hợp và tự trị., rất phổ biến hiện naỵ Một vớ dụ hệ thống loại này bao gồm một hệ quản trị CSDL quan hệ quản lý dữ liệu cú cấu trỳc, một hệ quản trị CSDL xử lý hỡnh ảnh tĩnh và một Server cung cấp videọ Để cung cấp hỡnh ảnh

tớch hợp cho người sử dụng, cần phải che dấu tớnh tự động và tớnh hỗn hợp của cỏc hệ thống thành viờn và thiết lập một giao diện chung.

• (A1, D1, H1): Trong cỏc hệ thống loại này, cỏc hệ thống thành viờn được cài đặt trờn cỏc mỏy khỏc nhaụ Được gọi là cỏc hệ quản trị CSDL hỗn hợp phõn tỏn. Đặc điểm phõn tỏn ớt quan trọng hơn so với tớnh tự trị và hỗn hợp. Cỏc hệ quản trị CSDL kiểu (A0, D1, H0) và (A0, D2, H0) cú thể giải quyết những vấn đề khú khăn khi phõn tỏn dữ liệu

• (A2, D0, H0): Đặc điểm của cỏc hệ thống loại này là cỏc thành viờn khơng cú khỏi niệm thỏa hiệp và khụng biết cỏch liờn lạc với nhaụ Nếu khơng cú tớnh hỗn hợp hoặc tớnh phõn tỏn thỡ một phức hệ CSDL chỉ là một tập cỏc CSDL tự trị được kết nối với nhaụ Hệ quản trị phức hệ CSDL cho phộp quản lý tập hợp cỏc CSDL tự trị và cho phộp truy nhập trong suốt đến nú. Dạng hệ thống này ớt thực tế.

• (A2, D0, H1): Hệ thống loại này cú tớnh thực tế cao, hơn cả (A1, D0, H1).Cú khả năng xõy dựng cỏc ứng dụng truy nhập dữ liệu từ nhiều hệ thống lưu trữ khỏc nhau với cỏc đặc tớnh khỏc nhaụ Cú thể là những hệ thống lưu trữ khụng phải là hệ quản trị CSDL và khụng được thiết kế phỏt triển cú thể tương tỏc với cỏc phần mềm khỏc. Cũng như trong hệ (A1, D0, H1), giả thiết cỏc hệ thống thành viờn khơng tham gia vào tồn bộ hệ thống. • (A2, D1, H1) và (A2, D2, H1): Hai trường hợp này đều biểu diễn cho trường hợp cỏc

CSDL thành viờn tạo ra phức hệ CSDLđược phõn tỏn trờn mọt số vị trớ – gọi là cỏc phức hệ CSDL phõn tỏn. Cả hai trường hợp cỏc giải phỏp phõn tỏn và xử lý tương tỏc tương tự nhaụ Trong trường hợp phõn tỏn Client/Server (A2, D1, H1), cỏc vấn đề tương tỏc được trao cho hệ thống trung gian (Miđleware System), tạo ra kiến trỳc ba tầng.

Tổ chức của một phức hệ CSDL phõn tỏn và việc quản lý nú hồn tồn khỏc với cỏc hệ quản trị CSDL phõn tỏn. Sự khỏc biệt cơ bản của chỳng là ở mức độ tự trị của cỏc chương trỡnh quản lý dữ liệu cục bộ. Cỏc phức hệ CSDL phõn tỏn hoặc tập trung đều cú thể thuần nhất hoặc hỗn hợp, khụng thuần nhất

Sự phõn tỏn, tớnh hỗn hợp và tớnh tự trị của CSDL là cỏc vấn đề liờn quan đến nhaụ Mục tiờu của tài liệu là cỏc hệ phõn tỏn nờn chỳ ý nhiều hơn tớnh hỗn hợp và tớnh tự trị. 2.8 Kiến trỳc hệ quản trị cơ sở dữ liệu phõn tỏn

Phần này sẽ xem xột chi tiết ba kiến trỳc hệ thống trong số cỏc kiến trỳc đó được trỡnh bày ở trờn. Ba loại kiến trỳc là:

• Hệ Client/Server, bỏ qua cỏc vấn đề hỗn hợp và tự trị cú dạng (Ax, D1, Hy). • Cỏc CSDL phõn tỏn, ứng với (A0, D2, H0).

• Hệ đa CSDL, ứng với (A2, Dx, Hy).

2.8.1 Cỏc hệ Client/Server

Cỏc hệ quản trị CSDL Client/Server cung cấp kiến trỳc hai lớp chức năng Server và chức năng Client, nhằm tạo ra sự dễ dàng trong việc quản lý tớnh phức tạp của cỏc hệ quản trị CSDL hiện đại và tớnh phức tạp của việc phõn tỏn dữ liệu

ngoài ứng dụng và giao diện người sử dụng, cú một module hệ quản trị CSDL Client trỏch nhiệm quản lý dữ liệu và khúa giao dịch được gửi đến Client. Client và Server trao đổi với nhau bởi cỏc cõu lệnh SQL. Cụ thể hơn, Client chuyển truy vấn SQL đến Server, Server sẽ thực hiện và trả lại kết quả cho Client.

Loại kiến trỳc Client/Server đơn giản chỉ cú một Server được truy nhập bởi nhiều Client, gọi là đa Client-một Server. Việc quản lý dữ liệu khụng khỏc so với CSDL tập trung. CSDL được lưu chỉ trờn Server và cú phần mềm quản lý nú. Tuy nhiờn, sự khỏc biệt quan trọng so với cỏc hệ thống tập trung là cỏch thực thi giao dịch và quản lý bộ nhớ Cachẹ

Một phần của tài liệu Cơ sở dữ liệu phân tán (Trang 38)