Sự phát triển mạnh mẽ của dữ liệu ngày càng lớn, đòi hỏi các hệ thống cần phải áp dụng các công nghệ mới. Hệ thống phân tán và cơ sở dữ liệu được phân tán ngày càng được quan tâm và phát triển bởi lý do đó. Để thể hiện được lợi ích cũng như cách xây dựng một hệ thống phân tán, chúng em đã chọn đề tài “Xây dựng hệ thống quản lý nhân khẩu” để nghiên cứu và xây dựng.Trong quá trình thực hiện còn nhiều thiếu xót, mong thầy và các bạn đóng góp ý kiến để hệ thống hoàn thiện hơn.
Trang 1BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI
KHOA CNTT
- -BÀI TẬP LỚN
MÔN: CƠ SỞ DỮ LIỆU PHÂN TÁN
ĐỀ TÀI: Xây dựng hệ thống quản lý nhân khẩu.
Sinh viên thực hiện: Hoàng Việt Đức.
Trang 2Mục lục
BỘ CÔNG THƯƠNG 1
Mục lục 2
Lời nói đầu 4
CHƯƠNG 1 Tổng quan về cơ sở dữ liệu phân tán 5
1 1 Khái niệm 5
1 1 1 Định nghĩa cơ sở dữ liệu phân tán 5
1 1 2 So sánh CSDL phân tán và CSDL tập trung 6
1 1 3 Phân loại hệ CSDL phân tán 8
1 2 Đặc trưng cơ bản của hệ thống phân tán 10
1 2 1 Chia sẻ tài nguyên 10
1 2 2 Xử lý đồng thời 11
1 2 3 Tính trong suốt dữ liệu 11
1 3 Các đối tượng quan trọng thúc đẩy phát triển cấu trúc hệ phân tán 12
1 3 1 Phân đoạn dữ liệu và cấp phát dữ liệu 12
1 3 2 Điều kiển dư thừa 12
1 3 3 Độc lập với hệ quản trị CSDL địa phương 12
1 4 Ưu điểm, nhược điểm của hệ phân tán 13
1 4 1 Ưu điểm 13
1 4 2 Nhược điểm 14
CHƯƠNG 2 Phân tích và thiết kế hệ thống quản lý nhân khẩu 15
2 1 Xác định tác nhân và ca sử dụng trong hệ thống 15
2 2 Xác định các đối tượng của hệ thống 15
2 3 Thiết kế cơ sở dữ liệu 16
2 4 Thiết kế giao diện 16
Hà Nội ngày 22 tháng 12 năm 2015
Hcxjkzhvdxc
Hµ Néi, ngµy 20 th¸ng 05 n¨m 2009
Trang 3CHƯƠNG 3 Hệ thống quản lý nhân khẩu 17
3 1 Mô hình thiết kế phân tán 17
3 2 Hệ thống quản lý nhân khẩu 18
CHƯƠNG 4 Kết luận sau cùng 19
Trang 4Lời nói đầu
Sự phát triển mạnh mẽ của dữ liệu ngày càng lớn, đòi hỏi các hệ thống cần phải ápdụng các công nghệ mới Hệ thống phân tán và cơ sở dữ liệu được phân tán ngày càngđược quan tâm và phát triển bởi lý do đó
Để thể hiện được lợi ích cũng như cách xây dựng một hệ thống phân tán, chúng em đã
chọn đề tài “Xây dựng hệ thống quản lý nhân khẩu” để nghiên cứu và xây dựng.
Trong quá trình thực hiện còn nhiều thiếu xót, mong thầy và các bạn đóng góp ý kiến
để hệ thống hoàn thiện hơn
Em xin chân thành cảm ơn!
Trang 5CHƯƠNG 1 Tổng quan về cơ sở dữ liệu phân tán
1.1 Khái niệm
1.1.1 Định nghĩa cơ sở dữ liệu phân tán
Cơ sở dữ liệu phân tán là tập hợp dữ liệu mà về mặt logic thuộc về cùng một hệ thốngnhưng được trải rộng ở nhiều vị trí khác nhau trong một mạng máy tính
Có 2 điểm quan trọng được nêu ra trong định nghĩa trên:
- Phân tán: dữ liệu không đặt trên cùng một vị trí, điều này giúp chúng ta có thể phân
biệt một CSDL phân tán với một CSDL tập trung, đơn lẻ
- Tương quan logic: Dữ liệu 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 CSDL phân tán với một tập hợp CSDL cục bộhoặc các tệp cư trú tại các vị trí khác nhau trong một mạng máy tính
Mô hình của hệ thống CSDL phân tán
Trang 61.1.2 So sánh CSDL phân tán và CSDL tập trung
Đặc trưng mô tả CSDL tập trung là điều khiển tập trung, độc lập dữ liệu, giảm bớt dưthừa, cơ cấu vật lý phức tạp đối với khả năng truy cập, toàn vẹn, hồi phục, điều khiểntương tranh, biệt lập và an toàn dữ liệu
Điều khiển tập trung:
+ CSDL tập trung, điều khiển tập trung các nguồn thông tin của công việc hay tổ chức
Có người quản trị đảm bảo an toàn dữ liệu
+ CSDL phân tán: không đề cập đến vấn đề điều khiển tập trung Người quản trịCSDL chung phân quyền cho người quản trị CSDL địa phương
Độc lập dữ liệu:
+ CSDL tập trung: là một trong những nhân tố tác động đến cấu trúc CSDL để tổ chức
dữ liệu chuyển cho chương trình ứng dụng Tiện lợi chính của độc lập dữ liệu là cácchương trình ứng dụng không bị ảnh hưởng khi thay đổi cấu trúc vật lý của dữ liệu + CSDL phân tán, độc lập dữ liệu có tầm quan trọng cũng như trong CSDL truyềnthống Khái niệm CSDL trong suốt thể hiện rằng hoạt động của chương trình trên CSDLphân tán được viết như làm việc trên CSDL tập trung Hay nói cách khác tính đúng đắncủa chương trình không bị ảnh hưởng bởi việc di chuyển dữ liệu từ nơi này sang nơi kháctrong mạng máy tính Tuy nhiên tốc độ làm việc bị ảnh hưởng do có thời gian di chuyển
dữ liệu
Giảm dư thừa dữ liệu:
+ CSDL tập trung, tính dư thừa hạn chế được càng nhiều càng tốt vì:
- Dữ liệu không đồng nhất khi có vài bản sao của cùng CSDL logic; để tránh đượcnhược điểm này giải pháp là chỉ có một bản sao duy nhất
- Giảm không gian lưu trữ Giảm dư thừa có nghĩa là cho phép nhiều ứng dụng cùngtruy cập đến một CSDL mà không cần đến nhiều bản sao ở những nơi chương trình ứngdụng cần
Trang 7+ CSDL phân tán chia dữ liệu ra thành nhiều phần nhỏ và được thể hiện như một bảnsao logic tổng thể duy nhất để tiện cho việc truy cập dữ liệu.
Cấu trúc vật lý và khả năng truy cập:
+ CSDL phân tán, hiệu quả của truy cập thể hiện ở thời gian tìm kiếm và chuyển dữliệu nhỏ nhất, chi phí truyền thông thấp nhất Công việc viết ra cách thức truy cập CSDLphân tán cũng giống như viết chương trình duyệt trong các CSDL tập trung
Tính toàn vẹn, hồi phục và điều khiển tương tranh:
+ CSDL phân tán, vấn đề điều khiển giao tác tự trị có ý nghĩa quan trọng: hệ thốngđiều phối phải chuyển đổi các quỹ thời gian cho các giao tác liên tiếp Như vậy giao tác
tự trị là phương tiện đạt được sự toàn vẹn trong CSDL Có hai mối nguy hiểm của giao tác
tự trị là lỗi và tương tranh
Tính biệt lập và an toàn:
+ CSDL tập trung, người quản trị hệ thống có quyền điều khiển tập trung, người sửdụng được phân quyền mới truy cập vào được dữ liệu Trong cách tiếp cận CSDL tậptrung, không cần thủ tục điều khiển chuyên biệt
+ CSDL phân tán, những người quản trị địa phương cũng phải giải quyết vấn đề tương
tự như người quản trị CSDL truyền thống Tuy nhiên, với cấp độ tự trị cao ở mỗi điểm,người có dữ liệu địa phương sẽ cảm thấy an toàn hơn vì họ có thể tự bảo vệ dữ liệu củamình thay vì phụ thuộc vào người quản trị hệ thống tập trung Ngoài ra, vấn đề an toànvới hệ phân tán còn liên quan đến an toàn trong mạng truyền thông, hệ thống có tính mở
và nhiều người dùng sử dụng nhiều CSDL, do đó đòi hỏi nhiều kỹ thuật bảo vệ phức tạphơn
1.1.3 Phân loại hệ CSDL phân tán
Hệ CSDL phân tán thuần nhất
Trang 8Khi áp dụng đối với các hệ CSDL, thuật ngữ thuần nhất có nghĩa là công nghệ CSDL
là như nhau (hay ít nhất là có thể tương thích) tại mỗi vị trí địa lý và dữ liệu tại các vị tríđịa lý khác nhau cũng có thể tương thích Các hệ CSDL phân tán thuần nhất đơn giản hoáviệc chia sẻ dữ liệu giữa những người sử dụng khác nhau
Các điều kiện sau cần được thoả mãn:
- Các hệ điều hành mày tính tại mỗi vị trí địa lý là như nhau hay ít nhất chúng cókhả năng tương thích cao
- Các mô hình dữ liệu được sử dụng tại mỗi vị trí địa lý là như nhau (mô hình quan
hệ được sử dụng chung nhất đối với các hệ CSDL phân tán ngày nay)
- Các hệ CSDL được sử dụng tại mỗi vị trí địa lý là như nhau hay ít nhất chúng cókhả năng tương thích cao
- Dữ liệu tại các vị trí khác nhau có thể có các định nghĩa và khuôn dạng chung.Các hệ CSDL phân tán thuần nhất thể hiện một mục đích thiết kế đối với cácCSDL phân tán Cụ thể, các CSDL phân tán thuần nhất được thiết kế bằng cách chia nhỏmột CSDL xí nghiệp thành nhiều CSDL địa phương, các CSDL địa phương định vị trêncác trạm làm việc khác nhau nhưng chúng được biểu diễn bởi cùng một mô hình dữ liệu
và được quản trị bởi cùng một hệ quản trị CSDL địa phương
Trang 9Sơ đồ kiến trúc tham chiếu của hệ CSDL phân tán thuần nhất
- Sơ đồ quan niệm tổng thể: Định nghĩa tất cả các dữ liệu sẽ được lưu trữ trong CSDL
phân tán Trong mô hình quan hệ, sơ đồ tổng thể bao gồm định nghĩa của tập các quan hệtổng thể
- Sơ đồ phân đoạn: Mỗi quan hệ tổng thể có thể chia thành một vài phần không gối lên
nhau được gọi là đoạn Sơ đồ tổng thể mô tả các ánh xạ giữa các quan hệ tổng thể và cácđoạn được định nghĩa trong sơ đồ phân đoạn Ánh xạ này là một chiều Có thể có nhiềuđoạn liên kết tới một quan hệ tổng thể, nhưng mỗi đoạn chỉ liên kết tới nhiều nhất là mộtquan hệ tổng thể Các đoạn được chỉ ra bằng tên của quan hệ tổng thể cùng với tên củamục đoạn
- Sơ đồ sắp chỗ: các đoạn là các phần logic của quan hệ tổng thể được định vị vật lý
trên một hoặc nhiều vị trí trên mạng Sơ đồ sắp chỗ định nghĩa đoạn nào định vị tại các vịtrí nào Kiểu ánh xạ được định nghĩa trong sơ đồ sắp chỗ quyết định CSDL phân tán là dưthừa hay không
Trang 10- Sơ đồ á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 (tất cả các đoạn của một quan hệ tổng thể trên cùng một vị trí tạo ra một ảnh vật lý)
Hệ CSDL phân tán không thuần nhất
Trong hầu hết các tổ chức, các hệ CSDL liên quan đến một chu kì dài không được chỉđạo và lập kế hoạch cẩn thận Các máy tính khác nhau và các hệ điều hành khác nhau cóthể được sử dụng tại mỗi một vị trí địa lý Các mô hình dữ liệu khác nhau và các hệ quảntrị CSDL khác nhau cũng có thể được lựa chọn sử dụng Ví dụ, một ví trí có thể sử dụngcông nghệ cơ sở dữ hiệu quan hệ mới nhất, trong khi một vị trí khác có thể lưu trữ dữ liệu
sử dụng các tệp truyền thống hay các CSDL mạng, phân cấp cũ hơn
Phức tạp hơn nữa, dữ liệu trên các vị trí thường không tương thích Các mâu thuẫnđiển hình bao gồm các khác biệt về cú pháp (sự biểu diễn khác nhau các khoản mục dữliệu tại hai vị trí) và các khác biệt về ngữ nghĩa (các ngữ nghĩa khác nhau đối với cùngmột khoản mục dữ liệu tại các vị trí khác nhau
Sớm hay muộn thì những người sử dụng tại các vị trí khác nhau sẽ phát hiện ra rằng họcần chia sẻ dữ liệu cho dù có sự không tương thích Một giải pháp là phát triển mộtCSDL mới hoàn toàn mà hợp nhất tất cả các hệ đang tồn tại Tuy nhiên, đây thường làmột giải pháp không dễ thực hiện về mặt kĩ thuật hay về mặt kinh tế Thay vào đó, đôikhi các CSDL được móc nối với nhau và kết quả là tạo ra một tập các CSDL không thuầnnhất (đôi khi còn được gọi là các CSDL liên hiệp) Một hệ thống nhất như vậy nói chunghạn chế các kiểu xử lý mà những người sử dụng có thể thực hiện Ví dụ một người sửdụng tại một ví trí có thể đọc nhưng không thể cập nhật dữ liệu tại một vị trí khác
1.2 Đặc trưng cơ bản của hệ thống phân tán
1.2.1 Chia sẻ tài nguyên
Trong hệ thống phân tán, các máy tính độc lập được kết nối và giao tiếp với nhau, do
đó tài nguyên trên mỗi máy có thể chia sẻ, trở thành tài nguyên dùng chung Những máytính có nhu cầu sử dụng tài nguyên có thể truy cập và sử dụng tài nguyên trên máy tính
Trang 11khác Những tài nguyên này có thể là phần mềm, phần cứng hay dữ liệu Như vậy, các tàinguyên sẽ được sử dụng hiệu quả hơn
1.2.2 Xử lý đồng thời
Các máy tính trong hệ thống phân tán đều có bộ xử lý và bộ nhớ riêng, nhờ vậy chúng
có thể xử lý công việc song song Một công việc có thể được chia nhỏ và chuyển chotừng máy xử lý đồng thời, giúp tăng tốc độ xử lý đối với những việc có lượng tính toánlớn đòi hỏi nhiều thời gian Kết quả cuối cùng được tổng hợp dựa trên kết quả xử lý ởtừng máy
1.2.3 Tính trong suốt dữ liệu 1.2.3.1 Trong suốt phân tán
Cho phép xử lý dữ liệu trên CSDL phân tán giống như CSDL tập trung Người sửdụng không cần biết dữ liệu đã được phân đoạn như thế nào, các bản sao dữ liệu đặt ởđâu, vị trí vật lý lưu trữ đặt như thế nào
- Trong suốt địa điểm: Người dùng không cần biết vị trí vật lý của dữ liệu đặt ở đâu.Trong truy vấn chỉ cần đưa ra tên đoạn mà không cần chỉ ra vị trí
- Trong suốt tên: khi một đối tượng đã được đặt tên thì có thể truy nhập chính xáckhông cần đặc tả thêm
- Trong suốt bản sao: Sự nhân bản là quá trình sao chép và duy trì dữ liệu trong hệCSDL phân tán Cùng một dữ liệu (được lưu trữ vật lý tại một vị trí) có thể sử dụng đượctrên nhiều vị trí khác nhau Các bản sao có thể được lưu trữ trên nhiều trạm làm tăng hiệusuất, độ tin cậy và tính sẵn sàng của hệ thống Các ứng dụng có thể truy nhập dữ liệu tạicác trạm mà không phải truy cập từ xa giảm tải trên trạm lớn Hệ thống cho phép tiếp tụcthực hiện nếu như các trạm từ xa có sự cố Trong suốt bản sao đảm bảo người dùngkhông biết đó là các bản sao vì dữ liệu luôn được cập nhật và đồng bộ với dữ liệu gốc
- Trong suốt phân đoạn: Một quan hệ trong CSDL phân tán có thể phân đoạn nganghoặc phân đoạn dọc nghĩa là tách thành các bộ dữ liệu hoặc các quan hệ con và lưu trữ
Trang 12trên nhiều trạm khác nhau Trong suốt phân đoạn cho phép người sử dụng không cần biết
có sự phân đoạn, các truy vấn dữ liệu vẫn được viết như CSDL tập trung
1.2.3.2 Trong suốt giao dịch
CSDL phân tán cho phép một giao dịch có thể cập nhật, sửa đổi dữ liệu trên các trạmkhác nhau Để đảm bảo dữ liệu nhất quán trên toàn hệ thống, các trạm trong giao dịch chỉđược hoàn thành khi tất cả các trạm đã thực hiện thành công
1.3 Các đối tượng quan trọng thúc đẩy phát triển cấu trúc hệ phân tán
1.3.1 Phân đoạn dữ liệu và cấp phát dữ liệu
Sự chia xẻ này cho phép phân biệt hai mức khác nhau của mức độ trong suốt phân tán,
có tên là trong suốt phân đoạn và trong suốt định vị
Trong suốt phân đoạn: là cấp độ cao nhất của mức độ trong suốt, người sử dụnghoặc chương trình ứng dụng chỉ làm việc trên các quan hệ của cơ sở dữ liệu Trong suốtđịnh vị là cấp độ thấp hơn của độ trong suốt vì hệ thống yêu cầu người sử dụng haychuơng trình ứng dụng phải làm việc trên đoạn logíc thay vì làm việc trên các quan hệcủa cơ sở dữ liệu Tuy nhiên người đó không biết đoạn đó được đặt ở vị trí nào trong cơ
sở dữ liệu
1.3.2 Điều kiển dư thừa
Kiến trúc tham chiếu cho phép điều khiển dư thừa dữ liệu ở mức đoạn Các đoạn cóthể có dữ liệu giống nhau dùng để kết nối dữ liệu đó là nguyên nhân dư thừa dữ liệu
1.3.3 Độc lập với hệ quản trị CSDL địa phương
Đặc điểm này gọi là ánh xạ trong suốt đối với cơ sở dữ liệu địa phương: quản trị cơ sở
dữ liệu phân tán không cần quan tâm đến kiểu dữ liệu xác định của cơ sở dữ liệu địaphương
Mức trong suốt bản sao liên quan chặt chẽ tới mức trong suốt định vị Mức trongsuốt bản sao có nghĩa là người sử dụng không biết bản sao của đoạn đặt ở vị trí nào Mứctrong suốt bản sao tương đương mức trong suốt định vị Tuy nhiên, trong những trường
Trang 13hợp thực tế người sử dụng không có mức trong suốt định vị nhưng lại có mức trong suốtbản sao.
Phân rã quan hệ thành các đoạn thực hiện qua việc áp dụng hai phân đoạn: phân đoạnngang và phân đoạn dọc
Phân đoạn ngang: một đoạn được xác định qua biểu thức đại số quan hệ với quan hệ
là toán tử và các đoạn là kết quả Hay nói cách khác, việc phân đoạn ngang bao gồm việcchia các bộ của quan hệ thành các tập con Mỗi tập con này có thuộc tính vị trí thôngthường Các đoạn này được xác định qua việc coi mỗi đoạn là toán tử chọn trên quan hệ.Phân đoạn dọc: phân đoạn dọc một quan hệ là việc chia nhỏ tập thuộc tính thành nhiềunhóm quan hệ và đoạn dọc Phân đoạn đúng khi mỗi thuộc tính đều ánh xạ ít nhất sangmột thuộc tính của đoạn Hơn nữa, có thể tạo lại quan hệ ban đầu bằng liên kết các đoạnvới nhau
Có một số luật để xác định các đoạn:
- Điều kiện hợp: mọi dữ liệu của quan hệ phải ánh xạ đến các đoạn Không xảy ra
trường hợp dữ liệu thuộc về quan hệ nhưng không thuộc về một đoạn nào
- Điều kiện tái tạo lại quan hệ: luôn luôn có khả năng tạo lại quan hệ từ các đoạn của
quan hệ Điều kiện cần: mỗi đoạn được lưu trữ trong cơ sở dữ liệu phân tán và quan hệphải xây dựng lại được khi cần thiết
- Điều kiện không liên kết: thích hợp khi các đoạn không liên kết với nhau vì vậy các
bản dữ liệu lặp lại có thể được điều khiển rõ ràng ở các mức cấp phát Điều kiện này chủyếu có ích với phân đoạn ngang
1.4 Ưu điểm, nhược điểm của hệ phân tán
1.4.1 Ưu điểm
- Đáp ứng nhanh hầu hết các ứng dụng sử dụng dữ liệu tại các trạm
- Tăng cường các đơn thể ứng dụng và CSDL mà không làm cản trở người sửdụng hiện tại