Tổng quan về hệ cơ sở dữ liệu phân tán.DOC

4 4.4K 43
Tổng quan về hệ cơ sở dữ liệu phân tán.DOC

Đang tải... (xem toàn văn)

Thông tin tài liệu

Tổng quan về hệ cơ sở dữ liệu phân tán

Trang 1

Phần I: Tổng quan về hệ cơ sở dữ liệu phân tán

I- Mở đầu

Những năm gần đây, các hệ thống cơ sở dữ liệu phân tán (CSDLPT) đã trở thành một lĩnh vực quan trọng của công nghệ thông tin và cũng dễ thấy trớc tầm quan trọng đó sẽ tăng nhanh Có hai lý do để khảng định xu thế này; đó

là: cơ cấu tổ chức và phát triển công nghệ; Các CSDLPT khắc phục đợc nhiều nhợc điểm của các hệ thống cơ sở dữ liệu tập trung (CSDLTT ) và phù hợp với cấu trúc phân tán của nhiều tổ chức Sau đây là một định nghĩa điển hình của

một CSDLPT: "Một CSDLPT là một bộ su tập các dữ liệu về mặt logic thuộccùng một hệ thống nhng đợc trải ra trên các trạm của một mạng máy tính "

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

1/ Tính phân tán: nghĩa là dữ liệu không c trú tại cùng một trạm (bộ xử lý)

và nh vậy ta có thể phân biệt một CSDLPT với một CSDLTT

2/ Tính tơng quan logic: nghĩa là dữ liệu có một số tính chất liên kết chúng

với nhau, và nh vậy ta có thể phân biệt một hệ CSDLPT với một tập các CSDL cục bộ ( địa phơng) đợc c trú riêng rẽ tại nhiều trạm của một mạng máy tính Với hai tính chất: phân tán và tơng quan logic, đợc định nghĩa còn khá mơ hồ ở trên thì không phải bao giờ ta cũng có thể phân biệt đợc những trờng hợp nào thực sự là CSDLPT và những trờng hợp nào thì không.

Để đi tới một định nghĩa chính xác hơn, ta hãy xét một số thí dụ:

Thí dụ 1: Hãy xét một hệ thống Ngân hàng gồm 3 chi nhánh, đợc đặt tại các

vị trí khác nhau Mỗi chi nhánh có một máy tính điều khiển các đầu cuối

(terminal) và một CSDL gồm các tài khoản khách hàng (xem hình 1) Mỗi máy

tính và CSDL hình thành một trạm của hệ CSDLPT, các máy tính đợc nối với nhau qua mạng truyền thông Trong thao tác thông thờng, các ứng dụng đợc yêu cầu từ các đầu cuối của một chi nhánh chỉ cần truy cập tới CSDL của chi nhánh đó và đợc thực hiện tại máy tính của chi nhánh; Các ứng dụng đó đợc gọi là các ứng dụng cục bộ Một thí dụ của ứng dụng cục bộ là giao dịch rút hoặc gửi tiền của khách hàng đợc thực hiện trên các tài khoản đợc lu trữ tại cùng một chi nhánh.

Hình 1 CSDLPT trên mạng rộng

Với tình huống đợc mô tả ở trên, thật khó có thể xác định đợc tính tơng quan logic giữa các CSDL và nh vậy mô hình CSDL đa ra trong thí dụ là một hệ CSDLPT hay chỉ là một tập các CSDL cục bộ ( địa phơng )?

Sự khác biệt là ở chỗ liệu có tồn tại hay không một số ứng dụng truy cập tới dữ liệu tại nhiều chi nhánh Những ứng dụng đó đợc gọi là các ứng dụng toàn thể hay các ứng dụng phân tán.

Một thí dụ điển hình của ứng dụng toàn thể là việc chuyển vốn từ một tài khoản cuả một chi nhánh sang một tài khoản của một chi nhánh khác; ứng dụng này đòi hỏi cập nhật các CSDL ở hai trạm khác nhau, và điều quan trọng

Nguyễn Văn Xuân - cib

Trang 2

hơn là phải bảo đảm cả hai phép cập nhật đó phải hoặc đợc thực hiện đầy đủ,hoặc không thực hiện gì.

Trong thí dụ1, các máy tính có vị trí địa lý khác nhau Tuy nhiên, hệ CSDLPT cũng có thể đợc xây dựng trên các mạng cục bộ.

Thí dụ 2: Xét hệ thống Ngân hàng nh ở thí dụ 1( với cùng các ứng dụng )nhng với cấu hình hệ thống đợc cho trong hình 2 Bộ xử lý cùng với các CSDL

