1. Trang chủ
  2. » Luận Văn - Báo Cáo

Phân mảnh dọc trong cơ sở dữ liệu phân tán

27 2,6K 5

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 27
Dung lượng 872,95 KB

Nội dung

Hình 1.1: Mô hình cơ sở dữ liệu phân tán Trong CSDL phân tán có hai vấn đề quan trọng và tương đương nhau là: Việc phân tán: Trong thực tế dữ liệu không đặt trên cùng một vị trí vì vậy đ

Trang 1

Đại Học Công Nghệ Thông Tin

Đại Học Quốc Gia Thành Phố Hồ Chí Minh

Trang 2

Lời cảm ơn

Lời đầu tiên em xin chân thành cảm ơn thầy Đỗ Phúc đã truyền đạt cho em những bài học thật bổ ích với những câu truyện đầy tính sáng tạo và lý thú.

Cảm ơn nhà trường đã tạo điều kiện cho em cùng các bạn trong lớp có thể học tập

và tiếp thu những kiến thức mới.

Em cũng chân thành cảm ơn các bạn trong lớp đã chia sẻ cho nhau những tài liệu

và hiểu biết về môn học để cùng hoàn thành tốt môn học này.

Trong thời gian vừa qua mặc dù em đã cố gắng rất nhiều để hoàn thành tốt đề tài của mình, song chắc chắn kết quả không tránh khỏi những thiếu sót Em kính mong được

sự cảm thông và tận tình chỉ bảo của thầy.

TP.Hồ Chí Minh Tháng 8/2012

Học viên thực hiện

Trương Lê Hưng

Lớp Cao Học khóa 6

Trang 3

Nhận xét

-Lời mở đầu

Trang 4

Sự phát triển không ngừng của thông tin số đã nảy sinh nhiều vấn đề trong việclưu trữ và sử lý các thông tin dữ liệu với khối lượng lớn và phức tạp Do vậy, yêu cầu về

sử lý cơ sở dữ liệu ngày càng đòi hỏi việc thiết kế sao cho phù hợp và tiện dụng

Các hệ thống cơ sở dữ liệu tập trung truyền thống bộc lộ nhiều khuyết điểm nhưtăng khả năng lưu trữ thông tin khó bởi giởi hạn về bộ nhớ thiết bị, độ sẵn sàng phục vụcủa cơ sở dữ liệu không cao khi số người sử dụng tăng, khả năng tính toán của các máytính đơn lẻ đang dần tới giới hạn vật lý, mô hình lưu trữ, xử lý dữ liệu tập trung khôngphù hợp với các tổ chức hoạt động đa quốc gia Tuy nhiên những nhược điểm này đượckhắc phục khá nhiều trong hệ thống phân tán Do đó càng ngày các hệ thống phân tánxuất hiện càng nhiều đã chứng minh tính ưu việt của nó hơn hẳn các hệ thống tập trungtruyền thống

Trong nội dung bài tiểu luận này em xin được trình bày khái quát cơ sở lý thuyết

về cơ sở dữ liệu phân tán cũng như tập trung tìm hiểu về phân mảnh dọc, một trong cáccách phân mảnh trong cơ sở dữ liệu phân tán Nội dung bài tiểu luận bao gồm:

Phần 1 : Cơ sở lý thuyết về cơ sở dữ liệu phân tánPhần 2 : Thiết kế cơ sở dữ liệu phân tán

Phần 3 : Phân mảnh dọc trong cơ sở dữ liệu phân tánPhần 4 : Tổng kết và Demo

Trang 5

Mục lục

Trang 6

Phần I Cơ sở lý thuyết về cơ sở dữ liệu phân tán

Cơ sở dữ liệu (CSDL) phân tán là một tập hợp nhiều CSDL có liên quanlogic và được phân bố trên một mạng máy tính

Hình 1.1: Mô hình cơ sở dữ liệu phân tán

Trong CSDL phân tán có hai vấn đề quan trọng và tương đương nhau là:

Việc phân tán: Trong thực tế dữ liệu không đặt trên cùng một vị trí vì vậy

đây là đặc điểm để phân biệt CSDL phân tán với CSDL tập trung

Liên quan logic: Trong CSDL phân tán dữ liệu có một số đặc tính liên kết

chặt chẽ với nhau như tính kết nối, tính liên quan logic Trong CSDL phân tánmỗi vị trí chỉ quản lý một CSDL và người sử dụng phải truy cập đến CSDL ởnhững vị trí khác để lấy thông tin tổng hợp

