tiểu luận môn lập trình mạng áp dụng thuật toán ellis đảm bảo gắn bó dữ liệu trong các cơ sở dữ liệu phân tán

24 948 2
tiểu luận môn lập trình mạng áp dụng thuật toán ellis đảm bảo gắn bó dữ liệu trong  các cơ sở dữ liệu phân tán

Đ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

Tiểu luận lập trình mạng GVHD: PGS.TS Lê Văn Sơn BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNG BÀI TIỂU LUẬN MÔN LẬP TRÌNH MẠNG Đề tài 29: ÁP DỤNG THUẬT TOÁN ELLIS ĐẢM BẢO GẮN BÓ DỮ LIỆU TRONG CÁC CƠ SỞ DỮ LIỆU PHÂN TÁN GVHD : PGS.TS Lê Văn Sơn Học viên : Phí Thị Lệ Tho LỚP : Cao học Khoa học máy tính – K24 Đà Nẵng, tháng 5 năm 2012 HVTH: Phí Thị Lệ Tho trang 1 Tiểu luận lập trình mạng GVHD: PGS.TS Lê Văn Sơn LỜI NÓI ĐẦU Ngày nay hầu hết các ứng dụng tin học đều được xây dựng để thực hiện trên mạng máy tính, các ứng dụng client-server đang ngày càng được sử dụng phổ biến. Nhưng khi quy mô và mức độ của các ứng dụng tăng lên và yêu cầu về chất lượng, tốc độ xử lý và độ phức tạp cũng tăng theo thì trên thực tế, một xu hướng kỹ thuật mới ra đời – xu hướng phân tán các thành phần tạo nên hệ tin học theo hướng tiếp cận nơi sử dụng và sản xuất thông tin. Song để khai thác có hiệu quả toàn hệ, vấn đề quan trọng hàng đầu cần phải tính đến là các tài nguyên nói chung, đặc biệt là tài nguyên thông tin nói riêng và chiến lược khai thác, sử dụng chúng một cách tối ưu nhất. Với môi trường mạng phân tán này sẽ có nhiều Server đặt ở những nơi khác nhau người ta gọi là môi trường đa Server. Trong môi trường đa Server và việc truy cập từ xa có thể truy xuất đồng thời đảm bào toàn vẹn dữ liệu vì dữ liệu có thể lưu trữ dự phòng trên nhiều Server khác nhau. Đây là hệ thống đa Server rất phức tạp nhưng hệ thống đảm bảo gắn bó dữ liệu giữa các Server đồng thời không làm phức tạp việc truy xuất dữ liệu. Với những thông tin trên nhóm chúng em trình bày chủ đề: 1. Thuật toán Ellis đảm bảo gắn bó dữ liệu trong các CSDL phân tán 2. Đây là gắn bó mạnh giữa các CSDL phân tán 3. Xây dựng trên cơ sở thuật toán 2P 4. Hiện dữ liệu khi truy cập và kiểm tra tính gắn bó. Đối với tiểu luận này nhóm xây dựng một hệ thống gồm 4 Server và một công cụ module Monitor nhằm giám sát cập nhật dữ liệu giữa 4 Server để đánh giá tính gắn bó dữ liệu giữa các server với nhau. Mặc dù đã nghiên cứu kỹ phần lý thuyết để có được cách giải quyết bài tập đúng đắn, phù hợp với yêu cầu nhưng bản thân tôi không thể tránh khỏi những sai sót, kính mong được sự góp ý của thầy giáo hướng dẫn và các anh chị trong lớp để đề tài được tốt hơn. HVTH: Phí Thị Lệ Tho trang 2 Tiểu luận lập trình mạng GVHD: PGS.TS Lê Văn Sơn CHƯƠNG I GIỚI THIỆU VÀI NÉT VỀ HỆ CƠ SỞ DỮ LIỆU PHÂN TÁN 1.1. Giới thiệu Công nghệ về các hệ cơ sở dữ liệu phân tán (distributed database system, DDBS) là sự hợp nhất của hai hướng tiếp cận đối với quá trình xử lý dữ liệu: Công nghệ cơ sở dữ liệu và công nghệ mạng máy tính. Các hệ cơ sở dữ liệu chuyển từ mô thức xử lý dữ liệu, trong đó mỗi ứng dụng định nghĩa và duy trì dữ liệu của riêng chúng sang mô thức quản lý và xử lý dữ liệu tập trung. Hướng đi này dẫn đến tính độc lập dữ liệu, nghĩa là các ứng dụng được miễn nhiệm đối với những thay đổi về tổ chức logic hoặc vật lý của dữ liệu và ngược lại. Một trong những động lực thúc đẩy việc sử dụng hệ cơ sở dữ liệu là nhu cầu tích hợp các dữ liệu hoạt tác của một xí nghiệp và cho phép truy xuất tập trung, nhờ vậy có thể điều khiển được các truy xuất đến dữ liệu, còn công nghệ mạng đi ngược lại với mọi nổ lực tập trung hóa. Nhìn thoáng qua chúng ta khó hình dung ra làm cách nào tiếp cận hai hướng trái ngược nhau để cho ra một công nghệ mạnh mẽ và nhiều hứa hẹn hơn so với từng công nghệ riêng lẻ. Mấu chốt của vấn đề là cần phải hiểu rằng, mục tiêu quan trọng nhất của công nghệ cơ sở dữ liệu là sự tích hợp không phải sự tập trung hóa, cũng cần phải hiểu rằng hai thuật ngữ có được điều này không dẫn đến điều kia. Và vẫn có thể tích hợp mà không cần tập trung hóa. Đây chính là mục tiêu của công nghệ cơ sở dữ liệu phân tán. 1.2. Định nghĩa cơ sở dữ liệu phân tán Một cơ sở dữ liệu phân tán là một tậ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. Vậy hệ quản trị cơ sở dữ liệu phân tán được định nghĩa là một hệ thống phần mềm cho phép quản trị các hệ cơ sở dữ liệu phân tán và làm cho việc phân tán trở nên “vô hình” đối với người sử dụng. Hai thuật HVTH: Phí Thị Lệ Tho trang 3 Tiểu luận lập trình mạng GVHD: PGS.TS Lê Văn Sơn ngữ quan trọng trong định nghĩa này là “liên đới logic’ và “phân bố trên một mạng máy tính”. Một hệ cơ sở dữ liệu phân tán (distributed database system, viết tắt là DDBS) không phải là một “tập các tập tin” lưu riêng lẻ 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 những 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. Ngoài ra, một hệ cơ sở dữ liệu phân tán không phải là hệ thống trong đó dù có sự hiện diện của một mạng máy tính, cơ sở dữ liệu chỉ nằm tại một nút của mạng. Cơ sở dữ liệu này được quản lý tập trung tại một hệ thống máy tính và tất cả mọi yêu cầu đều chuyển đến vị trí đó. Điều cần xem xét là độ chậm trễ khi truyền dữ liệu. Tất nhiên sự tồn tại của một mạng máy tính hoặc một tập các tập tin không đủ để tạo ra một hệ cơ sở dữ liệu phân tán. Điều chúng ta quan tâm là một môi trường trong đó dữ liệu được phân tán trên một số vị trí. HVTH: Phí Thị Lệ Tho trang 4 Tiểu luận lập trình mạng GVHD: PGS.TS Lê Văn Sơn Trong hệ thống cơ sở dữ liệu phân tán, cơ sở dữ liệu chứa trong vài máy tính. Các máy tính liên lạc với nhau qua nhiều phương tiện truyền thông, như bus tốc độ cao hay đường điện thoại. Chúng không chia sẻ bộ nhớ chính, cũng không dùng chung đồng hồ. Các bộ xử lý trong hệ thống phân tán có kích cỡ và chức năng khác nhau. Chúng có thể gồm các bộ vi xử lý, trạm làm việc, máy tính mini, hay các máy tính lớn vạn năng. Những bộ xử lý này được gọi tên là các trạm, nút, máy tính và cả những tên tùy theo ngữ cảnh riêng. Trong hệ thống cơ sở dữ liệu phân tán gồm nhiều trạm, mỗi trạm có thể khai thác các giao thức truy nhập dữ liệu trên nhiều trạm khác. Sự khác nhau chính giữa hệ thống cơ sở dữ liệu phân tán và tập trung là: trong hệ thống tập trung, dữ liệu lưu trữ tại chỗ, còn phân tán thì không. HVTH: Phí Thị Lệ Tho trang 5 Tiểu luận lập trình mạng GVHD: PGS.TS Lê Văn Sơn CHƯƠNG II SỰ GẮN BÓ DỮ LIỆU TRONG CƠ SỞ DỮ LIỆU PHÂN TÁN 2.1 Tác động và giao dịch Các đối tượng khác nhau của hệ không phải là các đối tượng độc lập nhau, chúng quan hệ với nhau bởi tập hợp các quan hệ gọi là các ràng buộc toàn vẹn. Các ràng buộc này thể hiện sâu sắc các đặc tính riêng biệt của hệ. Trạng thái của hệ thoả mãn một tập các ràng buộc toàn vẹn gọi là trạng thái gắn bó. Các nhà thiết kế và vận hành hệ mong muốn rằng việc thực hiện các tiến trình phải duy trì cho được hệ trong trạng thái gắn bó. Để chính xác hoá đặc tính này, cần phải lưu ý là trạng thái của hệ chỉ được xác định ở mức quan sát cho trước. Ta quan tâm đến hai mức quan sát: STT Mức Giải thích 1 NSD Tiến trình là một dãy thực hiện các giao dịch. Giao dịch đó là chương trình duy nhất được thực hiện từ một trạng thái gắn bó dẫn hệ đến một trạng thái gắn bó khác. 2 Hệ thống Mỗi giao dịch được cấu tạo từ nột dãy các tác động được thể hiện như sau. Nếu 2 tác động A và B thuộc hai giao dịch khác nhau được thực hiện bởi hai tiến trình thì hiệu ứng tổng quát của chúng sẽ là hiệu ứng của dãy (A;B) hoặc là (B;A) Ở mức hệ thống, ta có thể nói rằng các tác động là phần tử nhỏ nhất không thể chia cắt được nữa. Cho một tập hợp giao dịch M={T 1 , T 2 …, T n } lần lượt được thực hiện bởi các tiến trình độc lập p 1 , p 2 ,…,p n . Việc thực hiện tuần tự có nghĩa là thực hiện tất cả các giao dịch của M theo kiểu nối đuôi nhau và tuân thủ một trật tự nào đó. Sự gắn bó của hệ được bảo toàn, theo định nghĩa, bằng việc thực hiện riêng biệt từng giao dịch. Do vậy, nó cũng được bảo toàn trong chế độ thực hiện tuần tự của M. HVTH: Phí Thị Lệ Tho trang 6 Tiểu luận lập trình mạng GVHD: PGS.TS Lê Văn Sơn Nếu, vì lý do hiệu quả, nhiều giao dịch được thực hiện song song, thì sự gắn bó không còn đảm bảo được nữa. Một yêu cầu khác nữa rất quan trọng là trong quá trình thực hiện hệ phải đảm bảo cho các tác động không bị ngắt quãng. 2.2 Trật tự hóa các tác động Trở lại với tập hợp giao dịch M = {T 1 , T 2 …, T n } cho ở phần trước. Mỗi giao dịch được cấu tạo từ một dãy các tác động. Bằng các tác động không chia sẻ được này, toàn bộ sự việc thực hiện của tập hợp các giao dịch M bởi một tập hợp các tiến trình tương tranh là tương đương với việc thực hiện một dãy S các tác động thuộc các giao dịch này, như S = (a 1 , a 2 , , a n ) chẳng hạn. Trong trật tự tuân thủ trật tự nội tại của từng giao dịch, dãy này bao gồm tất cả các tác động cấu tạo nên các giao dịch M; mỗi tác động chỉ xuất hiện một và chỉ một lần. Một dãy như vậy gọi là trật tự hóa của tập các giao dịch M. Ví dụ: Cho T 1 = (a 11 , a 12 , a 13 , a 14 ) và T 2 = (a 21 , a 22 , a 23 ). Một trật tự hóa (T 1 , T 2 ) được thể hiện như sau: S = a 21 , a 11 , a 12 , a 22 , a 13 , a 23 , a 14 Trong số các trật tự hóa của một tập hợp các giao dịch, điều rất quan trọng là phải tách ra cho được những cái phục vụ trạng thái gắn bó dữ liệu và chúng được gọi là trật tự hóa gắn bó. Như vậy, đặc tính quan trọng của trật tự hóa là: các trật tự hóa tương ứng với việc thực hiện tuần tự của tập hợp các giao dịch hay còn gọi ngắn gọn là trật tự hóa tuần tự. Điều kiện đủ cho sự gắn bó của một trật tự hóa có thể được phát biểu như sau: Một trật tự hóa là gắn bó, nếu nó có cùng quan hệ phụ thuộc với một trật tự tuần hoàn. 2.3 Triển khai giao dịch tôn trọng sự gắn bó Cho một tập hợp giao dịch M={T 1 , T 2 …, T n }. Một trật tự hóa của tập hợp các tác động thành phần sẽ tương ứng với việc thực hiện hoàn toàn các giao dịch. Việc thu được một trật tự hóa gắn bó chỉ có thể thành công khi áp dụng các ràng buộc trên trật tự thực hiện các tác động. Nguyên lý của phương pháp là ở chỗ làm chậm HVTH: Phí Thị Lệ Tho trang 7 Tiểu luận lập trình mạng GVHD: PGS.TS Lê Văn Sơn một tác động nào đó cho đến thời điểm mà sự thực hiện của nó không còn có nguy cơ phá hủy sự gắn bó của trật tự hóa (bằng cách chặn tiến trình hiện hành). Để đảm bảo các giao dịch trên tôn trọng sự gắn bó thông tin thì người ta đưa ra các phương pháp, cơ chế để đảm bảo khi giao dịch vẫn có sự gắn bó thông tin toàn vẹn dữ liệu trên cơ sở dữ liệu phân tán là:  Cơ chế then cài: Cho phép một giao dịch có thể giải phóng đối tượng mà nó đã cài then.  Loại trừ tương hỗ: Nếu ta biết trước các đối tượng được xử lý bởi một giao dịch nào đó, thì ta có thể cài then công việc truy cập đến các đối tượng.  Then cài lựa chọn đối tượng: Một giao dịch thay đổi giá trị của đối tượng phải loại trừ tất cả các đối tượng khác muốn truy cập, ngược lại thì việc truy cập được tiến hành theo kiểu tương tranh.  Giao dịch hai pha: 1. Toàn bộ đối tượng bị cài then vẫn ở trong tình trạng cài then cho đến cuối giao dịch và 2. Không có then cài nào có thể diễn ra tiếp theo một then cài khác trong cùng một giao dịch. Bây giờ ta tưởng tượng rằng các đối tượng được phân tán trên nhiều trạm khác nhau và được nối với nhau thông qua hệ thống viễn thông và rằng các tiến trình diễn ra trên các trạm khác nhau. Hệ thống viễn thông cho phép các tiến trình trên các trạm khác nhau có thể trao đổi các thông điệp với nhau. Ta giả định rằng các tiến trình và các phương tiện truyền thông là các đối tượng có thể rơi vào sự cố. Một hệ quản lý tập hợp thông tin phân tán bao gồm: STT Cơ chế 1 Cơ chế cho phép sắp xếp một cách tổng quát các tác động của cùng một giao dịch, ngay cả khi các tác động này diễn ra trên các trạm khác nhau. 2 Cơ chế điều khiển các tranh chấp truy cập cục bộ vào các đối tượng đảm bảo tôn trọng tính toàn vẹn của các đối tượng truy cập cục bộ này. 3 Cơ chế có khả năng xử lý các bế tắc và thiếu thốn vô hạn, hậu quả của việc hủy bỏ các giao dịch. 4 Cơ chế phục hồi các giao dịch đã hủy bỏ hay xử lý các sự cố. Cơ chế xử lý sự cố STT Phải thực hiện HVTH: Phí Thị Lệ Tho trang 8 Tiểu luận lập trình mạng GVHD: PGS.TS Lê Văn Sơn 1 Giao dịch T bắt buộc phải thực hiện một cách trọn vẹn 2 Nếu có sự cố xảy ra thì phải quay lại điểm xuất phát. Muốn thực hiện những điều vừa nêu ở trên, người ta đòi hỏi giao dịch phải có các đặc tính toàn vẹn như sau: STT Phải thực hiện 1 Nếu một tiến trình bị sự cố trước khi kết thúc T nhưng lại sau các thao tác thay đổi cần thiết của T, trạng thái của hệ là gắn bó. 2 Nếu một tiến trình bị sự cố trước khi diễn ra các thay đổi của T, trạng hái của hệ là gắn bó. 3 Nếu một tiến trình bị sự cố giữa các thay đổi của T, trạng thái của hệ là không gắn bó. Nếu dữ liệu được phân tán trên nhiều server, để bảo đảm dữ liệu sẽ được ghi lên đúng đắn lên mọi cơ sở dữ liệu, đòi hỏi phải có các cơ chế bảo vệ dữ liệu. Ví dụ như việc cập nhật bảng cân đối tài khoản khách hàng ở ba cơ sở dữ liệu khác nhau. Nếu có sự cố kết nối xảy ra trong thời gian ghi giao dịch, cơ sở dữ liệu sẽ mất tính đồng bộ. Xử lý giao dịch khắc phục tình trạng này bằng cách giám sát những thay đổi tác động lên các cơ sở dữ liệu liên quan nhằm bảo đảm toàn vẹn dữ liệu một khi có sự cố. 2.4 Quản lý gắn bó các giao dịch Bây giờ ta hãy xem xét một hệ, trong đó các đối tượng được phân tán trên nhiều trạm, không có bản sao mỗi đối tượng chỉ tồn tại có một bản duy nhất. Một giao dịch T j có thể tham chiếu đến các đối tượng nằm trên các trạm khác nhau và do vậy gồm nhiều tác động thực hiện trên nhiều trạm. Như vậy ta phải xác định trên một trạm S i một tiến trình P ji với nhiệm vụ thực hiện các tác động giao dịch T j trên S i , các tác động được thực hiện trên các trạm khác nhau có thể tiến hành theo kiểu song song. Các phương pháp để quản lý gắn bó các giao dịch như: Phương pháp dự phòng để chống bế tắc, phương pháp dựa vào việc hạn chế các khả năng diễn ra bằng cách phát hiện bế tắc có tính chất động, điều đó dẫn đến hủy bỏ các giao dịch. HVTH: Phí Thị Lệ Tho trang 9 Tiểu luận lập trình mạng GVHD: PGS.TS Lê Văn Sơn CHƯƠNG III XÂY DỰNG THUẬT TOÁN ELLIS ĐẢM BẢO GẮN BÓ MẠNH 3.1. Thuật toán Ellis đảm bảo gắn bó mạnh 3.1.1. Nguyên lý Tập hợp bao gồm các trạm được tổ chức theo kiểu vòng tròn ảo. Các cập nhật được thực hiện theo hai thì: - Thống nhất giữa hai trạm - Thực hiện cập nhật Do vậy, thuật toán này đảm bảo một sự gắn bó mạnh. Nếu có nhiều yêu cầu cập nhật diễn ra đồng thời thì ta phải có quy tắc để có thể quyết định yêu cầu nào được tiếp nhận và thoả mãn. Nhằm phục vụ cho ý tưởng đó, ta thường hay sử dụng dấu phối hợp cho mỗi cập nhật và ta xử lý yêu cầu có Thời gian dấu lâu nhất. 3.1.2. Triển khai hệ ổn định Mỗi trạm có thể có các trạng thái sau: - Nghỉ ngơi: Trạm không thực hiện cập nhật nào cả. - Hoạt động: Trạm đã nhận một yêu cầu cập nhật cục bộ mà yêu cầu này đã được truyền cho các trạm khác để kiểm tra. - Thụ động: Trạm đã đồng ý cho một cập nhật và chờ trật tự tương ứng. - Cập nhật: Trạm đang trong tình trạng chuyển của cập nhật, trong khi đó tất cả các yêu cầu khác truyền đến đều được lưu trữ. Chũng sẽ được xử lý khi quay về một trong các trạng thái khác. Lúc khởi sự, tất cả các trạm đều trong trạng thái nghỉ ngơi. Trạm khởi sự việc cập nhật, đầu tiên cần phải gửi một yêu cầu cho phép cập nhật, nó chỉ làm được công việc đó trong trạng thái nghỉ ngơi. Lúc này nó được nhận dấu và được gửi vào vòng tròn, trạm khởi sự chuyển trạng thái từ nghỉ ngơi sang hoạt động Nếu chỉ có một yêu cầu duy nhất được đưa vào vòng tròn, nó đi qua tất cả các trạm để chuyển các trạm này từ nghỉ ngơi sang thụ động. Khi nó đã trở về nơi khởi sự thì việc thống nhất coi như hoàn tất. Việc cập nhật nói riêng lúc này được gửi đi và mỗi trạm sau khi thực hiện lại trở về trạng thái nghỉ ngơi. HVTH: Phí Thị Lệ Tho trang 10 [...]... VỀ HỆ CƠ SỞ DỮ LIỆU PHÂN TÁN .3 1.1 Giới thiệu 3 1.2 Định nghĩa cơ sở dữ liệu phân tán 3 CHƯƠNG II .6 SỰ GẮN BÓ DỮ LIỆU TRONG CƠ SỞ DỮ LIỆU PHÂN TÁN 6 2.1 Tác động và giao dịch 6 2.2 Trật tự hóa các tác động 7 2.3 Triển khai giao dịch tôn trọng sự gắn bó .7 2.4 Quản lý gắn bó các giao dịch 9 3.1 Thuật toán Ellis đảm bảo gắn bó mạnh... Sơn và các tài liệu liên quan để áp dụng thực hiện tiểu luận này, tôi đã hiểu được rõ thêm bản chất của hệ tin học phân tán, nhất là quá trình gắn bó dữ liệu bằng phương pháp trật tự hóa trên hệ thống đa Server thông qua việc gửi và nhận thông điệp giữa Client/Server, giữa các Server Nội dung tiểu luận đã khái quát sơ lược lý thuyết về hệ Cơ sở dữ liệu phân tán, sự gắn bó dữ liệu bằng phương pháp trật... trang 21 Tiểu luận lập trình mạng GVHD: PGS.TS Lê Văn Sơn KẾT LUẬN Một trong các tiêu chí đặt ra trong việc phát triển các chương trình ứng dụng hiện nay, là phải hoạt động hiệu quả trên môi trường mạng, áp ứng được các yêu cầu của đối tượng sử dụng Đòi hỏi các nhà thiết kế hệ thống, người lập trình phải có tư duy và khả năng và nắm bắt kịp thời các công nghệ ứng dụng trong lập trình mạng Qua quá trình. .. pháp trật tự hóa, các kỹ thuật lập trình phân tán trong ngôn ngữ lập trình Java Xây dựng giao diện trao đổi thông điệp giữa Client và hai server, từ đó xây dựng các Client/Server có monitoring theo dõi quá trình gửi và nhận thông điệp trực tiếp trong panel HVTH: Phí Thị Lệ Tho trang 22 Tiểu luận lập trình mạng GVHD: PGS.TS Lê Văn Sơn TÀI LIỆU THAM KHẢO [1] Ts Lê Văn Sơn, Hệ tin học phân tán, Nhà xuất bản... được giới thiệu lần đầu tiên trong JDK 1.1, làm cho công nghệ lập trình mạng lên một tầm cao hơn Dù rằng RMI là công nghệ khá dễ sử dụng, nó cũng được xem như là một công nghệ lập trình mạnh với các nhà phát triển Java trung bình với một mô hình phát triển hoàn toàn mới – công nghệ lập trình phân tán Trong phần này, tôi sẽ giới thiệu sâu về kĩ thuật này lập trình mạng phân tán này 3.2.1 Kiến trúc Java... HVTH: Phí Thị Lệ Tho trang 14 Tiểu luận lập trình mạng GVHD: PGS.TS Lê Văn Sơn CHƯƠNG IV DEMO CHƯƠNG TRÌNH ỨNG DỤNG JAVA 4.1 Đặt vấn đề Trong một hệ phân tán có độ ổn định tốt, ta muốn duy trì sự gắn bó mạnh giữa các bản sao của một đối tượng đặt trên các server khác nhau Thuật toán như sau : Trước khi thực hiện cập nhật, một server nào đó cần phải yêu cầu và thống nhất với các server khác Khi đó, server... thực sự Ba Server này có chức năng: o Chứa cơ sở dữ liệu là một tài khoản ngân hàng o Khởi động Server1 lắng nghe kết nối với Server2 và Server3 và hiển thị cơ sở dữ liệu o Khởi động Server2 và kết nối với Server1, lắng nghe kết nối Server3 và hiển thị cơ sở dữ liệu o Khởi động Server3, thực hiện kết nối với Server1 và Server2, đồng thời hiển thị cơ sở dữ liệu Vậy Trước khi thực hiện cập nhật, một... để tạo một mô hình đối tượng phân tán Java mà tích hợp một cách tự nhiên vào ngôn ngữ lập trình Java và mô hình đối tượng cục bộ Kiến trúc RMI đã thành công, trong việc xây dựng một hệ thống kế thừa khả năng an toàn và tin cậy của kiến trúc Java sang môi trường lập trình phân tán RMI JDBC CORBA java.net TCP/IP Network OS HVTH: Phí Thị Lệ Tho trang 11 Tiểu luận lập trình mạng GVHD: PGS.TS Lê Văn Sơn... cầu và thống nhất với các server khác Cơ sở dữ liệu chỉ cập nhật khi các Server đồng bộ - Giả lập Client trên một cửa sổ khác: o Kết nối với 3 Server o Gửi thông điệp để thay rút số tiền có trong tài khoản của các khách hàng HVTH: Phí Thị Lệ Tho trang 15 Tiểu luận lập trình mạng GVHD: PGS.TS Lê Văn Sơn Khi đó, server này tiến hành cập nhật; điều này phải tiến hành trên tất cả các bản sao; đối tượng... trên tất cả các bản sao; đối tượng không thể truy cập chừng nào các bản sao còn chưa cập nhật hết Vậy với điều kiện hệ phân tán không ổn định (luôn có sự cố kỹ thuật) các Server sẽ cập nhật như thế nào? 4.2 Chương trình Java 4.2.1 Giả lập 03 Server và 01 Client Phần này tôi chọn lập trình Client/Server bằng RMI của Java để mô phỏng quá trình cập nhật dữ liệu khi rút tiền từ ATM: - Giả lập ba Server . Tiểu luận lập trình mạng GVHD: PGS.TS Lê Văn Sơn BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNG BÀI TIỂU LUẬN MÔN LẬP TRÌNH MẠNG Đề tài 29: ÁP DỤNG THUẬT TOÁN ELLIS ĐẢM BẢO GẮN BÓ DỮ LIỆU TRONG CÁC. của công nghệ cơ sở dữ liệu phân tán. 1.2. Định nghĩa cơ sở dữ liệu phân tán Một cơ sở dữ liệu phân tán là một tậ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 bó dữ liệu trong các CSDL phân tán 2. Đây là gắn bó mạnh giữa các CSDL phân tán 3. Xây dựng trên cơ sở thuật toán 2P 4. Hiện dữ liệu khi truy cập và kiểm tra tính gắn bó. Đối với tiểu luận này

Ngày đăng: 31/01/2015, 22:49

Từ khóa liên quan

Mục lục

  • LỜI NÓI ĐẦU

  • CHƯƠNG I

  • GIỚI THIỆU VÀI NÉT VỀ HỆ CƠ SỞ DỮ LIỆU PHÂN TÁN

    • 1.1. Giới thiệu

    • 1.2. Định nghĩa cơ sở dữ liệu phân tán

    • CHƯƠNG II

    • SỰ GẮN BÓ DỮ LIỆU TRONG CƠ SỞ DỮ LIỆU PHÂN TÁN

      • 2.1 Tác động và giao dịch

      • 2.2 Trật tự hóa các tác động

      • 2.3 Triển khai giao dịch tôn trọng sự gắn bó

      • 2.4 Quản lý gắn bó các giao dịch

      • 3.1. Thuật toán Ellis đảm bảo gắn bó mạnh

      • 3.2. Giới thiệu hệ thống phân tán sử dụng công nghệ RMI

        • 3.2.1. Kiến trúc Java RMI

        • 3.1.2. Giao tiếp: trái tim của RMI

        • 3.2.1. Lớp truyền vận

        • 4.2.1. Giả lập 03 Server và 01 Client

        • KẾT LUẬN

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

Tài liệu liên quan