của chúng đợc chuyển từ các chi nhánh về tập trung thành một mạng cục bộ, nghĩa là mỗi bộ xử lý và CSDL của nó tạo thành một trạm của mạng cục bộ Các đầu cuối của các nhân viên giao dịch tại các chi nhánh đợc nối với các máy tính tơng ứng trên mạng cục bộ qua kênh điện thoại.

Rõ ràng là cấu trúc vật lý của các kết nối hệ thống đã thay đổi so với thí dụ 1, nhng các khía cạnh đặc trng của kiến trúc là không đổi Nói khác đi, vẫn là cùng các máy tính thực hiện cùng các ứng dụng truy cập cùng các CSDL Một ứng dụng là cục bộ trong thí dụ 1 vẫn còn là cục bộ trong thí dụ này, nhng không phải là đối với sự phân tán địa lý của máy tính thực hiện nó mà là chỗ chỉ bao gồm một máy tính với CSDL riêng của nó.

Nếu xét các ứng dụng ở khía cạnh toàn thể, thì có thể xem đây là một CSDLPT vì rằng mọi đặc điểm đặc trng đợc trình bày ở thí dụ 1 vẫn đợc giữ nguyên cho dù CSDLPT đợc cài đặt trên mạng cục bộ thay cho mạng địa lý, nhng với khả

năng truyền dẫn thông tin và độ tin cậy cao hơn Điều này, trong chừng mực nào đó, có thể làm thay đổi giải pháp thực hiện của một số bài toán.

Thí dụ 3: Vẫn xét Ngân hàng nh ở trên nhng với cấu hình hệ thống đợc cho

ở hình 3 Dữ liệu của các chi nhánh đợc phân bố ( phân tán ) trên ba máy tính "phía sau " thực hiện các chức năng quản trị CSDL Quá trình ứng dụng đợc thực hiện bởi một máy tính khác đòi hỏi các dịch vụ truy cập CSDL từ các máy tính phía sau nếu cần thiết.

Ta không xem kiểu hệ thống này là một SDLPT tuy rằng dữ liệu đợc phân bố vật lý trên nhiều bộ xử lý khác nhau, sự phân tán của chúng không thích đáng trên phơng diện ứng dụng Cái ta thiếu ở đây là sự tồn tại của các ứng dụng cục bộ, hiểu theo nghĩa là cấu trúc của hệ thống không cho phép một máy tính nào có thể thực hiện một ứng dụng bởi chính nó.

trên cơ sở phân tích các thí dụ trên ta đi tới định nghĩa sau:

Một CSDLPT là một bộ su tập các dữ liệu đợc phân bố trên các máy tínhkhác nhau của một mạng máy tính Mỗi trạm của mạng có khả năng xử lý tựtrị và có thể thực hiện các ứng dụng cục bộ Mỗi trạm cũng tham gia vào việcthực hiện ít nhất một ứng dụng toàn thể đòi hỏi truy cập dữ liệu ở nhiều trạmbằng cách sử dụng hệ thống truyền thông.

II-xu thế phát triển của hệ CSDLPT

Nh đã nêu ở phần mở đầu, CSDLPT ngày càng đợc phát triển và ứng dụng rộng rãi trong công nghệ thông tin Những động cơ chính thúc đẩy sự phát triển đó là:

1- Cơ cấu tổ chức và vấn đề kinh tế

Các động cơ về cơ cấu tổ chức và kinh tế có khả năng là nguyên nhân quan trọng nhất cho việc phát triển CSDLPT.

Đối với các tổ chức là phi tập trung thì việc xây dựng một CSDLPT là phù hợp một cách tự nhiên với cấu trúc của các tổ chức đó Với những phát triển

Trang 3

mới đây của công nghệ máy tính việc xây dựng các trung tâm lớn, tập trung đã trở thành một vấn đề cần bàn luận một cách nghiêm túc trớc khi đa ra quyết định thành lập.

CSDLPT là giải pháp tự nhiên khi đã có tồn tại nhiều CSDL trong một tổ chức và nảy sinh nhu cầu thực hiện các ứng dụng toàn cục Trong trờng hợp đó, CSDL phân tán đợc tạo lập từ dới lên, nghĩa là từ các CSDL cục bộ hiện có Quá trình này có thể đòi hỏi ít nhiều sự cấu trúc lại cục bộ Nhng chi phí bỏ ra cho việc cấu trúc lại sẽ nhỏ hơn nhiều so với chi phí để tạo sinh một CSDLTT mới hoàn toàn.