Đặc tính vô hình là sự tách biệt về ngữ nghĩa ở mức độ cao của hệ thốngvới các vấn đề cài đặt ở cấp độ thấp Ưu điểm của hệ CSDL vô hình là không

cho người dùng “nhìn thấy” các chi tiết cài đặt, hỗ trợ phát triển cho các ứng

dụng phức tạp

Trang 7

Độc lập dữ liệu là dạng vô hình cơ bản cần có trong một hệ CSDL Sự độclập dữ liệu liên quan đến khả năng “miễn nhiễm” của các ứng dụng đối vớinhững thay đổi trong định nghĩa, tổ chức dữ liệu và ngược lại.

Vô hình kết mạng: Trong môi trường phân tán, hệ thống mạng là một loạitài nguyên quan trọng cần quản lý Thông thường, người dùng cần được táchkhỏi mọi chi tiết hoạt động của mạng, thậm chí người ta mong muốn che dấu

sự tồn tại của mạng nếu được Khi đó đối với người dùng sẽ không thấy sựkhác biệt giữa các ứng dụng chạy trên CSDL tập trung và các ứng dụng chạy

trên CSDL phân tán Kiểu vô hình này gọi là vô hình kết mạng (network transparency) hoặc vô hình phân bổ (distribution transparency).

Vô hình nhân bản: Vì những lý do về hiệu năng (performance), độ tin cậy

(reliability) và tính sẵn sàng (availability), người ta mong muốn có thể

nhân dữ liệu thành nhiều bản (nhân bản) trên các máy mạng Việc nhân bảngiúp tăng hiệu năng vì những yêu cầu sử dụng có xung đột và nằm rải rác cóthể đáp ứng kịp thời

Khi các đối tượng CSDL bị phân mảnh, chiến lược xử lý vấn tin là dựa trên

các mảnh chứ không phải quan hệ Như vậy câu vấn tin toàn cục (global query) phải được dịch thành câu vấn tin theo mảnh (fragment query).

- Ưu điểm:

o Dữ liệu gần với nơi xử lý -> Hiệu suất cao

o Tính sẵn sàng của hệ thống cao: Nếu một trạm bị lỗi sẽ không ảnhhưởng tới các trạm khác trong hệ thống

o Việc tăng các trạm sử dụng trong hệ thống là đơn giản nên việc mởrộng CSDL là dễ dàng

- Nhược điểm:

o Lưu trữ: Ngoài lược đồ CSDL như trong CSDL tập trung (Thuộctính, kiểu dữ liệu, …) còn thêm các lược đồ phân đoạn CSDL, lược

đồ định vị CSDL (cho biết các đoạn được lưu trữ ở đâu)

o Xử lý: Truy vấn tập trung là đơn giản còn truy vấn phân tán phứctạp

Trang 8

o An toàn: CSDL được lưu trữ ở nhiều nơi nảy sinh vấn đề: đảm bảo

an toàn dữ liệu khi truyền qua mạng

Hệ quản trị CSDL phân tán (Distributed Database Management DBMS) được định nghĩa là một hệ thống phần mềm cho phép quản lý các hệCSDL (tạo lập và điều khiển các truy nhập cho các hệ CSDL phân tán) và làmcho việc phân tán trở nên trong suốt với người sử dụng

System-Đặc tính vô hình muốn nói đến sự tách biệt về ngữ nghĩa ở cấp độ cao củamột hệ thống với các vấn đề cài đặt ở cấp độ thấp Sự phân tán dữ liệu đượcche dấu với người sử dụng làm cho người sử dụng truy nhập vào CSDL phântán như hệ CSDL tập trung Sự thay đổi việc quản trị không ảnh hưởng tớingười sử dụng

Hệ quản trị CSDL phân tán gồm 1 tập các phần mềm (chương trình) sau:

• Các chương trình quản trị các dữ liệu phân tán

• Chứa các chương trình để quản trị việc truyền thông dữ liệu

• Các chương trình để quản trị các CSDL địa phương

• Các chương trình quản trị từ điển dữ liệu

Để tạo ra một hệ CSDL phân tán (Distributed Database System-DDBS) cáctập tin không chỉ có liên đới logic chúng còn phải có cấu trúc và được truy xuấtqua một giao diện chung

Môi trường hệ CSDL phân tán là môi trường trong đó dữ liệu được phântán trên một số vị trí

Trang 9

Hình 1.2: Mô hình Peer-to-Peer

File server một số máy dịch vụ file được gán trực tiếp vào mạng LAN File server là một thiết bị quản lý các hoạt động file và phục vụ các máytí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ủaFile server, chương trình ở các máy tính cá nhân có thể tham chiếu đến các filetrê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 File server 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

Một số máy dịch vụ file được gán trực tiếp vào mạng LAN:

Trang 10

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

Cấu trúc mẫu của một cơ sở dữ liệu phân tán có dạng:

Hình 1.5: Cấu trúc mẫu của một cơ sở dữ liệu phân tán

- Lược đồ toàn cục:

o Xác định toàn bộ dữ liệu được lưu trữ trong CSDLPT

o Được định nghĩa như trong CSDL tập trung

o Trong mô hình quan hệ: lược đồ toàn cục là các quan hệ và mối liênkết giữa chúng

- Lược đồ phân đoạn:

Trang 11

o Mỗi quan hệ tổng thể có thể được chia thành các phần không giao

nhau gọi là phân đoạn (Fragment)

o Có nhiều cách khác nhau để phân đoạn: Phân đoạn dọc, phân đoạnngang, phânđoạn hỗn hợp

o Các đoạn được mô tả bằng tên của quan hệ tổng thể cùng với chỉmục đoạn Ví dụ Ri là đoạn thứ i của quan hệ toàn cục R

- Lược đồ định vị:

o Xác định đoạn dữ liệu nào được định vị tại trạm nào trên mạng

o Ri : Cho biết đoạn thứ i của quan hệ tổng thể R được định vị trêntrạm j

- Lược đồ ánh xạ địa phương:

o Ánh xạ các ảnh vật lý và các đối tượng được lưu trữ tại một trạm

Trang 12

Phần II Thiết kế cơ sở dữ liệu phân tán

Tất cả các dữ liệu được tập trung tại một chỗ, cách này đơn giản nhưng có

3 nhược điểm:

• Dữ liệu không sẵn sàng cho người sử dụng truy nhập từ xa,

• Chi phí truyền thông lớn, thường làm cực đại việc truy nhập dữ liệutới nơi tập trung

CSDL được phân thành 2 phần: quan trọng và ít quan trọng

• Phần ít quan trọng được lưu giữ một nơi

• Phần quan trọng được lưu trữ ở nhiều nơi khác

Phương pháp thiết kế từ trên xuống là phương pháp thiết kế từ tổng thể đếnriêng biệt, phân ra một hệ thống lớn thành các hệ thống con và các công việcđược tiến hành như sau:

Trang 13

Phân tích các yêu cầu nhằm định nghĩa môi trường hệ thống và thu thậpcác yêu cầu về dữ liệu, cũng như các nhu cầu xử lý của các trạm có sử dụngCSDL

Phân tích yêu cầu cũng xác định xem hệ thống cuối cùng sẽ như thế nào sovới các mục tiêu của một hệ quản trị CSDL phân tán đã được phân tích Nhữngmục tiêu này được định nghĩa theo các vấn đề về hiệu quả hoạt động, độ tincậy, tính có sẵn, tính kinh tế, và tính linh hoạt

Hồ sơ ghi chép các yêu cầu là nguyên liệu cho hai hoạt động song song:thiết kế khung nhìn và thiết kế khái niệm

Thiết kế khung nhìn là định nghĩa các giao diện cho người sử dụng ở cáctrạm

Thiết kế khái niệm là một tiến trình kiểm tra và xác định rõ hai nhóm quanhệ:

Phân tích chức năng và phân tích thực thể Phân tích chức năng là xác địnhcác chức năng của hệ thống và đưa ra các chức năng cơ sở Phân tích thực thể

là xác định các tập thực thể, các thuộc tính và các mối quan hệ giữa chúng Kết quả của thiết kế khung nhìn và thiết kế khái niệm là hai quá trình cầnđối chiếu qua lại, giúp chúng ta biết được chức năng nào sẽ hoạt tác trên nhữngthực thể nào

Thiết kế khái niệm có thể diễn giải như là sự tích hợp các khung nhìn củangười sử dụng Dù rằng hoạt động tích hợp khung nhìn này hết sức quan trọng,

mô hình khái niệm phải hỗ trợ không chỉ những ứng dụng hiện có mà còn có

cả những ứng dụng trong tương lai Tích hợp khung nhìn được sử dụng nhằmđảm bảo rằng các yêu cầu về thực thể và các mối liên hệ giữa các khung nhìnđều phải được bao quát trong lược đồ khái niệm

Trang 14

Hình 2.1: Sơ đồ thiết kế cơ sở dữ liệu phân tán theo mô hình từ trên xuống

Trong các hoạt động thiết kế khái niệm và thiết kế khung nhìn, người sửdụng cần phải đặc tả các thực thể dữ liệu và phải xác định các ứng dụng sẽchạy trên CSDL cũng như các thông tin thống kê về những ứng dụng này.Thông tin thống kê bao gồm đặc tả về tần số ứng dụng, khối lượng các thôngtin khác nhau,…

Lược đồ khái niệm toàn cục và thông tin về kiểu mẫu truy xuất thu đượctrong thiết kế khung nhìn sẽ là nguyên liệu cho bước thiết kế phân tán Mục

Trang 15

tiêu của giai đoạn này là thiết kế các lược đồ khái niệm cục bộ bằng cách phântán các thực thể cho các vị trí của hệ thống phân tán

Ta chia quan hệ thành nhiều quan hệ nhỏ hơn gọi là các mảnh (fragment)

và phân tán các mảnh này Hoạt động thiết kế phân tán gồm hai bước: Phân

mảnh (fragmentation) và cấp phát (allocation)

Thiết kế vật lý là ánh xạ lược đồ khái niệm cục bộ sang các thiết bị lưu trữvật lý có sẵn tại các vị trí tương ứng Nguyên liệu cho quá trình này là lược đồkhái niệm cục bộ và thông tin về kiểu mẫu truy xuất các mảnh

Hoạt động phát triển và thiết kế luôn là quá trình liên tục, đòi hỏi phải theodõi, hiệu chỉnh thường xuyên Vì thế chúng ta cũng đưa vấn đề quan sát vàtheo dõi như một hoạt động chính trong quá trình này Cần chú ý rằng chúng takhông chỉ theo dõi vấn đề cài đặt cơ sở dữ liệu mà còn phải quan sát theo dõitính thích hợp của các khung nhìn của người sử dụng Kết quả này có tác dụngphản hồi, tạo tiền đề cho tái thiết kế về sau

Phương pháp thiết kế trên xuống thực sự có hiệu quả khi xây dựng một hệthống mới Trong thực tế, một số CSDL đã tồn tại trước được tổ chức trongmôi trường tập trung và CSDL phân tán được phát triển bằng cách liên kếtchúng lại thành một CSDL mới thống nhất (Các DBMS địa phương khác nhau

đã được sử dụng)

Cách thiết kế:

• Chọn một mô hình dữ liệu chung để mô tả lược đồ tổng thể

• Chuyển mỗi lược đồ địa phương theo mô hình dữ liệu chung đã chọn

• Tích hợp các lược đồ địa phương vào lược đồ tổng thể

Khung nhìn hoặc đơn vị truy xuất của các ứng dụng không phải là toàn bộquan hệ mà thường là một mảnh

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ị, sẽ cho phép thực hiện nhiều giao dịch đồng thời

Trang 16

Việc phân mảnh các quan hệ sẽ cho phép thực hiện song song một câu vấntin bằng cách chia nó ra thành một tập các câu vấn tin con hoạt tác trên cácmảnh.

Nếu các ứng dụng có các khung nhìn được định nghĩa trên một quan hệ chotrước nằm tại những vị trí khác thì có hai cách chọn lựa đơn vị phân tán: hoặc

là toàn bộ quan hệ hoặc quan hệ được lưu ở một vị trí có chạy ứng dụng Nhận xét: Chọn lựa thứ nhất gây ra một số lượng lớn các truy xuất khôngcần thiết đến dữ liệu ở xa Chọn lựa sau sẽ gây ra nhiều vấn đề khi cập nhật vàlãng phí không gian lưu trữ

Khuyết điểm của việc phân mảnh:

- Nếu ứng dụng có những yêu cầu ngăn cản việc phân rã thành các mảnh đểđược sử dụng độc quyền, thì những ứng dụng có các khung nhìn được địnhnghĩa trên nhiều mảnh sẽ bị giảm hiệu suất hoạt động

- Nếu một khung nhìn đòi hỏi thông tin ở nhiều mảnh thì việc truy xuất dữliệu để nối lại sẽ có chi phí cao

- Kiểm soát dữ liệu ngữ nghĩa (semantic data control): Do kết quả của

