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

Bài toán tạo và sử dụng hiệu quả bản sao trong hệ cơ sở dữ liệu phân tán

23 1,3K 5
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Bài toán tạo và sử dụng hiệu quả bản sao trong hệ cơ sở dữ liệu phân tán
Tác giả Trần Thị Thùy Dương, Trịnh Thị Thanh Nga, Hoàng Thị Minh Tâm, Trần Đỗ Thu Hà, Nguyễn Đăng Khoa, Vũ Xuân Thắng, Trần Thị Vân
Người hướng dẫn TS. Vũ Thị Hương Giang
Trường học Trường Đại học Bách Khoa Hà Nội
Chuyên ngành Nguyên lý và mô thức phát triển hệ phân tán
Thể loại Bài tập lớn
Năm xuất bản 2012
Thành phố Hưng Yên
Định dạng
Số trang 23
Dung lượng 1,95 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Lí do chọn đề tài Cơ sở dữ liệu phân tán ra đời dựa trên nền tảng chính của cơ sở dữ liệu tập trung với đặcđiểm riêng nổi bật là thiết kế theo phương pháp phân mảnh dữ liệu và sử dụng cá

Trang 1

-* -BÀI TẬP LỚN NGUYÊN LÝ VÀ MÔ THỨC PHÁT TRIỂN HỆ PHÂN TÁN

Đề tài: Bài toán tạo và sử dụng hiệu quả bản sao trong

hệ cơ sở dữ liệu phân tán

Giảng viên hướng dẫn:

Năm 2012

Trang 2

Nhóm học viên: Trần Đỗ Thu Hà –Nguyễn Đăng Khoa

Trang 3

MỤC LỤC

MỞ ĐẦU 2

1 Lí do chọn đề tài 2

2 Mục tiêu và nhiệm vụ nghiên cứu 2

3 Đối tượng và phạm vi nghiên cứu 2

4 Phương pháp nghiên cứu 2

5 Ý nghĩa 2

NỘI DUNG 2

CHƯƠNG I: TỔNG QUAN VỀ HỆ CƠ SỞ DỮ LIỆU PHÂN TÁN 2

1.1 Cơ sở dữ liệu phân tán 2

1.2 Hệ quản trị cơ sở dữ liệu phân tán 4

1.3 Vấn đề phân tán dữ liệu 4

1.3.1 Sự phân mảnh dữ liệu (Fragmentation) 5 1.3.2 Tạo bản sao (Replication) 6 CHƯƠNG II: TẠO BẢN SAO TRONG HỆ CƠ SỞ DỮ LIỆU PHÂN TÁN 6

2.1 Sao lặp dữ liệu 6

2.2 Cơ sở dữ liệu phân tán trong Oracle Express Edition 7

2.2.1 Bản sao cơ sở 7 2.2.2 Bản sao nâng cao 7 2.2.3 Nhóm các bản sao 8 2.2.4 Các vị trí bản sao 8 2.2.5 Database link 9 2.3 Mô hình phân tán sử dụng bản sao 10

CHƯƠNG III: SỬ DỤNG HIỆU QUẢ BẢN SAO TRONG HỆ CƠ SỞ DỮ LIỆU 11

3.1 Quản lí nhiều bản sao 11

3.1.1 Nhân bản một đối tượng thông tin 11 3.1.2 Phương pháp giải quyết mâu thuẫn trong môi trường phân tán 12 3.1.3 Giải thuật quản lí nhiều bản sao 13 3.2 Đồng bộ hóa tiến trình 15

3.3 Xác định trật tự các sự kiện 15

3.3.1 Đồng bộ hóa dựa trên trật tự từng phần 15 3.3.2 Đồng bộ hóa dựa trên trật tự tổng quát chặt chẽ 15 3.4 Sự gắn bó dữ liệu trong hệ thống nhiều bản sao 16

3.5 Giải pháp đảm bảo tính gắn bó dữ liệu trong hệ thống nhiều bản sao 16

3.5.1 Kỹ thuật xác lập trật tự trong hệ thống nhiều bản sao 16 3.5.2 Thuật toán Herman 17 3.5.3 Thuật toán Ellis 17 3.5.4 Giải thuật hai pha tuyến tính (LINEAR 2PC) 17 3.5.5 Giải thuật MAONT (Model Advanced of Open Nested Transaction) 17 KẾT LUẬN 18

1 Kết quả đạt được 18

2 Hướng phát triển 18

TÀI LIỆU THAM KHẢO……… 19

Trang 4

MỞ ĐẦU

1 Lí do chọn đề tài

Cơ sở dữ liệu phân tán ra đời dựa trên nền tảng chính của cơ sở dữ liệu tập trung với đặcđiểm riêng nổi bật là thiết kế theo phương pháp phân mảnh dữ liệu và sử dụng các bản sao(replication), dữ liệu phân tán sẽ được cập nhật và lưu tại các trạm, mỗi trạm tương ứng với mộtmáy chủ cơ sở dữ liệu và chỉ thực hiện một số chức năng nhất định Ứng dụng cơ sở dữ liệu phântán có thể khắc phục được các nhược điểm vốn có của cơ sở dữ liệu tập trung như cải thiện năngsuất thực hiện công việc, đảm bảo an toàn dữ liệu, giảm giá thành truyền thông, bảo mật cao, dễdàng thay đổi, phát triển, … Để quản lý cơ sở dữ liệu phân tán, người ta dùng hệ quản trị cơ sở

dữ liệu phân tán (Distribute Database Management System) Hệ quản trị cơ sở dữ liệu phân tán

là một phần mềm hệ thống cho phép quản lý một cơ sở dữ liệu phân tán và tạo nên sự phân tán

rõ ràng cho người dùng

Trong đề tài này chúng tôi đi sâu tìm hiểu về cách tạo và sử dụng hiệu quả bản sao trong

hệ cơ sở dữ liệu phân tán

2 Mục tiêu và nhiệm vụ nghiên cứu

Mục tiêu nghiên cứu: Nghiên cứu giải pháp sử dụng hiệu quả bản sao trong hệ cơ sở dữ liệu

phân tán

Nhiệm vụ nghiên cứu:

 Nghiên cứu hệ sở dữ liệu phân tán

 Nghiên cứu tạo và sử dụng hiệu quả bản sao trong hệ cơ sở dữ liệu phân tán

3 Đối tượng và phạm vi nghiên cứu

Đối tượng nghiên cứu:

 Lý thuyết về hệ cơ sở dữ liệu phân tán

 Hệ thống phân tán nhiều bản sao

 Các giải thuật đồng bộ và gắn bó dữ liệu giữa các bản sao

Phạm vi nghiên cứu:

 Tập trung nghiên cứu việc tạo bản sao trong hệ cơ sở dữ liệu phân tán

 Các giải thuật sử dụng hiệu quả bản sao, đồng bộ và gắn bó dữ liệu trong hệ thống nhiềubản sao

4 Phương pháp nghiên cứu

 Tìm kiếm và nghiên cứu các tài liệu về lĩnh vực hệ cơ sở dữ liệu phân tán

 Dựa trên cơ sở lý thuyết hệ phân tán và các kết quả nghiên cứu được để xây dựng giảipháp sử dụng hiệu quả bản sao

5 Ý nghĩa

 Đi sâu về hệ cơ sở dữ liệu phân tán sử dụng bản sao

 Đưa ra các giải pháp kỹ thuật cho phép sử dụng hiệu quả bản sao trong hệ cơ sở dữ liệuphân tán

-o0o -NỘI DUNG CHƯƠNG I: TỔNG QUAN VỀ HỆ CƠ SỞ DỮ LIỆU PHÂN TÁN

Khái niệm hệ cơ sở dữ liệu phân tán ở đây bao gồm cả khái niệm cơ sở dữ liệu phân tán

và hệ quản trị cơ sở dữ liệu phân tán

1.1 Cơ sở dữ liệu phân tán

Cơ sở dữ liệu phân tán là một tập hợp các cơ sở dữ liệu có quan hệ logic với nhau, đượcphân phối trên các máy tính khác nhau của một mạng máy tính (được gọi là các nút, trạm hay là

Trang 5

site) nhưng vẫn đảm bảo tính nhất quán trên toàn bộ cơ sở dữ liệu và khai thác giống như trên cơ

sở dữ liệu tập trung

Đặc trưng của cơ sở dữ liệu phân tán là các cơ sở dữ liệu được phân bố trên mạng máytính và có quan hệ với nhau về mặt logic

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

Hình 1.1: 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: Xác định toàn bộ dữ liệu được lưu trữ trong cơ sở dữ liệu phân tán Được định

nghĩa như trong cơ sở dữ liệu tập trung Trong mô hình quan hệ: lược đồ toàn cục là các quan hệ vàmối liên kết giữa chúng

Lược đồ phân đoạn: 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) Có nhiều cách khác nhau để phân đoạn: Phân đoạn dọc, phân đoạn ngang,phân đoạn hỗn hợp 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

thứ i của quan hệ tổng thể R được định vị trên trạm j

Lược đồ ánh xạ địa phương: Ánh xạ các ảnh vật lý và các đối tượng được lưu trữ tại một trạm

Ưu điểm của cơ sở dữ liệu phân tán:

 Phù hợp với cấu trúc của tổ chức

 Nâng cao khả năng chia sẻ và tính tự trị địa phương

 Tính sẵn sàng của hệ thống cao

 Nâng cao tính tin cậy

 Nâng cao hiệu năng

 Dễ mở rộng

Nhược điểm của cơ sở dữ liệu phân tán:

 Thiết kế cơ sở dữ liệu phức tạp hơn

 Khó điều khiển tính nhất quán dữ liệu

 Xử lý: Truy vấn tập trung là đơn giản còn truy vấn phân tán phức tạp, khó phát hiện và khử lỗi

 Giá thành cao

 Vấn đề về bảo mật cơ sở dữ liệu đượ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

 Thiếu chuẩn mực

Trang 6

 Thiếu kinh nghiệm

1.2 Hệ quản trị cơ sở dữ liệu phân tán

Để quản lý cơ sở dữ liệu phân tán, người ta dùng hệ quản trị cơ sở dữ liệu phân tán

(DDBMS – Distribute Database Management System) Hệ quản trị cơ sở dữ liệu phân tán là hệ

thống phần mềm cho phép quản lý cơ sở dữ liệu phân tán, tạo nên sự phân tán rõ ràng cho ngườidùng và đảm bảo cho sự phân tán đó là trong suốt đối với người sử dụng

Hệ quản trị cơ sở dữ liệu phân tán cung cấp công cụ như tạo lập và quản lý cơ sở dữ liệuphân tán Hệ quản trị cơ sở dữ liệu phân tán có chức năng hỗ trợ việc tạo và bảo trì cơ sở dữ liệuphân tán, chúng có các thành phần tương tự như một hệ quản trị cơ sở dữ liệu tập trung và cácthành phần hỗ trợ trong việc chuyển tải dữ liệu đến các trạm và ngược lại

Hệ quản trị cơ sở dữ liệu thường có các thành phần :

Cơ sở dữ liệu phân tán (distributed database): DDB

Quản trị dữ liệu (database management): DM

Truyền thông dữ liệu (data communication): DC

Từ điển dữ liệu (data dictionary): DD dùng để mô tả thông tin về sự phân tán của dữ liệu

trên mạng

Các dịch vụ của hệ thống trên bao gồm:

• Các ứng dụng truy nhập cơ sở dữ liệu 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 cơ sở dữ liệu, 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

• Cung cấp khả năng điều khiển đồng thời và phục hồi các giao tác phân tán

Các hệ quản trị cơ sở dữ liệu phân tán thường hỗ trợ về điều khiển tương tranh và khôi phục cáctiến trình phân tán

Hệ quản trị cơ sở dữ liệu phân tán có thể phân làm 2 loại:

Hệ quản trị 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 cục bộ (Local) và được quản lý bởi cùng một hệ quảntrị cơ sở dữ liệu, cơ sở dữ liệu phân tán có thuần nhất hay không được phụ thuộc bởi các yêu tố phầncứng, hệ điều hành và các hệ quản trị cơ sở dữ liệu cục bộ Tuy nhiên, hạn chế quan trọng tại hệquản trị cơ sở dữ liệu 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

Hệ quản trị cơ sở dữ liệu phân tán không thuần nhất: cơ sở dữ liệu phân tán không thuần nhấtđược tích hợp bởi một tập các cơ sở dữ liệu cục bộ được quản lý bởi các hệ quản trị cơ sở dữ liệu

khác nhau Hệ quản trị cơ sở dữ liệu phân tán 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ệ quản trị cơ sở dữ liệu khác nhau để thống nhất việc quản lý

Nếu việc phát triển cơ sở dữ liệu 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 cơ sở dữ liệu cục bộ), thì việc phát triển một hệ thuần nhất là tốtnhất Tuy nhiên, trong một số trường hợp cần xây dựng cơ sở dữ liệu phân tán từ các cơ sở dữ liệu

đã 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)

1.3 Vấn đề phân tán dữ liệu

Trong nhiều trường hợp các nhà thiết kế ứng dụng không biết dữ liệu phải phân tán ởđâu Trong phần này chúng ta sẽ phác họa một vài vấn đề liên quan đến việc phân tán dữ liệu

Trang 7

1.3.1 Sự phân mảnh dữ liệu (Fragmentation)

Phần lớn các hệ cơ sở dữ liệu phân tán được thiết kế theo hướng từ trên xuống Thiết

kế phân mảnh dữ liệu là công việc đầu tiên phải thực hiện Mục đích của việc phân mảnh dữ liệu là tạo ra các đơn vị cấp phát logic, sao cho chi phí để thực hiện truy vấn thôngtin là thấp nhất

Trước tiên việc phân tán dữ liệu được thực hiện trên cơ sở cấp phát các tập tin cho các nút trênmột mạng máy tính Các nút mạng thường nằm ở các vị trí địa lý khác nhau trải rộng trên mộtdiện tích lớn Do vậy để tối ưu việc khai thác thông tin thì dữ liệu không thể để tập trung mà phảiphân tán trên các nút của mạng

Hơn nữa một quan hệ không phải là một đơn vị truy xuất dữ liệu tốt nhất Ví dụ như, nếu ứngdụng được thực hiện trên một bộ phận nhỏ các dữ liệu của quan hệ mà quan hệ đó nằm tại các vịtrí khác nhau thì có thể gây ra những truy xuất thừa và hơn thế việc nhân bản các quan hệ làmtốn không gian bộ nhớ Do vậy 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 Một câu truy vấn ban đầu cóthể được chia ra thành một tập các truy vấn con, các truy vấn này có thể được thực hiện songsong trên các mảnh sẽ giúp cải thiện tốc độ hoạt động của hệ thống

Tuy nhiên chúng ta cũng sẽ gặp những rắc rối của việc phân mảnh, ví dụ nếu các ứng dụng cónhững xung đột sẽ ngăn cản hoặc gây khó khăn cho việc truy xuất dữ liệu Phân rã các mảnh nóichung làm tăng chi phí trong việc truy xuất dữ liệu Một vấn đề nữa liên quan đến việc kiểm soátngữ nghĩa và tính toàn vẹn dữ liệu

Thiết kế phân mảnh bằng cách nhóm một số bộ trong trường hợp phân mảnh ngang haynhóm các thuộc tính trong trường hợp phân mảnh dọc có cùng đặc tính theo quan điểm cấp phát.Các mảnh hình thành bằng các phương pháp phân mảnh tạo ra các đơn vị cấp phát dữ liệu khácnhau

Việc phân tán các mảnh dữ liệu của bảng mang lại nhiều thuận lợi Trong thiết kế cơ sở dữ liệuphân tán, cần thiết phải thực hiện phân mảnh dữ liệu vì những lý do sau đây:

 Trong các hệ quản trị cơ sở dữ liệu, các quan hệ được lưu trữ dưới dạng các bảng 2chiều Các thao tác đối với cơ sở dữ liệu được thực hiện trên các bảng

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

Hơn nữa kỹ thuật phân tán phải có khả năng cải thiện được thời gian và thực hiện đượcviệc truy xuất dữ liệu từ xa Thể hiện của các quan hệ chính là các bảng, vì thế vấn đề là tìmnhững cách khác nhau để chia một bảng thành nhiều bảng nhỏ hơn Có hai phương pháp khácnhau: Chia bảng theo chiều dọc và chia bảng theo chiều ngang Chia dọc ta được các quan hệcon mà mỗi quan hệ chứa một tập con các thuộc tính của quan hệ gốc – gọi là phân mảnh dọc.Chia ngang một quan hệ ta được các quan hệ con mà mỗi quan hệ chứa một số bộ của quan hệgốc – gọi là phân mảnh ngang Ngoài ra còn có một khả năng hỗn hợp, đó là phân mảnh kết hợpcách phân mảnh ngang và dọc

Một phương pháp thiết kế phân mảnh đúng đắn phải thỏa mãn ba ràng buộc sau:

- Tính đầy đủ: Toàn bộ dữ liệu của quan hệ tổng thể phải được ánh xạ vào các đoạn quan hệ và

ngược lại Điều này có nghĩa là, không tồn tại một mục dữ liệu nào thuộc vào quan hệ tổng thể

mà không thuộc vào bất kỳ một đoạn nào

- Xây dựng lại: Quan hệ tổng thể có thể được xây dựng lại từ các đoạn mà nó đã tách ra Điều

kiện này là hiển nhiên, bởi vì trong thực tế chỉ có các đoạn được lưu trữ trong cơ sở dữ liệu phântán, và quan hệ tổng thể phải được xây dựng lại thông qua các đoạn khi cần thiết

Trang 8

- Tính rời nhau: các đoạn được tách ra từ quan hệ tổng thể phải là rời nhau Vì vậy, việc tạo các

bản sao phải rõ ràng với các đoạn được chia Tuy nhiên, điều kiện này chỉ áp dụng chính vàoviệc phân đoạn ngang, trong khi việc phân đoạn dọc nhiều khi vẫn được phép vi phạm điều kiệnnày

1.3.2 Tạo bản sao (Replication)

Replication là một trong những kỹ thuật thường dùng nhất trong cơ sở dữ liệu phân tán.

Việc sao chép dữ liệu ở nhiều nơi cung cấp thêm nhiều chức năng bởi vì dữ liệu vẫn có thể đượctruy xuất nếu một nơi nào đó bị hư hỏng Nó có khả năng cải tiến được việc thực thi: Việc truyxuất dữ liệu được thực hiện có hiệu quả hơn vì dữ liệu được lấy tại nơi cục bộ hoặc từ một bảnsao ở gần đó Việc cập nhật dữ liệu thường bị chậm bởi vì ta phải cập nhật dữ liệu ở tất cả các

bản sao Do đó việc thực thi replication này thường được áp dụng cho những ứng dụng mà việc cập nhật xảy ra ít hơn truy vấn.

Cơ sở dữ liệu được sao thành nhiều bản sao từng phần, hay đầy đủ và được đặt ở hai haynhiều vị trí trên mạng Nếu bản sao của cơ sở dữ liệu được lưu trữ tại mọi trạm, ta có trường hợp

sao lặp đầy đủ Phương thức này làm cực đại việc truy nhập tới dữ liệu ở mọi địa phương Tuy

nhiên, phương thức này nảy sinh nhiều vấn đề khi cập nhật dữ liệu (khi có thay đổi dữ liệu ở một

cơ sở thì cần được xử lý lại và đồng bộ hóa dữ liệu cho tất cả các vị trí khác) Một kỹ thuật mớihơn cho phép tạo các bản sao không đầy đủ phù hợp với yêu cầu dữ liệu mỗi trạm lưu trữ và mộtbản sao đầy đủ ở máy dịch vụ Sau mỗi thời gian, các bản sao được làm đồng bộ với bản chính ởmáy dịch vụ bằng một công cụ phần mềm nào đó Việc quản lý dữ liệu bằng phương pháp dùngnhiều bản sao của một đối tượng thông tin trong hệ phân tán giúp rút ngắn được thời gian truycập trung bình vào thông tin

-o0o -CHƯƠNG II: TẠO BẢN SAO TRONG HỆ CƠ SỞ DỮ LIỆU PHÂN TÁN

Trong một hệ thống lớn có nhiều người truy nhập với các quyền sử dụng khác nhau và cóthể ở mội địa điểm, chi nhánh lại truy nhập vào cơ sở dữ liệu với mục đích khác nhau, có thể ởtừng địa điểm có thể không cần phải dùng đến toàn bộ dữ liệu Tạo bản sao có thể giải quyếtđược các vấn đề về hiệu năng (có thể phân tải, giảm băng thông, tăng tốc độ truy cập); Vấn đề vềtính sẵn sàng có thể khắc phục nhanh chóng khi dịch vụ bị lỗi hoặc cơ sở dữ liệu bị lỗi Chính vìvậy ta cần tạo bản sao trong cơ sở dữ liệu nói chung và cơ sở dữ liệu phân tán nói riêng

2.1 Sao lặp dữ liệu

Có 2 cách cơ bản để tạo bản sao trong hệ cơ sở dữ liệu phân tán: Cơ sở dữ liệu được saothành nhiều bản sao, có thể sao các thành phần nào đó trong cơ sở dữ liệu hoặc sao đầy đủ cơ sở

dữ liệu và đặt chúng ở các vị trí khác nhau trên mạng

Dữ liệu có thể được sao thành nhiều bản sao đầy đủ và đặt ở mọi trạm, trường hợp này tagọi là sao lặp đầy đủ Phương thức này làm cực đại việc truy nhập tới dữ liệu ở mọi địa phương.Phương thức này có thể là không cần thiết trong trường hợp ở địa phương nào đó các trạm chỉcần đến một phần nào đó của dữ liệu thì nếu ta tạo bản sao đầy đủ có thể dẫn đến lãng phí vàphương thức này cũng nảy sinh nhiều vấn đề khi cập nhật khi có thay đổi dữ liệu ở một cơ sở thìcần được xử lý lại và đồng bộ hóa dữ liệu cho tất cả vị trí khác

Một kỹ thuật mới hơn cho phép tạo các bản sao không đầy đủ phù hợp với yêu cầu dữliệu tại mỗi nơi lưu trữ và một bản sao đầy đủ ở máy dịch vụ Sau một thời gian định trước nào

đó thì các bản sao sẽ được đồng bộ hóa với bản chính ở máy dịch vụ

Tùy theo yêu cầu của hệ thống và yêu cầu sử dụng mà ra sử dụng cách lưu trữ nào chothích hợp

Có thể phân biệt thành 3 loại bản sao:

Trang 9

- Các bản sao thường trực: Trong tiến trình hay trên máy luôn có một bản sao Số lượng các bảnsao thường xuyên này rất ít, thường được tập hợp lại thành nhóm các máy trạm (COWs) hoặctrong các hệ thống phản chiếu (mirrored), thường là các web server hay là các server có chứa cơ

sở dữ liệu dự phòng

- Bản sao khởi đầu từ server: Các bản sao này được sử dụng để làm tăng hiệu năng, được xếp đặtđộng dựa vào yêu cầu của server khác Một ví dụ điển hình là chúng được các công ty webhosting sử dụng để định vị vị trí địa lý của các bản sao gần nhất khi họ cần

- Bản sao khởi đầu từ client: Các bản sao này được tạo ra từ yêu cầu của client, chẳng hạn nhưviệc cache dữ liệu của một trình duyệt Chúng được xếp đặt động dựa vào yêu cầu của client

2.2 Cơ sở dữ liệu phân tán trong Oracle Express Edition

2.2.1 Bản sao cơ sở

Với bản sao cơ bản, bản sao dữ liệu cung cấp truy cập chỉ đọc bảng dữ liệu có nguồn gốc

từ bản chính (master) Các ứng dụng có thể truy vấn dữ liệu từ bản sao dữ liệu địa phương đểtránh truy cập mạng bất kể mạng có sẵn Tuy nhiên, dữ liệu trên các bản sao sẽ được cập nhậtđịnh kỳ

Oracle hỗ trợ môi trường bản sao chỉ đọc sử dụng bảng read-only snapshot

Hình 2.1: Bản sao cơ bản chỉ đọc

2.2.2 Bản sao nâng cao

Oracle nâng cao tính năng bản sao, mở rộng khả năng của bản sao chỉ đọc cơ bản bằngcách cho phép các ứng dụng để cập nhật các bản sao bảng trong một hệ thống cơ sở dữ liệu bảnsao Với bản sao tiên tiến, các bản sao dữ liệu bất cứ nơi nào trong hệ thống có thể cung cấp đọc

và cập nhật truy cập vào dữ liệu của bảng Các máy chủ cơ sở dữ liệu Oracle tự động làm việc đểhội tụ các dữ liệu của tất cả các bản sao, và đảm bảo tính nhất quán giao dịch toàn cục và toànvẹn dữ liệu

Trang 10

Hình 2.2: Bản sao nâng cao

2.2.3 Nhóm các bản sao

Một nhóm bản sao là một tập hợp các máy chủ, được gọi là thành viên, tham gia vào sựsao chép của một hoặc nhiều thư mục Một thư mục được tái tạo là một thư mục mà được giữđồng bộ hóa trên mỗi thành viên Trong hình, có hai thư mục bản sao là projects và proposals.Khi thay đổi dữ liệu trong mỗi thư mục bản sao, các thay đổi được thông báo qua kết nối giữacác thành viên của nhóm bản sao Các kết nối giữa tất cả các thành viên tạo thành cấu trúc liênkết bản sao

Hình 2.3: Nhóm bản sao và thư mục bản sao

Mỗi thư mục bản sao cũng đã thiết lập riêng của mình, chẳng hạn như các bộ lọc tập tin

và thư mục con, do đó có thể lọc ra các tập tin và thư mục con khác nhau cho mỗi thư mục bảnsao

Oracle cho phép bản sao:

Các vị trí máy chủ: phải chứa một bản sao đầy đủ của tất cả các đối tượng có trong nhómbản sao Mỗi máy chủ sẽ chuyển các thay đổi của nó tới vị trí máy khách cho các nhóm bản sao

Trang 11

2.2.5 Database link

Database link là một con trỏ xác định một con đường liên kết một chiều từ một máy chủ

cơ sở dữ liệu Oracle đến một máy chủ cơ sở dữ liệu khác Các cơ sở dữ liệu khác không cần phải

là một hệ thống cơ sở dữ liệu Oracle Tuy nhiên, để truy cập hệ thống Oracle không, bạn phải sửdụng dịch vụ Oracle không đồng nhất Con trỏ liên kết được định nghĩa như là một mục trongmột bảng dữ liệu từ điển Để truy cập vào liên kết, bạn phải được kết nối với cơ sở dữ liệu địaphương có chứa các mục từ điển dữ liệu

Database link kết nối là một đường để client kết nối tới cơ sở dữ liệu địa phương A, cóthể sử dụng một liên kết được lưu trữ trong cơ sở dữ liệu A để truy cập thông tin trong cơ sở dữliệu B từ xa, nhưng người sử dụng kết nối với cơ sở dữ liệu B không có thể sử dụng liên kếtgiống như liên kết để truy cập dữ liệu trong cơ sở dữ liệu A Nếu người dùng địa phương trên cơ

sở dữ liệu B muốn truy cập dữ liệu trên cơ sở dữ liệu A, sau đó họ phải sử dụng một liên kết màđược lưu trữ trong từ điển dữ liệu cơ sở dữ liệu B

Một kết nối liên kết cơ sở dữ liệu cho phép người dùng địa phương truy cập dữ liệu trênmột cơ sở dữ liệu từ xa Mỗi cơ sở dữ liệu trong hệ thống phân tán phải có một tên cơ sở dữ liệuduy nhất toàn cục trong miền network Tên cơ sở dữ liệu toàn cục xác định duy nhất một máychủ cơ sở dữ liệu trong một hệ thống phân tán Nói cách khác, một người dùng địa phương cóthể truy cập vào một liên kết đến một cơ sở dữ liệu từ xa mà không cần phải là một người sửdụng trên cơ sở dữ liệu từ xa Người dùng truy cập một cơ sở dữ liệu từ xa thôngqua các database link

Các loại Database link:

Database link có 3 loại là database link private hoặc database link public, database linkglobal Nếu họ là private chỉ có người tạo ra các liên kết mới có quyền truy cập, nếu public thì tất

cả người dùng cơ sở dữ liệu đều có thể truy cập Database link được hệ thống tạo ra Khi mộtmạng lưới Oracle sử dụng một máy chủ chỉ dẫn, máy chủ chỉ dẫn sẽ tự động tạo ra và quản lýdatabase link global cho mỗi cơ sở dữ liệu Oracle trong mạng Người sử dụng và các chươngtrình con trong cơ sở dữ liệu bất kỳ có thể sử dụng database link để truy cập các đối tượng trong

cơ sở dữ liệu từ xa tương ứng

Người dùng của Database link:

Connected user: Người sử dụng địa phương truy cập vào một liên kết cơ sở dữ liệu trong

đó không có tên người dùng và mật khẩu cố định đã được chỉ định

Ví dụ: CREATE PUBLIC DATABASE LINK hq USING 'hq';

Current user: Người sử dụng phải được chứng thực bởi một chứng chỉ X.509 (một doanh

nghiệp xác thực người sử dụng SSL) hay một mật khẩu, và là một người sử dụng trên cảhai cơ sở dữ liệu liên quan đến liên kết Liên kết người dùng hiện tại là một khía cạnh củacác tùy chọn bảo mật nâng cao của Oracle

Ví dụ: CREATE PUBLIC DATABASE LINK hq CONNECT TO CURRENT_USER using 'hq';

Fixed user: Một người sử dụng có tên người dùng / mật khẩu Nếu một liên kết bao gồm

một người sử dụng cố định, tên người dùng và mật khẩu của người sử dụng cố định được

sử dụng để kết nối với cơ sở dữ liệu từ xa

Ví dụ: CREATE PUBLIC DATABASE LINK hq CONNECT TO jane IDENTIFIED BY doeUSING 'hq';

Ngày đăng: 14/12/2013, 15:05

HÌNH ẢNH LIÊN QUAN

Hình 1.1: 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: Xác định toàn bộ dữ liệu được lưu trữ trong cơ sở dữ liệu phân tán - Bài toán tạo và sử dụng hiệu quả bản sao trong hệ cơ sở dữ liệu phân tán
Hình 1.1 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: Xác định toàn bộ dữ liệu được lưu trữ trong cơ sở dữ liệu phân tán (Trang 5)
Hình 2.1: Bản sao cơ bản chỉ đọc - Bài toán tạo và sử dụng hiệu quả bản sao trong hệ cơ sở dữ liệu phân tán
Hình 2.1 Bản sao cơ bản chỉ đọc (Trang 9)
Hình 2.2: Bản sao nâng cao - Bài toán tạo và sử dụng hiệu quả bản sao trong hệ cơ sở dữ liệu phân tán
Hình 2.2 Bản sao nâng cao (Trang 10)
Hình 2.3: Nhóm bản sao và thư mục bản sao - Bài toán tạo và sử dụng hiệu quả bản sao trong hệ cơ sở dữ liệu phân tán
Hình 2.3 Nhóm bản sao và thư mục bản sao (Trang 10)
Hình 3.2: Sơ đồ tổng quát xử lý nhiều bản sao - Bài toán tạo và sử dụng hiệu quả bản sao trong hệ cơ sở dữ liệu phân tán
Hình 3.2 Sơ đồ tổng quát xử lý nhiều bản sao (Trang 16)
Hình 3.4: Sơ đồ xử lí cập nhật nhiều bản sao - Bài toán tạo và sử dụng hiệu quả bản sao trong hệ cơ sở dữ liệu phân tán
Hình 3.4 Sơ đồ xử lí cập nhật nhiều bản sao (Trang 17)
Hình 3.3: Các bước xử lý trạng thái điều khiển - Bài toán tạo và sử dụng hiệu quả bản sao trong hệ cơ sở dữ liệu phân tán
Hình 3.3 Các bước xử lý trạng thái điều khiển (Trang 17)

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w