2- Sự tăng trởng

Nếu một tổ chức mở rộng với sự thêm vào các đơn vị tổ chức tự trị tơng đối ( chẳng hạn: các chi nhánh mới, các nhà kho mới v v ) thì cách tiếp cận CSDLPT cho phép một sự tăng trởng nhịp nhàng với tác động ít nhất lên các đơn vị sẵn có Trong khi đó, với cách tiếp cận tập trung thì hoặc là hệ thống thiết kế ban đầu phải tính tới sự phát triển trong tơng lai (điều này rất khó thấy trớc và thờng cài đặt tốn kém), hoặc là sự tăng trởng có tác động lớn không những lên các đơn vị mới mà còn cả lên các đơn vị sẵn có.

3- Giảm chi phí truyền thông

Trong một CSDLPT về mặt địa lý nh CSDL trong thí dụ 1, sự kiện nhiều ứng dụng là cục bộ rõ ràng giảm chi phí truyền thông so với CSDL tập trung Do đó, việc cực đại hoá tính cục bộ của các ứng dụng là một trong những mục tiêu hàng đầu trong việc thiết kế CSDLPT.

4- Hiệu năng

Sự tồn tại nhiều quá trình tự trị làm tăng hiệu năng thông qua một mức độ xử lý song song cao Nhận định này đợc áp dung nói chung cho bất kỳ một hệ đa xử lý nào, không riêng cho CSDLPT Chẳng hạn, cấu hình trong thí dụ ở hình.3 cũng cho xử lý song song, nhng nó không đợc xem là CSDLPT Tuy nhiên, CSDLPT có u việt ở chỗ sự phân tách dữ liệu phản ánh tiêu chuẩn phụ thuộc ứng dụng làm cực đại tính cục bộ của ứng dụng Theo cách đó, tác động qua lại giã 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à những tắc nghẽn trong mạng truyền thông hay các dịch vụ chung cho toàn hệ thống là tránh đợc Đó là kết quả của khả năng xử lý tự trị đối với các ứng dụng cục bộ nh đã đợc phát biểu trong định nghĩa của CSDLPT.

5- Độ tin cậy và sự sẵn dùng ( availability)

Cách tiếp cận CSDLPT, đặc biệt với dữ liệu d thừa, cũng đợc sử dụng để có độ tin cậy và sự sẵn dùng cao hơn Tuy nhiên, đạt đợc mục đích đó là vấn đề không đơn giản và đòi hỏi sử dụng các kỹ thuật phức tạp Những hỏng hóc trong một CSDLPT có thể xảy ra nhiều hơn vì có số thành phần cấu thành lớn hơn, nhng ảnh hởng của mỗi hỏng hóc đó chỉ giới hạn ở những ứng dụng có dùng dữ liệu của trạm bị h hỏng, còn sự hỏng hóc của toàn hệ thống là hiếm khi xảy ra.

Những động cơ thúc đẩy sự phát triển của CSDLPT không phải là mới Vậy

tại sao sự phát triển đó mới chỉ ở giai đoạn bắt đầu? có hai lý do chính: Một là

sự phát triển gần đây của các máy tính nhỏ với giá thành hạ và cung cấp nhiều khả năng mà trớc đấy chỉ có các máy tính lớn mới có đã cung cấp phần cứng

cần thiết cho sự phát triển của các hệ phân tán; Hai là công nghệ của CSDLPT

Trang 4

dựa trên hai công nghệ khác đã có cơ sở vững chắc từ những năm 70: côngnghệ máy tính và công nghệ CSDL; Không có những cái đó rõ ràng là không

thể thực hiện đợc một nhiệm vụ phức tạp là xây dựng một CSDLPT dựa trên một mạng máy tính và một tập các hệ quản trị cơ sở dữ liệu có ở mỗi trạm 

(Kỳ sau: cơ sở dữ liệu phân tán trong hệ thống Ngân hàng.)

ài liệu tham khảo

* GS.TS Hồ Thuần: Một số bài giảng về CSDLPT- Lớp cao học

[1] S Ceri, G Pepagatti, Distributed database, Principles and Systems, Mc Graw Hill Book company, 1985.

[2] W Draffan, F Poole, Distributed databases - An advanced Course, Cambridge Univ Press, 1980.

[3] G.Gardarin, P.Valduri, SGBD avances, Ed, Eyrolles, 1990.

Ngày đăng: 25/08/2012, 11:29

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan