Nghiên cứu áp dụng mô hình đồng bộ trong cơ sở dữ liệu phân tán (LV thạc sĩ)Nghiên cứu áp dụng mô hình đồng bộ trong cơ sở dữ liệu phân tán (LV thạc sĩ)Nghiên cứu áp dụng mô hình đồng bộ trong cơ sở dữ liệu phân tán (LV thạc sĩ)Nghiên cứu áp dụng mô hình đồng bộ trong cơ sở dữ liệu phân tán (LV thạc sĩ)Nghiên cứu áp dụng mô hình đồng bộ trong cơ sở dữ liệu phân tán (LV thạc sĩ)Nghiên cứu áp dụng mô hình đồng bộ trong cơ sở dữ liệu phân tán (LV thạc sĩ)Nghiên cứu áp dụng mô hình đồng bộ trong cơ sở dữ liệu phân tán (LV thạc sĩ)Nghiên cứu áp dụng mô hình đồng bộ trong cơ sở dữ liệu phân tán (LV thạc sĩ)Nghiên cứu áp dụng mô hình đồng bộ trong cơ sở dữ liệu phân tán (LV thạc sĩ)Nghiên cứu áp dụng mô hình đồng bộ trong cơ sở dữ liệu phân tán (LV thạc sĩ)Nghiên cứu áp dụng mô hình đồng bộ trong cơ sở dữ liệu phân tán (LV thạc sĩ)Nghiên cứu áp dụng mô hình đồng bộ trong cơ sở dữ liệu phân tán (LV thạc sĩ)Nghiên cứu áp dụng mô hình đồng bộ trong cơ sở dữ liệu phân tán (LV thạc sĩ)
Trang 1TRẦN VĂN HIỂN
LUẬN VĂN THẠC SĨ KỸ THUẬT
(Theo định hướng ứng dụng)
HÀ NỘI - 2016
Trang 2TRẦN VĂN HIỂN
NGHIÊN CỨU ÁP DỤNG MÔ HÌNH ĐỒNG BỘ
Chuyên ngành : KHOA HỌC MÁY TÍNH
Trang 4DANH MỤC KÝ HIỆU CÁC CHỮ VIẾT TẮT
Viết tắt Tiếng Anh Tiếng Việt
DDB Distributed DataBase Cơ sở dữ liệu phân tán TCP Transmission Control Protocol Giao thức mạng
Information System
Phần mềm hệ thống thông tin địa lý
FRMS Web Forest Resource Monitoring
System
Hệ thống giám sát tài nguyên rừng BIRT Business Intelligence and
Reporting Tools
Kinh doanh thông minh
và công cụ báo cáo
NFIS National Forest Inventory
System
Hệ thống kiểm kê rừng
quốc gia Module QGIS Module Quantum Geographic
Information System
Modul phần mềm hệ thống thông tin địa lý
Trang 5Số liệu hình vẽ Tên hình vẽ Trang
Hình 1.2 Lược đồ quá trình thiết kế từ trên xuống 14
Hình 3.1 Kiến trúc khái niệm của Hệ thống theo dõi
diễn biến tài nguyên rừng
26
Trang 6LỜI CẢM ƠN
Lời đầu tiên, tôi xin chân thành gửi cảm ơn đến PGS.TS Hà Hải Nam, người
đã trực tiếp hướng dẫn và giúp tôi hoàn thành luận văn Với sự nhiệt tình và kiến thức sâu rộng của thầy đã giúp tôi vượt qua những hạn chế về kiến thức chuyên môn để tập trung hoàn thành tốt luận văn của mình
Tôi xin chân thành cảm ơn Ban Giám đốc, Ban Chủ nhiệm Khoa sau Đại học
và các thầy, cô đã giảng dạy trong suốt thời gian tôi theo học tại Học viên Công nghệ Bưu chính Viễn thông
Tôi xin chân thành cảm ơn Hội đồng chấm đề cương đã có nhiều góp ý quý báu cho đề cương luận văn ngay từ bước đầu hình thành ý tưởng xây dựng
Cuối cùng, tôi xin cảm ơn cơ quan đã tạo điều kiện thuận lợi cho tôi trong suốt quá trình học tập và nghiên cứu làm luận văn
Xin chân thành cảm ơn!
Trang 7MỤC LỤC
CHƯƠNG I 9
TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU PHÂN TÁN 9
1.1 Giới thiệu về cơ sở dữ liệu phân tán 9
1.1 1 Các khái niệm về CSDL phân tán 9
1.1.2 Các lý do để sử dụng cơ sở dữ liệu phân tán? 10
1.2 Các vấn đề cơ bản của cơ sở dữ liệu phân tán 11
1.2.1 Điều khiển tập trung 11
1.2.2 Độc lập dữ liệu 11
1.2.3 Giảm dư thừa dữ liệu 12
1.2.4 Độ tin cậy qua các giao dịch phân tán 12
1.2.5 Cải thiện hiệu năng 12
1.2.6 Dễ dàng mở rộng hệ thống 12
1.2.7 Tính toàn vẹn, phục hồi và điều khiển tương tranh 12
1.3 Các vấn đề trong thiết kế hệ cơ sở dữ liệu phân tán 13
CHƯƠNG II 16
VAI TRÒ CỦA ĐỒNG BỘ CƠ SỞ DỮ LIỆU PHÂN TÁN VÀ CÁC MÔ HÌNH ỨNG DỤNG 16
2.1 Giới thiệu bài toán đồng bộ 16
2.2 Các mô hình đồng bộ cơ sở dữ liệu phân tán 17
2.2.1 Các vấn đề về phân mảnh dữ liệu 17
2.2.2 Lý do phân mảnh dữ liệu 17
2.2.3 Các kiểu phân mảnh 18
2.2.4 Các quy tắc phân mảnh 18
2.2.5 Các phương án phân phối 19
2.2.6 Thông tin yêu cầu 20
2.2.7 Phân mảnh ngang 21
2.2.11 Phân mảnh hỗn hợp 23
CHƯƠNG III 26
THỬ NGHIỆM VÀ ĐÁNH GIÁ 26
3.1 Kiến trúc đề xuất thử nghiệm 26
3.2 Các chức năng chính của Ứng dụng Desktop 26
3.3 Các chức năng chính của Ứng dụng Web 27
3.4 Các chức năng chính của hệ thống cơ sở dữ liệu trung tâm 27
3.5 Máy chủ 27
3.6 Môi trường người dùng 27
Trang 83.7 Đồng bộ dữ liệu trong ứng dụng Desktop 30
3.8 Các kịch bản kiểm thử đồng bộ 33
KẾT LUẬN 41
DANH MỤC CÁC TÀI LIỆU THAM KHẢO 42
Trang 9MỞ ĐẦU
1 Tính cấp thiết của đề tài:
Với sự phát triển của ngành công nghệ thông tin, các giao dịch điện tử ngày càng tăng về số lượng và đòi hỏi đảm bảo về chất lượng, đặc biệt trong các lĩnh vực quan trọng như tài chính ngân hàng, chứng khoán, thương mại điện tử, đấu giá Việc xử lý thông tin của người dùng từ những dịch vụ trên phải đảm bảo thời gian thực và không chấp nhận cho việc gián đoạn, có độ trễ cao hoặc thời gian chết
Từ những yêu cầu thực tế, tính cấp thiết về một giải pháp đồng bộ dữ liệu Các giải pháp này phải đảm bảo đáp ứng yêu cầu của người dùng, của doanh nghiệp về mặt
kỹ thuật, dễ dàng triển khai và giá thành hợp lý
Với mục đích, ý nghĩa nêu trên, tôi xin chọn Đề tài “Nghiên cứu áp dụng mô hình đồng bộ trong cơ sở dữ liệu phân tán” để làm luận văn tốt nghiệp
Nội dung của luận văn gồm có ba phần: Mở đầu, Nội dung và Kết luận Trong phần Nội dung có ba chương:
Chương 1: Tổng quan về cơ sở dữ liệu (CSDL) phân tán
Chương 2: Vai trò của đồng bộ cơ sở dữ liệu phân tán và các mô hình
Chương 3: Thử nghiệm và đánh giá
2 Mục đích nghiên cứu:
Nghiên cứu các mô hình đồng bộ cơ sở dữ liệu phân tán, từ đó đề xuất mô hình
áp dụng trong thực tiễn và tiến hành cài đặt, thử nghiệm và đánh giá
3 Đối tượng và phạm vi nghiên cứu:
Luận văn tập trung vào nghiên cứu mô hình đồng bộ trong cơ sở dữ liệu phân tán Giới hạn trong phạm vi nghiên cứu mô hình đồng bộ cơ sở dữ liệu phân tán
4 Phương pháp nghiên cứu:
Tìm hiểu về cơ sở dữ liệu phân tán, nghiên cứu mô hình đồng bộ cơ sở dữ liệu phân tán về mặt lý thuyết kết hợp với thử nghiệm và đánh giá kết quả thông qua mô hình thử nghiệm
Trang 10II NỘI DUNG
Luận văn được cấu trúc với các chương như sau:
Chương I: Tổng quan về cơ sở dữ liệu phân tán
Chương I, trình bày các khái niệm về cơ sở dữ liệu phân tán, hệ quản trị cơ sở dữ liệu phân tán, hệ cơ sở dữ liệu phân tán và lý do để sử dụng cơ sở dữ liệu phân tán Sau khi đưa ra các vấn đề cơ bản về cơ sở dữ liệu phân tán, chương I đã đưa ra các vấn đề trong thiết kế hệ cơ sở dữ liệu phân tán
Chương II: Vai trò của đồng bộ cơ sở dữ liệu phân tán và các mô hình ứng
dụng
Chương II, tập trung giới thiệu bài toán đồng bộ, các vấn đề liên quan đến phân mảnh dữ liệu như phân mảnh ngang, phân mảnh dọc và đưa ra mô hình triển khai đồng bộ dữ liệu
Chương III: Thử nghiệm và đánh giá
Chương III, trình bày vào kiến trúc đề xuất để thử nghiệm, mô hình triển khai SymmetricDS và các kịch bản kiểm thử đồng bộ Trong luận văn mô tả Hệ thống theo dõi diễn biến tài nguyên rừng tại Việt Nam
III KẾT LUẬN
Trang 11CHƯƠNG I TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU PHÂN TÁN
1.1 Giới thiệu về cơ sở dữ liệu phân tán
1.1 1 Các khái niệm về CSDL phân tán
Cơ sở dữ liệu phân tán là một tập hợp nhiều cơ sở dữ liệu có liên đới logic và được phân bổ trên một mạng máy tính Trong khái niệm này có hai thuật ngữ quan trọng trong các định nghĩa này là “liên đới logic” và “phân bố trên một mạng máy tính”
- Liên đới logic: Toàn bộ dữ liệu của cơ sở dữ liệu phân tán có một số các thuộc tính ràng buộc chúng với nhau, điều này giúp chúng ta có thể phân biệt một
cơ sở dữ liệu phân tán với một tập hợp cơ sở dữ liệu cục bộ hoặc các tập tin lưu trữ tại các vị trí khác nhau trong một mạng máy tính
- Phân bổ trên một mạng máy tính: Toàn bộ dữ liệu của cơ sở dữ liệu phân tán không được lưu trữ ở một nơi mà lưu trữ trên trạm thuộc mạng máy tính, điều này giúp chúng ta phân biệt cơ sở dữ liệu phân tán và cơ sở dữ liệu tập trung đơn lẻ
- Hệ quản trị cơ sở dữ liệu phân tán: Một 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 dùng
- Hệ cơ sở dữ liệu phân tán: Được xây dựng dựa trên hai công nghệ cơ bản là
cơ sở dữ liệu và mạng máy tính Một hệ cơ sở dữ liệu phân tán không phải là một
“tập hợp các tập tin” được lưu trữ riêng rẽ tại mỗi nút của một mạng máy tính Để tạo ra một hệ cơ sở dữ liệu phân tán các tập tin không chỉ có liên đới logic mà chúng còn phải có cấu trúc và được truy xuất qua một giao diện chung
- Hệ cơ sở dữ liệu phân tán thuần nhất: Các cơ sở dữ liệu cục bộ ở tất cả các nơi (Site) đều dùng chung một hệ quản trị cơ sở dữ liệu
- Hệ cơ sở dữ liệu phân tán không thuần nhất: Các cơ sở dữ liệu cục bộ ở các nơi (Site) không dùng chung một hệ quản trị cơ sở dữ liệu
Trang 12Hình 1.1: Mô hình hệ cơ sở dữ liệu phân tán
1.1.2 Các lý do để sử dụng cơ sở dữ liệu phân tán?
- Các tổ chức có cấu trúc phân tán: Trong thực tế có nhiều tổ chức được phân tán khắp nơi, trong khi đó, dữ liệu quản lý ngày càng lớn và phục vụ cho đa người dùng nằm phân tán, vì vậy cơ sở dữ liệu phân tán là con đường thích hợp với cấu trúc tự nhiên của các tổ chức đó
- Cần kết nối các cơ sở dữ liệu có sẵn: cơ sở dữ liệu phân tán là giải pháp tự nhiên khi có các cơ sở dữ liệu đang tồn tại và sự cần thiết xây dựng một ứng dụng toàn cục Trong trường hợp này cơ sở dữ liệu phân tán được tạo theo tiến trình từ dưới lên dựa trên nền tảng cơ sở dữ liệu đang tồn tại Tiến trình này đòi hỏi phải tái cấu trúc các cơ sở dữ liệu cục bộ ở một mức nhất định
- Sự lớn mạnh của tổ chức: Các tổ chức có thể phát triển mở rộng bằng cách thành lập thêm các đơn vị mới, vừa có tính tự trị, vừa có quan hệ với các đơn vị tổ chức khác
- Giảm chi phí truyền thông: Tăng ứng dụng cục bộ làm giảm chi phí truyền thông
- Nâng cao hiệu suất: Có cơ chế xử lý song song và phân mảnh dữ liệu theo ứng dụng làm cực đại hóa tính cục bộ của ứng dụng
Trang 13-Tăng độ tin cậy và tính sẵn sàng: Nếu có một thành phần nào đó của hệ thống bị hỏng, hệ thống vẫn có thể duy trì hoạt động
1.2 Các vấn đề cơ bản của cơ sở dữ liệu phân tán
Phần này so sánh cơ sở dữ liệu phân tán với cơ sở dữ liệu tập trung ở một số đặc điểm: điều khiển tập trung, sự độc lập dữ liệu, sự giảm dư thừa dữ liệu, các cấu
trúc vật lý phức tạp để truy xuất hiệu quả
1.2.1 Điều khiển tập trung
Toàn bộ dữ liệu được tập trung lại nhằm để tránh nhằm tránh sự dư thừa, đảm bảo được tính độc lập của dữ liệu
Dữ liệu được quản lý tập trung bởi người quản trị cơ sở dữ liệu Chức năng cơ bản là bảo đảm sự an toàn của dữ liệu Vấn đề điều khiển tập trung không được nhấn mạnh Sự điều khiển được thực hiện theo một cấu trúc điều khiển phân cấp bao gồm hai loại người quản trị cơ sở dữ liệu:
- Người quản trị Ccơ sở dữ liệu toàn cục;
- Người quản trị cơ sở dữ liệu địa phương – cục bộ
Người quản trị cơ sở dữ liệu cục bộ cần phải có những quyền độc lập riêng về
cơ sở dữ liệu cục bộ của mình mà người quản trị cơ sở dữ liệu toàn cục hoàn toàn không có quyền này Đặc điểm này được gọi là sự độc lập vị trí Từ sự độc lập vị trí hoàn toàn đến sự điều khiển tập trung hoàn toàn
1.2.2 Độc lập dữ liệu
Là tổ chức lưu trữ dữ liệu trong suốt đối với người lập trình ứng dụng
Ưu điểm là các chương trình không bị ảnh hưởng bởi những thay đổi về tổ chức lưu trữ vật lý của dữ liệu
Tính đúng đắn của các chương trình ứng dụng không bị ảnh hưởng bởi sự di chuyển dữ liệu từ một vị trí này đến vị trí khác
Trang 141.2.3 Giảm dư thừa dữ liệu
Các cơ sở dữ liệu phân tán được dư thừa dữ liệu vì:
- Làm tăng tính cục bộ của các úng dụng Các ứng dụng cục bộ được thực hiện nhanh hơn, không cần phải truy xuất dữ liệu từ xa
- Làm tăng tính sẵn sàng của hệ thống ứng dụng, nếu dữ liệu tại vị trí bị hỏng được nhân bản tại các vị trí khác
1.2.4 Độ tin cậy qua các giao dịch phân tán
Hệ cơ sở dữ liệu phân tán cải thiện độ tin cậy qua các giao dịch phân tán, vì các thành phần được nhân bản hạn chế được các vị trí lỗi riêng lẻ Lỗi của trạm riêng hoặc lỗi của truyền thông làm cho một hoặc nhiều trạm mất liên lạc không
đủ để phá vỡ toàn bộ hệ thống
1.2.5 Cải thiện hiệu năng
Việc cải thiện hiệu năng dựa vào hai điểm:
- Hệ quản trị cơ sở dữ liệu phân tán có khả năng phân mảnh cơ sở dữ liệu khái niệm và cho phép cục bộ hóa dữ liệu;
- Tính song song của các hệ thống phân tán có thể được khai thác để thực hiện song song truy vấn và nội bộ
1.2.6 Dễ dàng mở rộng hệ thống
Thực hiện bằng cách tăng khả năng lưu trữ và xử lý của mạng Khả năng mở rộng của hệ thống dễ dàng mang tính kinh tế, giảm chi phí
1.2.7 Tính toàn vẹn, phục hồi và điều khiển tương tranh
Các phương pháp cung cấp các giao tác Mỗi một giao tác là một nguyên tố Giao tác nguyên tố là phương tiện để đạt được tính toàn vẹn dữ liệu
Sự phục hồi liên quan đến vấn đề đảm bảo tính nguyên tố của giao tác khi có
sự cố về mặt kỷ thuật
Trang 15Điều khiển tương tranh nhằm đảm bảo tính nguyên tố của giao tác khi xuất hiện sự tương tranh giao tác
1.3 Các vấn đề trong thiết kế hệ cơ sở dữ liệu phân tán
Thiết kế một hệ cơ sở dữ liệu phân tán cần phải chọn những vị trí đặt dữ liệu
và các chương trình trên một mạng máy tính Đối với hệ quản trị cơ sở dữ liệu phân
tán, việc phân tán các ứng dụng đòi hỏi hai điều:
- Phân tán hệ quản trị cơ sở dữ liệu;
- Phân tán các chương trình ứng dụng chạy trên hệ quản trị cơ sở dữ liệu đó
Sự phân tán của các phần mềm hệ thống quản lý cơ sở dữ liệu phân tán tồn tại trong từng trạm lưu trữ dữ liệu
Chúng ta biết rằng tổ chức các hệ phân tán có thể được nghiên cứu theo ba chiều trực giao:
1 Mức độ chia sẻ
2 Hành vi của các thành phần truy nhập
3 Mức độ kiến thức trong hành vi của thành phần truy nhập
Về mức độ chia sẻ, có 3 khả năng:
Một là, không chia sẻ: Mỗi ứng dụng và dữ liệu của nó thực hiện trên một
trạm và không có sự giao tiếp với các chương trình khác hoặc truy cập tới bất kỳ các file dữ liệu nào ở các trạm khác;
Hai là, chia sẻ dữ liệu: Tất cả các chương trình được lặp lại tất cả các trạm
nhưng các file dữ liệu thì không được chia sẻ;
Ba là, chia sẻ chương trình và dữ liệu: Cả dữ liệu và các chương trình đều có
thể được chia sẻ, có nghĩa là một chương trình ở một trạm đã cho có thể yêu cầu một dịch vụ từ một chương trình khác ở một trạm thứ hai mà trong đó trạm thứ hai
có thể phải truy cập file dữ liệu nằm trong trạm thứ ba
Về hành vi của các thành phần truy nhập xác định hai khả năng Các thành phần truy nhập của các yêu cầu người sử dụng có thể là tĩnh, nghĩa là chúng không đổi theo thời gian hoặc là động
Trang 16Về mức độ kiến thức trong hành vi của thành phần truy nhập Đây là một khả năng về lý thuyết, nhưng rất khó, nếu không muốn nói là không thể, thiết kế một hệ thống quản lý cơ sở dữ liệu phân tán mà có thể thích ứng một cách hiệu quả với trường hợp này Một khía cạnh thực tế hơn là các nhà thiết kế có thông tin đầy đủ, nghĩa là các thành phần truy nhập có thể được dự đoán trước ở mức độ chấp nhận được và không quá sai lệch so với những dự đoán này, và thông tin thành phần, trong đó có những sai lệch so với dự đoán
Vấn đề về thiết kế cơ sở dữ liệu phân tán cần phải được xem xét trong phạm vi chung này Tất cả các trường hợp được thảo luận ở trên, trừ các trường hợp trong khả năng không chia sẻ, các vấn đề mới sẽ được đưa ra trong môi trường phân tán
mà không liên quan tới việc thiết lập tập trung
Trong phần này, chúng ta thảo luận ngắn gọn hai phương pháp thiết kế cơ sở
dữ liệu phân tán: Phương pháp thiết kế từ trên xuống và từ dưới lên
1.3.1 Quá trình thiết kế từ trên xuống (top-down)
Hình 1.2: Lược đồ quá trình thiết kế từ trên xuống
Trang 17Phân tích yêu cầu (khảo sát): Nhằm định nghĩa môi trường hệ thống và thu thập các nhu cầu về dữ liệu và nhu cầu xử lý của tất cả mọi người có sử dụng cơ sở
1.3.2 Quá trình thiết kế từ dưới lên (bottom-up)
Thiết kế từ trên xuống thích hợp với những cơ sở dữ liệu được thiết kế từ đầu Tuy nhiên, chúng ta cũng hay thường gặp trong thực tế là đã có sẵn một số cơ sở dữ liệu, nhiệm vụ thiết kế là phải tích hợp chúng thành một cơ sở dữ liệu Tiếp cận từ dưới lên sẽ thích hợp cho tình huống này Khởi điểm của thiết kế từ dưới lên là các lược đồ khái niệm cục bộ Quá trình này sẽ bao gồm việc tích hợp các lược đồ cục
bộ thành khái niệm lược đồ toàn cục
Trang 18CHƯƠNG II VAI TRÒ CỦA ĐỒNG BỘ CƠ SỞ DỮ LIỆU PHÂN TÁN VÀ
CÁC MÔ HÌNH ỨNG DỤNG
2.1 Giới thiệu bài toán đồng bộ
Đồng bộ hóa dữ liệu là một quá trình của việc thiết lập sự thống nhất giữa các
hệ thống và cập nhật liên tục duy trì tính nhất quán trong hệ thống Từ ‘liên tục’ cần được nhấn mạnh ở đây là đồng bộ hóa dữ liệu không nên được xem là một nhiệm
vụ một lần Nó thực sự là một quá trình mà cần phải được lên kế hoạch, sở hữu, quản lý, lên kế hoạch và kiểm soát
Có hai kịch bản đưa ra cho việc đồng bộ hóa dữ liệu đối với một doanh nghiệp:
Một là, thường việc chia sẻ cùng một dữ liệu: Dữ liệu khách hàng, dữ liệu sản
phẩm, dữ liệu nhân viên, hệ thống hỗ trợ khách hàng, hệ thống thanh toán và hóa đơn Để đảm bảo cho quá trình sản xuất của công ty có thể kiểm tra, mỗi hoạt động cần phải đăng nhập đúng Mặc dù một số ứng dụng trên hệ thống sử dụng cùng dữ liệu, các dữ liệu đó cần phải được đồng bộ với các hệ thống khác
Hai là, với sự phát triển của Internet và gia tăng việc kinh doanh quốc tế,
nhiều doanh nghiệp lựa chọn để phân phối các hệ thống của họ về mặt địa lý nhằm giảm độ trễ và chi phí của việc sử dụng mạng lưới và tăng độ tin cậy (giảm nguy cơ như thiên tai ảnh hưởng đến vị trí) Các hệ thống ở tất cả các điểm địa điểm cần phải có một dữ liệu mặc dù dữ liệu tại mỗi địa điểm đó được sửa đổi nhưng dữ liệu cần phải được đồng bộ trên tất cả các địa điểm
Quá trình đồng bộ dữ liệu được theo dõi và đánh giá đáp ứng nhu cầu của doanh nghiệp Từ quan điểm kỹ thuật, việc đồng bộ hóa được thể hiện trên mọi cấp độ:
Trang 19Trích xuất dữ liệu từ các nguồn hệ thống/quản lý;
Truyền dữ liệu;
Chuyển đổi dữ liệu;
Truyền dữ liệu;
Tải dữ liệu vào hệ thống mục tiêu
Trong trường hợp dữ liệu của hệ thống lớn, mỗi bước thực hiện có thể ảnh hưởng đến hiệu suất của hệ thống Do đó, sự đồng bộ cần phải được lên kế hoạch cẩn thận để tránh bất kỳ tác động tiêu cực, ví dụ như trong giờ cao điểm xử lý Để đảm bảo hệ thống chạy ổn định và tránh sai sót, quá trình đồng bộ cần phải được giám sát chặt chẽ, đảm bảo rằng trong quá trình đồng bộ dữ liệu không bị từ chối hoặc bị thay đổi
2.2 Các mô hình đồng bộ cơ sở dữ liệu phân tán
2.2.1 Các vấn đề về phân mảnh dữ liệu
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ông tin là thấp nhất Các bộ hoặc các thuộc tính của quan hệ không thể được xem như một đơn vị cấp phát, vì sẽ làm cho việc cấp phát trở nên phức tạp hơn 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 hay nhó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ác nhau
2.2.2 Lý do phân mảnh dữ liệu
Trong thiết kế cơ sở dữ liệu phân tán cần phải thực hiện phân mảnh dữ liệu vì:
- Trong các hệ quản trị cơ sở dữ liệu, các quan hệ được lưu trữ dưới dạng bảng
2 chiề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 Tuy nhiên trong thực tế, các ứng dụng chỉ yêu cầu thao tác trên các tập con của các quan hệ là khung nhìn dữ liệu của người sử dụng Vì vậy, việc xem tập con của quan hệ là đơn
vị truy xuất thông tin để phân tán dữ liệu là hợp lý
Trang 20- 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 Đồng thời, việc phân mảnh các quan hệ cũng cho phép thực hiện song song một câu vấn tin bằng cách chia nó thành một tập các câu vấn tin con hoạt tác trên các mảnh Vì thế, việc phân mảnh sẽ làm tăng mức độ hoạt động đồng thời và tăng lưu lượng hoạt động của hệ thống
Tuy nhiên, việc phân mảnh chỉ có ưu điểm hoàn toàn mà nó còn thể hiện một
Trang 21đảm bảo cho các mục dữ liệu trong R được ánh xạ hoàn toàn vào các mảnh và không bị mất Mục dữ liệu có thể là toàn bộ trong phân mảnh ngang và thuộc tính trong phân mảnh dọc
Quy tắc 2: Tính phục hồi
Nếu một quan hệ R được phân rã thành các mảnh R1, R2, , Rn khi đó: R=∇Ri, ∀Ri∈FR Toán tử ∇ thay đổi tùy theo từng loại phân mảnh Khả năng phục hồi quan hệ từ các mảnh sẽ đảm bảo bảo toàn các phụ thuộc
Quy tắc 3: Tính tách biệt
Nếu các quan hệ R được phân rã ngang thành các mảnh Ri, i=1, n và mục dữ liệu di nằm trong một mảnh Ri thì nó sẽ không nằm trong mảnh Rk, (k#j) Quy tắc này đảm bảo các mảnh phân rã rời nhau Trong trường hợp phân mảnh dọc, khóa chính của quan hệ phải được lập lại trong tất cả các mảnh Vì thế tính tách biệt trong phân mảnh dọc được hiểu không liên quan gì đến khóa chính của quan hệ
2.2.5 Các phương án phân phối
Giả sử cơ sở dữ liệu được phân mảnh, người ta cần phải quyết định sự phân phối các phân mảnh này tới các trạm khác nhau trên mạng Khi dữ liệu được phân phối, có thể không nhân bản hoặc có thể được nhân bản Không nhân bản, thường được gọi là cơ sở dữ liệu phân hoạch, các mảnh chỉ được phân phối trên các trạm và không có bản sao nào trên mạng Trong trường hợp nhân bản hoặc toàn bộ cơ sở dữ liệu đều có ở trên tất cả các từng trạm (cơ sở dữ liệu được nhân bản đầy đủ), hoặc các mảnh của cơ sở dữ liệu được phân tán tới các trạm bằng cách các mảnh sao được đặt trên nhiều trạm (cơ sở dữ liệu được nhân bản từng phần) Một số các bản sao của mảnh có thể là đầu vào cho thuật toán phân phối hoặc quyết định giá trị của biến được xác đinh bởi thuật toán
Nhân bản làm tăng độ tin cậy và tăng hiệu quả của các câu vấn tin chỉ đọc (Read-only Query) Đặc biệt, có thể truy xuất cơ sở dữ liệu khi gặp sự cố Hơn nữa, các câu truy vấn đọc truy xuất đến cùng một mục dữ liệu có thể cho thực hiện song song vì các bản sao có mặt tại nhiều vị trí
Trang 22Nhân bản hoàn toàn
Nhân bản một phần
Phân hoạch
Xử lý truy vấn Dễ
Quản lý thư mục Dễ hoặc không tồn
tại Điều khiển đồng
Như hình 2.1 so sánh ba cách nhân bản theo một số chức năng của hệ quản trị
cơ sở dữ liệu phân tán
Việc cấp phát dữ liệu phải được thực hiện sao cho thỏa mãn hai yêu cầu sau:
- Chi phí thấp nhất;
- Hiệu năng lớn nhất: Giảm thiểu thời gian đáp ứng và tăng tối đa lưu lượng hệ thống tại mỗi vị trí
2.2.6 Thông tin yêu cầu
Một khía cạnh của thiết kế phân tán là có quá nhiều nhân tố tạo thành một thiết kế tối ưu Tổ chức logic của cơ sở dữ liệu, vị trí của các ứng dụng, các tính chất truy nhập của ứng dụng tới cơ sở dữ liệu, và các tính chất của hệ thống máy tính tại từng trạm, tất cả đều có ảnh hưởng tới các quyết định phân phối Điều này làm nó trở nên rất phức tạp tạo thành một vấn đề phân phối Thông tin cần cho thiết
kế phân tán có thể được chia làm 4 mục:
- Thông tin cơ sở dữ liệu
- Thông tin ứng dụng
Cùng mức độ khó khăn
Cùng mức độ khó khăn