Xem mẫu

  1. TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ, ĐẠI HỌC ĐÀ NẴNG - SỐ 12(73).2013, Quyển 2 NGHIÊN CỨU VÀ XÂY DỰNG HỆ THỐNG CƠ SỞ DỮ LIỆU PHÂN TÁN TRONG QUẢN LÝ ĐÀO TẠO RESEARCHING AND BUILDING A FRAGMENTED DATABASE SYSTEM FOR TRAINING ADMINISTRATION Nguyễn Thị Ly Sa Trường Cao đẳng Công nghệ Thông tin, Đại học Đà Nẵng Email: lysa.dsn@gmail.com TÓM TẮT Ứng dụng tốt công nghệ thông tin trong quản lý đào tạo là chìa khóa thành công trong việc quản lý của các nhà trường, là tiền đề nâng cao chất lượng và hiệu quả đào tạo. Cùng với mục đích này, bài báo đã tập trung tìm hiểu và xây dựng mô hình cơ sở dữ liệu phân tán phù hợp với yêu cầu của hệ thống quản lý đào tạo thay cho hệ thống cơ sở dữ liệu tập trung nhiều bất cập trong hiện tại, góp phần nâng cao hiệu quả trong việc quản lý sinh viên của các trường Đại học Cao đẳng. Nội dung bài báo này trình bày tổng quan về cơ sở dữ liệu phân tán, qui trình quản lý đào tạo, đề xuất mô hình cơ sở dữ liệu phân tán trong quản lý đào tạo cùng với giải pháp đồng bộ dữ liệu. Từ khóa: cơ sở dữ liệu phân tán; phân mảnh; nhân bản; đồng bộ dữ liệu; hệ thống quản lý đào tạo ABSTRACT Application of information technology to effective training administration is the key to successes in the administration of the university, and one of the premises to improve the quality and effectiveness of training. With this purpose, I study and build a distributed database model for training administration, which is used to replace the centralized database system at the present, contributing to improving the efficiency of the administration of college and university students. In this study, I present an overview of distributed database, training administration processes and the proposal of a distributed database model for training administration as well as data synchronization solutions Key words: distributed database; fragmentation; replication; data synchronization; training administration system 1. Đặt vấn đề tạo của các trường Đại học, Cao đẳng, cụ thể Trường Cao đẳng Công nghệ Thông tin, Đại học Công nghệ cơ sở dữ liệu (DataBase) đã trải Đà Nẵng (CĐCNTT, ĐHĐN) được xây dựng qua một quá trình hình thành và phát triển khá lâu theo mô hình cơ sở dữ liệu tập trung, cơ sở dữ dài. Ban đầu, các hệ cơ sở dữ liệu thường gắn liền liệu được lưu ở một máy chủ (server) và mọi với ứng dụng, nghĩa là mỗi ứng dụng định nghĩa hoạt động như đăng ký học phần của sinh viên, và duy trì dữ liệu của riêng chúng. Phát triển hơn, nhập điểm của phòng đào tạo hay quản lý lớp dữ liệu được quản lý một cách tập trung, nhiều học của giáo viên… đều truy cập trực tiếp lên ứng dụng khác nhau có thể truy xuất dữ liệu trực một server gây nên sự quá tải xử lý cho server, tiếp từ cơ sở dữ liệu tập trung đó. giảm hiệu suất hoạt động và đôi khi ảnh hưởng Tuy nhiên, cơ sở dữ liệu tập trung cũng tồn đến tính an toàn của hệ thống. tại nhiều khuyết điểm, có thể kể đến đó là khi Nhằm góp phần nâng cao hiệu quả trong trung tâm lưu trữ và xử lý dữ liệu có sự cố thì toàn việc quản lý sinh viên của các trường Đại học, hệ thống sẽ ngừng hoạt động, hay tình trạng tắc Cao đẳng, bài báo này tập trung tìm hiểu và xây nghẽn khi có quá nhiều yêu cầu truy xuất dữ liệu. dựng mô hình cơ sở dữ liệu phân tán phù hợp với Cơ sở dữ liệu phân tán ra đời đã phần nào khắc các yêu cầu đặt ra của hệ thống. Trong phạm vi phục được những hạn chế của cơ sở dữ liệu tập bài báo này, tác giả giới thiệu tổng quan về cơ sở trung, là kết quả của sự hợp nhất hai hướng tiếp dữ liệu phân tán, đề xuất mô hình cơ sở dữ liệu cận đối với quá trình xử lý dữ liệu: công nghệ cơ phân tán trong quản lý đào tạo ứng dụng vào sở dữ liệu và công nghệ mạng máy tính. Trường CĐCNTT, ĐHĐN, đồng thời đề xuất giải Hiện nay phần lớn hệ thống quản lý đào pháp đồng bộ cơ sở dữ liệu trên SQL Server. 87
  2. TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ, ĐẠI HỌC ĐÀ NẴNG - SỐ 12(73).2013, Quyển 2 2. Tổng quan về Cơ sở dữ liệu phân tán [1, 2] 2.3.2. Phân mảnh ngang 2.1. Cơ sở dữ liệu phân tán là gì?[1, 2] Phân mảnh ngang chính là việc chia quan hệ theo chiều ngang, kết quả của phân mảnh ngang Cơ sở dữ liệu phân tán (Distributed là các quan hệ con, số bộ trong các quan hệ con DataBase - DDB) là một tập hợp nhiều cơ sở dữ này là tách biệt nhau. Phân mảnh ngang thực chất liệu có liên đới logic và được phân bố trên một là phép chọn thỏa một điều kiện cho trước. mạng máy tính. Trong đó liên đới logic là dữ liệu ở các nơi được sử dụng để giải quyết chung một Phân mảnh ngang nguyên thủy: Phân vấn đề, còn phân bố trên một mạng máy tính là mảnh ngang nguyên thuỷ được định nghĩa bằng toàn bộ dữ liệu không phải lưu trữ ở một nơi mà một phép toán chọn trên các quan hệ gốc. Với lưu trữ trên nhiều trạm thuộc mạng máy tính. quan hệ R, các mảnh ngang của R là các Ri: Ri = σFi(R), 1 ≤ i ≤ n. Trong đó Fi là điều kiện 2.2. Thiết kế Cơ sở dữ liệu phân tán [1, 2] chọn được sử dụng để có được mảnh Ri. Kỹ thuật thiết kế cơ sở dữ liệu phân tán Phân mảnh ngang dẫn xuất: Phân mảnh chính là trả lời câu hỏi “Làm thế nào để cơ sở dữ ngang dẫn xuất là phân rã một quan hệ thành các liệu và các ứng dụng chạy trên cơ sở dữ liệu đó mảnh dựa vào điều kiện chọn được định nghĩa có thể đặt ở nhiều vị trí?”. Hai kỹ thuật được sử trên một quan hệ khác có liên quan. dụng trong quá trình thiết kế là phân mảnh (Fragmentation) và nhân bản (Replication). 2.3.3. Phân mảnh hỗn hợp Phân mảnh chính là chia một quan hệ thành Trong đa số các trường hợp, phân mảnh những mảnh tách biệt (phân hoạch), mỗi mảnh ngang hoặc phân mảnh dọc đơn giản không đủ được phân bố tại các vị trí khác nhau. Khi phân đáp ứng các yêu cầu từ ứng dụng. Có một số bố các mảnh lên các vị trí, nó có thể được nhân trường hợp phân mảnh dọc có thể thực hiện sau bản hoặc chỉ duy trì một bản duy nhất. một số mảnh ngang hoặc ngược lại, chọn lựa Lý do cần nhân bản là nhằm đảm bảo được này được gọi là phân mảnh hỗn hợp. độ tin cậy và hiệu quả cho yêu cầu truy vấn dữ 3. Xây dựng mô hình Cơ sở dữ liệu phân tán liệu, cụ thể nếu có nhiều bản sao của một đơn vị trong quản lý đào tạo dữ liệu đặt tại nhiều vị trí thì người dùng vẫn có cơ hội truy xuất được dữ liệu ngay cả khi vị trí 3.1. Qui trình quản lý đào tạo khác xảy ra sự cố. Tuy nhiên đối với những yêu Hiện nay, việc quản lý sinh viên theo học cầu cập nhật dữ liệu thì việc nhân bản gây nên chế tín chỉ trong một số trường Đại học Cao nhiều rắc rối vì hệ thống phải đảm bảo rằng tất cả đẳng được thực hiện như sau: các bản sao phải được cập nhật chính xác. - Phòng Đào tạo tiếp nhận sinh viên nhập Vì vậy, quyết định phân mảnh như thế nào, học, xếp lớp, mở lớp học phần. có nhân bản hay không và việc phân bố các mảnh - Mỗi sinh viên sẽ nhận được một tài khoản tới các vị trí sao cho tối ưu là bài toán qui hoạch và tự đăng nhập vào hệ thống để đăng ký học phần. toán học với độ phức tạp NP-hard nhằm hạ tối đa - Phòng Tài vụ căn cứ vào số tín chỉ sinh chi phí lưu trữ, chi phí xử lý và truyền thông. viên đăng ký trong mỗi học kỳ để thu học phí 2.3. Phương pháp phân mảnh [1, 2] sinh viên. 2.3.1. Phân mảnh dọc - Kết quả học tập của sinh viên được Phòng Đào tạo trực tiếp quản lý: nhập điểm, Một phân mảnh dọc cho một quan hệ R sinh tổng hợp, phân loại và xét học vụ mỗi hoc kỳ. ra các mảnh R1, R2,.., Rr, mỗi mảnh chứa một tập con các thuộc tính của R và cả khoá của R. Phân - Phòng Công tác Sinh viên căn cứ vào mảnh dọc thực chất là chia quan hệ theo chiều dọc, kết quả học tập và kết quả tham gia các hoạt nghĩa là thiết lập các quan hệ mới từ một số thuộc động để xét điểm rèn luyện, xét học bổng. tính của quan hệ gốc. Thực chất đây là phép chiếu - Khoa trực tiếp quản lý tiến độ giảng dạy lên tập con các thuộc tính của quan hệ. của giáo viên theo đề cương chi tiết và trực tiếp 88
  3. TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ, ĐẠI HỌC ĐÀ NẴNG - SỐ 12(73).2013, Quyển 2 quản lý sinh viên về chuyên cần, thông tin đề tài cơ sở dữ liệu tại các bộ phận và cơ sở dữ liệu thực tập, nơi thực tập, đề tài tốt nghiệp, phân dành cho sinh viên phải có cơ chế đồng bộ trực giáo viên hướng dẫn. tuyến hai chiều thông qua hệ thống mạng. - Ngoài ra, sinh viên cũng có thể đăng Tùy vào qui mô của tổ chức mà việc sử nhập vào hệ thống để xem thời khóa biểu, lịch dụng cơ sở dữ liệu và phân bổ server đến từng bộ thi, bảng điểm kết quả học tập và cũng có thể phận được thiết kế sao cho phù hợp. Chẳng hạn, đặt những câu hỏi nếu có bất cứ vấn đề gì liên với Trường CĐCNTT, ĐHĐN, Phòng Tài vụ và quan đến học tập. Phòng Công tác Sinh viên hiện tại chỉ có một vài người sử dụng hệ thống, việc bố trí cho mỗi 3.2. Mô hình cơ sở dữ liệu phân tán quản lý phòng ban một server là điều không cần thiết nên đào tạo hai bộ phận này có thể dùng chung server và Hệ thống cơ sở dữ liệu quản lý đào tạo nên chung cơ sở dữ liệu với Phòng Đào tạo để hạn được tổ chức phân tán tới các bộ phận (Khoa và chế việc đồng bộ dữ liệu. Ngoài server Phòng các Phòng ban) trong Nhà trường, mỗi bộ phận sẽ Đào tạo, đề tài đề xuất thêm hai server nữa: một có một cơ sở dữ liệu chứa dữ liệu thuộc phạm vi server dành riêng cho sinh viên và một server của bộ phận và vận hành độc lập. Ngoài ra, cần dành cho cả hai Khoa Công nghệ Thông tin và phải có một cơ sở dữ liệu dành riêng cho sinh Khoa Kế toán - Tin học, hai khoa dùng chung viên xem điểm và đăng ký học phần qua internet. server vì tổng số sinh viên từ trước đến nay của Cơ sở dữ liệu tại Phòng Đào tạo chứa toàn bộ cơ hai khoa không nhiều (khoảng hơn 4000 sinh sở dữ liệu tại các bộ phận. Để đảm bảo tính chính viên). Mô hình này được minh họa bằng Hình 1. xác của dữ liệu, cơ sở dữ liệu tại Phòng Đào tạo, Hình 1. Một mô hình cơ sở dữ liệu phân tán quản lý đào tạo 3.3. Thiết kế cơ sở dữ liệu phân tán sẽ được đồng bộ về các bộ phận liên quan. Trong hệ thống quản lý đào tạo, toàn bộ dữ Vấn đề ở đây là tại sao lại sử dụng nhân liệu nên được lưu trữ tại cơ sở dữ liệu Phòng Đào bản của các phân mảnh tại các phòng ban mà tạo, việc phân tán dữ liệu đến các bộ phận được không sử dụng các phân mảnh tách biệt, khi đó thực hiện bằng cách phân mảnh bảng dữ liệu của Phòng Đào tạo cần thông tin bộ phận nào thì các quan hệ tổng thể thành các bảng dữ liệu độc liên kết tới cơ sở dữ liệu của phòng ban đó để lập phù hợp với chức năng và nhiệm vụ của từng lấy dữ liệu, bởi vấn đề nhân bản sẽ dẫn tới tình bộ phận sau đó nhân bản chúng rồi định vị các bản trạng dư thừa dữ liệu nên có thể lãng phí không sao vào các vị trí thích hợp. Mọi thay đổi dữ liệu gian lưu trữ và nguy cơ gây nên nhiều xung đột tại các phòng ban sẽ được đồng bộ về Phòng Đào khi cập nhật dữ liệu? tạo và mọi thay đổi dữ liệu tại Phòng Đào tạo cũng Câu trả lời cho vấn đề này là việc truy xuất dữ liệu và cập nhật thông tin tại Phòng Đào 89
  4. TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ, ĐẠI HỌC ĐÀ NẴNG - SỐ 12(73).2013, Quyển 2 tạo được thực hiện rất thường xuyên, trong khi - Snapshot Replication: Đây là loại nhân việc truy xuất dữ liệu từ hai hay nhiều mảnh tại bản đơn giản nhất, nó sao chép toàn bộ dữ liệu nhiều server rồi nối hoặc hợp chúng lại với chi cần nhân bản từ Publisher tới Subscriber. Khi có phí rất cao nên hiệu suất hoạt động bị giảm thay đổi, nhân bản Snapshot gởi tất cả dữ liệu mạnh là điều có cơ sở. Ngày nay, việc tốn không tới cho Subscriber thay vì chỉ gởi những thay gian lưu trữ không còn là vấn đề được đặt lên đổi. Loại nhân bản này được đánh giá cao trong hàng đầu mà là tốc độ xử lý, còn các nguy cơ các ứng dụng chỉ đọc như tìm kiếm hay các hệ xung đột xảy ra khi cập nhật dữ liệu có thể giải thống yêu cầu dữ liệu mới nhất và dung lượng quyết được trong hệ thống quản lý đào tạo (sẽ không lớn. được trình bày ở phần 3.5). - Transactional Replication: Với loại Chẳng hạn ứng với mô hình cơ sở dữ liệu nhân bản này, người dùng có thể chọn tất cả hay phân tán đã đề xuất trong Hình 1, toàn bộ dữ một phần của bảng. Loại nhân bản này sử dụng liệu được lưu trong cơ sở dữ liệu đặt tại server transaction log để giữ những thay đổi trên dữ Phòng Đào tạo, server Sinh viên lưu bản sao liệu và lưu những thay đổi này lên cơ sở dữ liệu một phần cơ sở dữ liệu mà sinh viên được phép phân tán (tại Distrubutor), những thay đổi này sẽ xem và cập nhật, tương tự server Khoa lưu bản được chuyển đến các Subscriber theo một trật tự sao một phần cơ sở dữ liệu mà Khoa được phép nhất định. Transactional Replication giải quyết xem và cập nhật. tốt vấn đề xung đột dữ liệu nhưng tính độc lập của các server không cao. 3.4. Giải pháp đồng bộ cơ sở dữ liệu phân tán - Merge Replication: Nhân bản này hỗ trợ [3, 4] tính độc lập giữa các server cao nhất, Publisher Hiện nay có rất nhiều giải pháp đồng bộ và Subscriber có thể làm việc độc lập và sẽ kết cơ sở dữ liệu phân tán khác nhau như: Streams nối với nhau theo những khoảng thời gian để hội trong Oracle, Replication trong SQL Server, tụ kết quả lại, cả hai Publisher và Subsciber đều IBM Websphere MQ…, mỗi loại đều có những có thể cập nhật dữ liệu. Nếu xung đột xảy ra giữa ưu và nhược riêng. Trong phạm vi bài báo này các server thì những xung đột này sẽ được giải sẽ giới thiệu kỹ thuật đồng bộ Replication trong quyết một cách tự động, khi đó bộ giải quyết SQL Server. đụng độ sẽ chọn server có độ ưu tiên cao hơn. 3.4.1. Thành phần chính trong Replication [3][6] Đối với mô hình cơ sở dữ liệu phân tán - Publisher: Là server tạo dữ liệu để nhân quản lý đào tạo đã trình bày phần trên, ta nhận bản tới server khác. Nó xác định dữ liệu nào thấy loại nhân bản Merge Replication là phù hợp nhân bản, dữ liệu nào thay đổi và lưu thông tin với hệ thống hơn cả vì loại nhân bản này cho về các nhân bản tại server đó. phép cập nhật dữ liệu tại các server và tính độc lập của các server rất cao. Ngoài ra, dùng Merge - Subscriber: Là server nhận nhân bản và Replication ta còn có thể hủy bỏ quyền cập nhật các hành động cập nhật dữ liệu từ Publisher. dữ liệu tại Subscriber trên một số bảng dữ liệu, Một Subscriber có thể là một Publisher của các góp phần vào việc bảo vệ sự bảo mật cho những Subscriber khác. dữ liệu quan trọng tại publisher. - Distributor: Là server chứa cơ sở dữ liệu Publisher trong hệ thống quản lý đào tạo phân tán, là nơi lưu và chuyển dữ liệu nhân bản chính là server Phòng Đào tạo và các Subscriber từ Publisher tới Subscriber. chính là các server tại các bộ phận, cụ thể các - Publication: Là tập hợp các mẩu dữ liệu, Subscriber là server Khoa và server Sinh viên mỗi mẩu là một nhóm các dữ liệu được nhân ứng với mô hình trong Hình 1. Vì dữ liệu nhân bản. Một mẩu có thể bao gồm một bảng hay chỉ bản lưu tại các bộ phận khác nhau nên cần tạo một vài hàng hay vài cột. nhiều publication khác nhau ứng với nhiệm vụ 3.4.2. Các loại Replication [3, 4] và chức năng của từng bộ phận. Với những bảng dữ liệu quan trọng như thông tin về điểm của SQL Server hỗ trợ cácloại Replication sau: sinh viên chỉ được phép cập nhật tại Phòng Đào 90
  5. TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ, ĐẠI HỌC ĐÀ NẴNG - SỐ 12(73).2013, Quyển 2 tạo (Publisher), các bộ phận (Subscriber) có thể tuy nhiên ta có thể sử dụng các phương pháp mã xem nhưng không được phép cập nhật. hóa tiêu chuẩn có sẵn như Virtual Private Networks (VPN), Secure Sockets Layer (SSL), 3.5. Các vấn đề trong đồng bộ dữ liệu [3] and IP Security (IPSEC). Một trong những vấn đề đáng quan tâm - Lọc các dữ liệu cho phép xuất bản: Chỉ của việc đồng bộ dữ liệu là xung đột (Conflict), thực hiện công bố các dữ liệu và các đối tượng vấn đề này xảy ra khi hai hay nhiều server cùng cần thiết từ cơ sở dữ liệu, nhờ vậy ta có thể giới một lúc cập nhật trên cùng một dòng dữ liệu. hạn quyền truy cập tới các dữ liệu quan trọng Nhận thấy trong hệ thống cơ sở dữ liệu phân tán cần bảo mật. quản lý đào tạo, cụ thể là Trường CĐ Công nghệ Thông tin, các server đều có quyền cập nhật dữ 4. Thực nghiệm và đánh giá liệu (thêm, xóa, sửa): server Phòng Đào tạo cập 4.1. Thực nghiệm nhật lớp học phần, điểm, học phí…; server các khoa cập nhật thông tin lịch trình giảng dạy của Hiện nay, Trường CĐ Công nghệ Thông giáo viên, các đề tài sinh viên thực hiện…; tin - ĐHĐN đang sử dụng cơ sở dữ liệu tập trung server sinh viên cập nhật thông tin đăng ký học trong quản lý đào tạo. Vì lý do dữ liệu nhạy cảm phần. Nhận thấy các quyền này hoàn toàn tách nên mô hình cơ sở dữ liệu phân tán mà bài báo đề biệt nhau, không có sự chồng chéo nên vấn đề xuất chưa được kiểm nghiệm trên thực tế. Để mô xung đột hiếm khi xảy ra. phỏng cho vấn đề của mình, tôi đã dùng ba máy Vì quyền thao tác lên cơ sở dữ liệu tại các tính nối với nhau qua mạng LAN, máy tính thứ bộ phận khác tách biệt nhau, nên nếu có cập nhất tượng trưng cho server Phòng Đào tạo, máy nhật trên cùng một dòng thì cột cần cập nhật tính thứ hai tượng trưng cho server Khoa, máy cũng chưa hẳn là giống nhau, sử dụng tính chất tính thứ ba tượng trưng cho server Sinh viên. column-level tracking trong quá trình tạo Cơ sở dữ liệu dùng thử nghiệm chính là Publication để tránh xung đột xảy ra khi có hai bản sao của cơ sở dữ liệu mà Trường CĐ Công bộ phận cùng cập nhật trên một dòng dữ liệu nghệ Thông tin đang dùng hiện nay, cơ sở dữ liệu nhưng tại các cột khác nhau. này khá lớn, có đến gần 60 bảng dữ liệu. Phần thử Các trường hợp xung đột chắc chắn xảy nghiệm này dùng 11 bảng dữ liệu tiêu biểu nhất ra, sử dụng biện pháp giải quyết xung đột trong được sử dụng phần lớn tại các server (Hình 2). Replication được SQL Server hỗ trợ là gán - tmHosoSV: Thông tin sinh viên, gồm quyền ưu tiên (Priority) cho từng server và nếu 4800 dòng; có xung đột xảy ra thì chọn hành động cập nhật - tmHosoGV: Thông tin giáo viên, gồm của server có quyền ưu tiên cao hơn, trong hệ 153dòng; thống quản lý đào tạo, quyền ưu tiên dành cho - tmLop: Thông tin các lớp sinh hoạt, gồm Phòng Đào tạo. 77 dòng; 3.6. An toàn và bảo mật trong Replication [5] - tmLopHP: Thông tin các lớp học phần, An toàn và bảo mật trong cơ chế gồm 3242 dòng; Replication liên quan đến việc chứng thực và - tmLichTrinh: Thông tin lịch trình giảng phân quyền (Authorization and Authentication), dạy và điểm danh, gồm 2892 dòng; mã hóa (Encryption) và xác lập các bộ lọc dữ - tmDKHP: Thông tin đăng ký học phần liệu để bảo vệ an toàn dữ liệu và các đối tượng của sinh viên, gồm 14407 dòng; liên quan trong môi trường nhân bản. - tmDiemkyhoc: Thông tin về kết quả các - Chứng thực và phân quyền: Được sử môn học của sinh viên, gồm 125725 dòng; dụng để kiểm soát truy cập đến các đối tượng - tmKhung: Thông tin môn học theo trong cơ sở dữ liệu, các máy tính và Agent liên khung chương trình, gồm 1102 dòng; quan đến quá trình Replication. - tmNganh: Thông tin các ngành học, gồm - Mã hóa: Bản thân Replication không 20 dòng; thực hiện mã hóa dữ liệu khi truyền trên mạng, 91
  6. TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ, ĐẠI HỌC ĐÀ NẴNG - SỐ 12(73).2013, Quyển 2 - tmHocvu: Thông tin xét học vụ sinh - tmHocPhi: Thông tin sinh viên đóng học viên, gồm 23587 dòng; phí, gồm 21555 dòng. Hình 2. Cơ sở dữ liệu được dùng thử nghiệm MTD-GIANGNTT1 và server DONG-PC. Mỗi Kết quả cấu hình Replication trong SQL Subscriber ứng với một cơ sở dữ liệu Publication server 2008 trình bày trong Hình 3, trong đó phù hợp với chức năng của server đó. Cơ sở dữ Publisher là server DSN, 2 Subscriber là server liệu tại 3 server trình bày trong Hình 4. Publisher: server Phòng Đào tạo Publicationứng với server Khoa Publication ứng với server Sinh viên Subscriber: server Sinh viên Subscription tại server Sinh viên Subscriber: server Khoa Subscription tại server Khoa Hình 3. Cấu hình Replication trong SQL Server 92
  7. TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ, ĐẠI HỌC ĐÀ NẴNG - SỐ 12(73).2013, Quyển 2 (a) CSDL tại server Phòng Đào (b) CSDL tại server Khoa (c) CSDL tại server Sinh viên tạo Hình 4. Cơ sở dữ liệu tại các server Sau đây là kết quả đồng bộ dữ liệu giữa 3 server của các lần thử nghiệm: Tổng cộng 102.000 dòng dữ liệu cập nhật Tổng cộng 214.100 dòng dữ liệu cập nhật tại server Khoa được đồng bộ về server Phòng tại server Phòng Đào tạo được đồng bộ về server Đào tạo trong thời gian 3 phút 45giây Sinh viên trong thời gian 2 phút 29 giây Hình 5. Kết quả đồng bộ dữ liệu giữa các server 4.2. Đánh giá kết quả thực nghiệm Để kiểm tra độ chính xác, tác giả đã dùng - Thời gian đồng bộ ở mức độ chấp nhận tiện ích tablediff để so sánh hai bảng dữ liệu tại được (xem Hình 5). các server sau mỗi lần đồng bộ. Chẳng hạn muốn kiểm tra sự giống nhau giữa hai bảng - Sự chính xác của việc đồng bộ là 100%, cùng tên tmHosoSV trên hai server cần thực hiện có nghĩa là dữ liệu giữa các server Phòng Đào câu lệnh sau: tạo được đồng bộ chính xác về server Khoa, server Sinh viên và ngược lại. "C:\Program Files\Microsoft SQL 93
  8. TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ, ĐẠI HỌC ĐÀ NẴNG - SỐ 12(73).2013, Quyển 2 Server\100\COM\tablediff.exe" 5. Kết luận và hướng phát triển -sourceserver DSN Trong bài báo này, tác giả đã tìm hiểu và -sourcedatabase CSDL_PhongDaoTao đề xuất mô hình cơ sở dữ liệu phân tán trong quản lý đào tạo nhằm khắc phục những hạn chế -sourcetable tmHosoSV của cơ sở dữ liệu tập trung truyền thống, nâng -destinationserver MTD-GIANGNTT1 cao hiệu quả trong quá trình quản lý sinh viên -destinationdatabase CSDL_SinhVien tại các trường Đại học Cao đẳng. Trong tương -destinationtable tmHosoSV lai, tác giả nhắm tới việc đưa mô hình vào áp dụng thực tế tại Trường CĐ Công nghệ 4.3. Hạn chế Thông tin - ĐHĐN, phát hiện và giải quyết các Bài báo chỉ mới dừng lại ở giai đoạn thử sự cố phát sinh trong quá trình đồng bộ và đề nghiệm nên chưa kiểm tra được các trường hợp xuất kỹ thuật để đảm bảo tính an toàn bảo mật có sự cố phát sinh khi đồng bộ dữ liệu cũng như dữ liệu. các kỹ thuật nhằm đảm bảo an toàn dữ liệu trong hệ thống cơ sở dữ liệu phân tán. TÀI LIỆU THAM KHẢO [1] M.Tamer, Patrick Valduriez, Principles of Distributed Database Systems, Third Edition. 2011. [2] Nguyễn Bá Tường, Nhập môn CSDL phân tán, NXB Khoa học & Kỹ Thuật, Hà Nội, 2005. [3] Sujoy P. Paul., Pro SQL Server 2008 Replication, 2009. [4] Designing and Implementing: How-to Topics (Replication) http://msdn.microsoft.com/en-us/library/bb510544(v=sql.105).aspx [5] Replication Security Best Practices http://technet.microsoft.com/en-us/library/ms151227%20(v=sql.105).aspx [6] SQL Server Replication http://msdn.microsoft.com/en-us/library/bb500351(v=sql.105).aspx (BBT nhận bài: 02/10/2013, phản biện xong: 29/12/2013) 94
nguon tai.lieu . vn