phân mảnh, các thuộc tính tham gia vào một phụ thuộc có thể bị phân rã vàocác mảnh khác nhau và được cấp phát cho những vị trí khác nhau Trongtrường hợp này, một nhiệm vụ đơn giản như kiểm tra các phụ thuộc cũng phảithực hiện truy tìm dữ liệu ở nhiều vị trí

Thể hiện của các quan hệ chính là các bảng, vì thế vấn đề là tìm những cáchkhác nhau để chia một bảng thành nhiều bảng nhỏ hơn

Có ba kiểu phân mảnh khác nhau:

• Phân mảnh ngang (horizontal fragmentation)

• Phân mảnh dọc (vertical fragmentation)

• Phân mảnh hỗn hợp (hibrid fragmentation)

Trang 17

thực hiện dựa trên các vị từ được định nghĩa trên quan hệ Ngược lại, phânmảnh ngang dẫn xuất là phân ra một quan hệ dựa vào các vị từ được địnhnghĩa trên một quan hệ khác.

Một phân mảnh dọc cho một quan hệ r sinh ra các mảnh r1, r2,…., rn mỗimảnh chứa một tập con thuộc tính của R và cả khóa của r Mục đích của phânmảnh dọc là phân hoạch một quan hệ thành một tập các quan hệ nhỏ hơn đểnhiều ứng dụng có thể chỉ chạy trên một quan hệ Một phân mảnh tối ưu là mộtphân mảnh sinh ra một lược đồ phân mảnh cho phép giảm đến tối đa thời gianthực thi các ứng dụng chạy trên các mảnh đó

Phần tiếp theo của tiểu luận sẽ đề cập chi tiết về phân mảnh dọc

Trong thực tế, hầu hết các trường hợp phân mảnh ngang hay phân mảnhdọc đơn giản của CSDL không thỏa mãn yêu cầu người sử dụng ThườngCSDL được phân mảnh dọc sau đó phân mảnh ngang, tạo ra sự phân chia theocấu trúc cây Chiến lược phân mảnh này gọi là phân đoạn lai hay phân mảnhtrộn, hay phân mảnh lồng

Trang 18

Phần III Phân mảnh dọc trong cơ sở dữ liệu phân tán

Một phân mảnh dọc cho một quan hệ R sinh ra các mảnh R1, R2,…, Rr mỗimảnh chứa một tập con thuộc tính của R và cả khoá của R Mục đích của phânmảnh dọc là phân hoạch một quan hệ thành một tập các quan hệ nhỏ hơn đểnhiều ứng dụng chỉ cần chạy trên một mảnh Một phân mảnh "tối ưu" là phânmảnh sinh ra một lược đồ phân mảnh cho phép giảm tối đa thời gian thực thicác ứng dụng chạy trên mảnh đó Do vậy bài toán phân mảnh không chỉ là bàitoán của hệ cơ sở dữ liệu phân tán mà còn là bài toán của cơ sở dữ liệu tậptrung

Kỹ thuật phân mảnh dọc phức tạp hơn so với kỹ thuật phân mảnh ngang.Điều này là do tổng số chọn lựa có thể của một phân hoạch dọc rất lớn

Để có được các lời giải tối ưu cho bài toán phân hoạch dọc thực sự rất khókhăn Vì thế phải dùng 2 phương pháp heuristic phân mảnh dọc các quan hệtoàn cục

- Phương pháp nhóm: Bắt đầu bằng cách gán mỗi thuộc tính cho một

mảnh, và tại mỗi bước, nối một số mảnh lại cho đến khi thỏa một tiêu chuẩnnào đó

- Phương pháp tách mảnh: Bắt đầu bằng một quan hệ và quyết định cách

phân mảnh có lợi dựa trên hành vi truy xuất của các ứng dụng trên các thuộctính

Bởi vì phân hoạch dọc đặt vào một mảnh các thuộc tính thường được truyxuất chung với nhau, chúng ta cần có một giá trị đo nào đó để định nghĩa chínhxác hơn về khái niệm "chung với nhau' Số đo này gọi là tụ lực hay lực hút(affmity) của thuộc tính, chỉ ra mức độ liên đới giữa các thuộc tính

Yêu cầu dữ liệu chính có liên quan đến các ứng dụng là tần số truy xuất củachúng gọi Q={q1, q2,…,qq} là tập các vấn tin của người dùng (các ứng dụng)

sẽ chạy trên quan hệ R(A1, A2,…,An) Thế thì với mỗi câu vấn tin qi và mỗi

Ngày đăng: 10/04/2015, 14:34

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w