Tải bản đầy đủ (.docx) (26 trang)

Đồ án Cơ sở dữ liệu phân tán Thuê nhà chung cư có soucer code

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (627.84 KB, 26 trang )

BỘ CÔNG THƯƠNG
TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
----------

BÁO CÁO BÀI TẬP LỚN
CƠ SỞ DỮ LIỆU PHÂN TÁN
ĐỀ TÀI: Quản lý thuê nhà chung cư
Giảng viên hướng dẫn: ThS. Trần Thanh Hùng
Nhóm thực hiện: NHÓM 5 KTPM2-K6
Thành viên:
Cao Quang Hướng –Mã sv: 0641360144
Hoàng Văn Quỳnh –Mã sv: 0641360189
Đinh Văn Phương –Mã sv: 0641360128

Hà Nội, ngày 23/06/2014

1


LỜI NÓI ĐẦU
Những năm gần đây, hệ cơ sở dữ liệu phân tán được phát triển dựa trên
cơ sở dữ liệu và mạng máy tính. Cơ sở dữ liệu phân tán gồm nhiều cơ sở dữ
liệu tích hợp lại với nhau thông qua mạng máy tính để trao đổi dữ liệu, thông
tin... Cơ sở dữ liệu được tổ chức và lưu trữ ở những vị trí khác nhau trong
mạng máy tính và chương trình ứng dụng làm việc trên cơ sở truy cập dữ
liệu ở những điểm khác nhau đó.
Vấn đề hoàn toàn mới là xây dựng và cài đặt một cơ sở dữ liệu phân tán.
Cần giải quyết vấn đề xây dựng và cài đặt cơ sở dữ liệu phân tán cụ thể
như vấn đề thiết kế phân tán, thiết kế cơ sở dữ liệu...
Đứng trước thách thức và nhu cầu lớn của xã hội chúng em đã thực hiện


đề tài: “Xây dựng phần mềm quản lý thuê nhà chung cư” dưới sự hướng dẫn
của Thầy Trần Thanh Hùng để biết cách phân tích xây dựng một cơ sở dữ
liệu phân tán.
Chúng em chân thành cảm ơn Thầy đã giúp đỡ và dạy bảo cho chúng em
nhiều kiến thức quý giá. Tuy đã cố gắng hết sức thực hiện theo những gì theo
Thầy dạy bảo song không thể tránh khỏi những sai sót khi thực hiện dự án.
Mong Thầy bỏ qua và góp ý thêm cho chúng em về những sai sót trong dự
án mà chúng em mắc phải.

Chúng em chân thành cảm ơn!

2


3


PHẦN I: MỞ ĐẦU
1. Các vấn đề cần giải quyết
-

Tìm hiểu cơ cấu tổ chức của nhà chung cư
Tìm hiểu nhiệm vụ và quy trình thực hiện cho thuê nhà
Khảo sát tình hình thực tế của nhà chung cư
Áp dụng các kiến thức về Cơ sở dữ liệu và Phân tích – thiết kế hệ
thống thông tin quản lý để xây dựng chương trình quản lý thuê nhà
chung cư để có thể thay thế một phần công việc cho con người.

2. Mục tiêu của bài toán


Nghiên cứu và thử nghiệm bài toán Phân tích – Thiết kế hệ thống
Từ đó phân tích thiết kế cài đặt chương trình nhằm mục đích:
3.

Quản lý khách hàng
Quản lý việc đăng ký thuê nhà và trả nhà
Quản lý hiện trạng nhà
Quản lý các dịch vụ cung cấp
Quản lý tài chính thu chi của chung cư

Đặt vấn đề
Hiện nay trên thị trường tin học ở Việt Nam việc áp dụng tin học vào

công tác quản lý đã và đang áp dụng và thu đuợc nhiều thành công bước
đầu. Tuy nhiên hầu hết là sử dụng các chương trình quản lý viết bằng hệ
quản trị cơ sở dữ liệu Foxpro, Access,…do đó với tình hình phát triển
của nền kinh tế hiện nay và với vị trí quan trọng của việc áp dụng tin học
hoá và công tác quản lý thì các chương trình trên đang đứng trước một số
vấn đề khó khăn cần được giải quyết. Các vấn đề đó là:
 Khả năng đảm bảo an toàn dữ liệu của Foxpro còn tương đối yếu.
Đây là trở ngại cần được khắc phục vì cơ sở dữ liệu của hệ quản trị cơ sở
dữ liệu Foxpro không đủ lớn nên không đáp ứng được nhu cầu cần lưu trữ
thông tin lớn, khả năng bảo mật dữ liệu, độ chính xác cao để đáp ứng uy
4


tín cho khách sạn.
Giải quyết vấn đề
Từ những phân tích nêu trên rõ ràng các vấn đề phát sinh chủ yếu là
do hệ quản trị cơ sở dữ liệu Foxpro yếu, không đáp ứng được các nhu cầu

mới. Như vậy chỉ cần thay đổi hệ quản trị cơ sở dữ liệu cùng với việc
xây dựng phần mềm trên hệ quản trị đó và lựa chọn một hệ điều hành
cho phù hợp là có thể giải quyết được các vấn đề nêu trên. Sự lựa chọn
một hệ quản trị cơ sở dữ liệu và một hệ điều hành tương thích cần phải
được thực hiện một cách kỹ càng sao cho có lợi nhất.
 Phần cứng
Loại máy: do yêu cầu về tốc độ và khả năng lưu trữ lớn nên đòi hỏi
cấu hình máy phải đủ tốt. Như vậy tối thiểu là loại máy Pentium trở lên,
riêng server thì đòi hỏi cao hơn. Các máy phải được nối mạng với nhau để
đảm bảo thống nhất về thông tin.
 Phần mềm
Hệ điều hành: có ba loại hệ điều hành chủ yếu như: Novell
Netware, NT, UNIX.
Hệ điều hành NT chỉ chạy được trên hai plafform là X86 và Alpha. Hệ
điều hành NT chỉ hỗ trợ cho hệ thống đa xử lý đến 8 CPU, chỉ quản lý bộ
nhớ lên tới Gb.
Hệ điều hành UNIX có thể chạy trên ba plaform là X86, SPARTC,
PPC. UNIX có thể hỗ trợ cho hệ thống xử lý lên đến 128 CPU và có khả
năng quản lý bộ nhớ lên đến TGb. UNIX còn hỗ trợ unlimited uer nghĩa
là chỉ cần một bản UNIX/Solaris là có thể cài đặt cho cả hệ thống. Ngoài
ra UNIX còn có LINUX là hệ điều hành mã nguồn mở rất tiện dụng.
 Hệ quản trị cơ sở dữ liệu: hiện nay thị trường tin học có các hệ
5


quản trị cớ sở dữ liệu quan hệ như:FOXPRO,

ACCESS,

SQL


Server, Oracle…Tuy nhiên chỉ có hai loại là SQL Server và Oracle có thể
giải quyết vấn đề trên.
Đối với SQL server : điểm hạn chế của SQL Server là chỉ chạy được
trên một hệ điều hành duy nhất là NT do đó khi lựa chọn SQL Server thì
phải chọn hệ điều hành NT. Trong khi đó NT chỉ chạy được trên hai
plafform là X86 và Alpha và chỉ quản lý tối đa lên đến Gb, đây chính là
điểm yếu của hệ điều hành NT.
Đối với ORACLE: đây là hệ quản trị cơ sở dữ liệu rất mạnh và tiện lợi,
nó có thể chạy trên 80 hệ điều hành khác nhau từ Laptop đến Mainframe.
Tuy nhiên trong số các hệ điều hành này thì hệ UNIX dòng Solaris có ưu
thế hơn cả vì nó có thể chạy trên ba plafform là X86, SPARTC, PC và hơn
nữa nó rất phù hợp cho mạng WAN. Riêng Oracle còn có một số ưu điểm:
 Cho phép chia sẽ dòng dữ liệu
 Refesh trước khi
update
 Qui định timeout khi người sử dụng để quá lâu hay trong
tình trạng dealock thì tự động relase
 Xử lý dữ liệu lên đến 5
TGb
 Cho phép xử lý dữ liệu song song
 Cung cấp nhiều cung cụ hỗ trợ( Design Development tools,
Design 2000…)
 Cho phép cơ chế phân tán dữ liệu hay tập trung dữ liệu
Qua các hướng giải quyết trên thì tôi đề nghị nên chọn hệ điều hành
UNIX và hệ quản trị cơ sở dữ liệu là Oracle. Tuy nhiên do Oracle có cơ
chế phân tán dữ liệu nên chúng ta có một số cách cài đặt chương trình như
sau:
 Cài đặt dữ liệu trên nhiều Server, đây chính là hình thức phân tán dữ
6



liệu thực sự. Với cách cài đặt như thế này thì đòi hỏi đường truyền phải
thật tốt, tốt nhất là sử dụng cáp quang. Tuy nhiên với đường truyền bằng
cáp quang thì chi phí lắp đặt và bảo trì rất đắt. Điều này làm cho chi phí
của dự án tăng lên rất cao do đó cách giải quyết này không khả thi.
 Cài đặt dữ liệu trên nhiều Server. Mối server có dữ liệu riêng cho
mình và bản sao dữ liệu( sự ánh xạ dữ liệu) của tất cả các server khác.
Như vậy sau một khoản thời gian quy định thì phải tiến hành cập nhật
(refresh) lại thông tin toàn bộ để thông tin được thống nhất. Với cách giải
quyết này thì thông tin lưu trữ không được thống nhất tại một thời điểm,
có nhiều khi mâu thuẫn có thể gây thiệt hại cho công ty.
 Cài đặt dữ liệu trên một Server duy nhất, đây có thể coi là dữ liệu
tập trung. Khi các trạm khác muốn trao đổi trên dữ liệu thì phải thông qua
một user nào đó do người quản trị cơ sở dữ liệu tạo ra. Với mỗi một user
sẽ có một số quyền nhất định, các quyền này do người quản trị cơ sở dữ
liệu quy định. Với cách giải quyết này có thể nói thông tin sẽ được thống
nhất một cách tuyệt đối.
 Kết hợp giữa tập trung và phân tán dữ liệu, dữ liệu sẽ tập trung tại
mỗi trung tâm, các server phụ thao tác dữ liệu tại trung tâm mà được
quyền sử dụng. Tại trung tâm vừa chứa dữ liệu của mình và bản sao của
trung tâm khác.
Tóm lại giải pháp chọn
là:
 Hệ điều hành UNIX dòng Solaris
 Hệ quản trị cơ sở dữ liệu Oracle với cơ chế dữ liệu tập trung kết hợp
với phân tán dữ liệu
 Mạng sẽ cài đặt là WAN.

7



PHẦN II: NỘI DUNG
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT
1.1.

Khái niệm

Oracle là hệ quản trị cơ sở dữ liệu quan hệ mang tính mềm dẻo, linh động,
thích ứng cao với các quy mô xử lý giao dịch, an toàn hệ thống. Cung cấp
các công cụ xây dựng và quản lý cơ sở dữ liệu
Các sản phẩm của Oracle:
 Database Server (Server quản lý cơ sở dữ liệu)
 Công cụ thao tác cơ sở dữ liệu: SQL*Plus
 Công cụ phát triển ứng dụng: Oracle Developer Suite, Oracle

Jdeveloper,…
 Phân tích dữ liệu: Oracle Discoverver, Oracle Express,…
 Oracle Application Server (OAS)
 Ứng dụng đóng gói: Oracle Human Resource, Oracle Financial
Application,…
 Oracle Email, Oracle Calendar,…
1.2.

Ưu điểm

Nhiều người cho rằng Oracle chỉ sử dụng cho những doanh nghiệp lớn
nên không thích hợp ở Việt Nam.
Điều này là hoàn toàn sai lầm. Oracle không chỉ nhắm tới những doanh
nghiệp lớn mà còn nhắm tới những doanh nghiệp trung bình và cho cả những

doanh nghiệp nhỏ.
Cụ thể là Oracle Server có đủ các phiên bản thương mại từ Personal,
Standard đến Enterprise (ngoài ra còn có Oracle lite nữa).
Về phía các doanh nghiệp: Oracle tỏ ra rất có ưu điểm như tính bảo mật
cao, tính an toàn dữ liệu cao, dễ dàng bảo trì – nâng cấp, cơ chế quyền hạn rõ
ràng, ổn định,…
8


Oracle cũng không quá đắt như các bạn nghĩ, nếu doanh nghiệp đã từng
mua lisence của MSSQLServer thì sẽ thấy giá của Oracle cũng không chênh
lệch là bao thậm chí còn rẻ hơn, nhưng lợi ích có được lại rất lớn.
Về phía những nhà phát triển: Oracle cũng tỏ ra rất có ưu điểm như dễ cài
đặt, dễ triển khai và dễ dàng nâng cấp lên phiên bản mới. Hơn nữa Oracle
còn tích hợp thêm PL/SQL, là một ngôn ngữ lập trình có cấu trúc – Structure
Language. Tạo thuận lợi cho các lập trình viên viết các Trigger,
StoreProcedure, Package. Đây là điểm rất mạnh so với các CSDL hiện có
trên thị trường.
Oracle, ngoài các kiểu dữ liệu thông thường còn có các kiểu dữ liệu đặc
biệt khác góp phần mang lại sức mạnh cho Oracle như Blob, clob, bfile,…
Nếu như chỉ chạy thử, bạn cũng không cần lo đến vấn đề lisence vì có thể
download từ trang của Oracle (technet.oracle.com).
Ngoài ra bạn có thể triển khai Oracle trên nhiều OS khác nhau (Windows,
Solaris, Linux,…) mà không cần phải viết lại PL/SQL code. Có thể Import
một dump file (backupFile) từ một máy chạy OS này sang OS khác hoặc từ
một version thấp lên một version cao hơn mà không gặp bất cứ trở ngại nào.
1.3.

Mô hình cơ sở dữ liệu phân tán


Hệ CSDL phân tán có thể được bố trí theo 2 mô hình:
-

Hệ CSDL phân tán thuần nhất.
Hệ CSDL phân tán không thuần nhất.

Hệ CSDL phân tán thuần nhất
Nhìn tổng quan sẽ thấy có các bộ phận được lặp lại, chỉ riêng CSDL ở
từng trạm thì sẽ có sự khác nhau về dữ liệu.
CSDL1
MHDL1
DBMS1
Trạm 1

CSDL2
9


MHDL2
DBMS2

Trạm 2


...


Tiếp cận từ trên xuống

Sơ đồ 1.3. : Hệ CSDL phân tán thuần nhất

 Sơ đồ phân tán trong hệ thống:
Sơ đồ tổng thể
Sơ đồ định vị

Ánh xạ tại trụ sở Cầu
Giấy

DBMS của Cầu Giấy

CSDL tại Cầu Giấy

Ánh xạ tại trụ sở Mĩ
Đình

Ánh xạ tại trụ sở
Thanh Xuân

DBMS của Mĩ Đình

DBMS của Thanh Xuân

CSDL tại Mĩ Đình

CSDL tại Thanh Xuân

Sơ đồ 1.3. : Phân tán trong hệ thống

1.3.1. Hệ CSDL phân tán không thuần nhất

Trái ngược lại với hệ CSDL phân tán thuần nhất thì Hệ này sẽ có mô

hình đối nghịch, đó là ở các biểu tượng bằng (=) sẽ thay bằng biểu tượng (#).
Nói cách khác là ở các trạm sẽ có xự khác nhau về MHDL và DBMS
10


MHDL: Mô hình dữ liệu
DBMS: Hệ quản trị cơ sở dữ liệu phân tán
1.4.

Kiến trúc CSDL phân tán

Sơ đồ pn đoạn

Hệ thuần nhất

Hệ không thuần nhất

Sơ đồ 1.4. : Kiến trúc CSDL phân tán
1.4.1. Sơ đồ tổng thể

Định nghĩa tất 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ể gồm định nghĩa của tập các quan hệ tổng thể.
Tuy nhiên mô hình dữ liệu sử dụng để xác định sơ đồ toàn thể để xác
định cách thức ánh xạ đến những mức khác của cơ sở dữ liệu phân tán.
1.4.2. Sơ đồ phân đoạn

Mỗi quan hệ có thể chia ra các phần không chồng lên nhau gọi là
đoạn.
Có nhiều cách chia: chia theo chiều ngang, chia theo chiều dọc và
chia theo kiểu hỗn hợp theo chiều ngang và chiều dọc. ánh xạ này giữa quan

hệ và các đoạn được xác định trong sơ đồ phân đoạn. ánh xạ theo kiểu 1:n
(một quan hệ sang nhiều đoạn) là một đoạn tương ứng một quan hệ và một

11


quan hệ tương đương với một số đoạn. Đoạn xác định bởi một quan hệ qua
chỉ số (chỉ số đoạn dữ liệu).
1.4.3. Sơ đồ định vị

Đoạn là phần logic của quan hệ, được đặt vật lý tại một hay vài vị trí
trên mạng máy tính. Sơ đồ cấp phát xác định những vị trí đặt đoạn. Kiểu ánh
xạ xác định trong sơ đồ cấp phát cho phép nhận ra một cơ sở dữ liệu phân
tán là dư thừa hay không dư thừa.
Thuật ngữ trong suốt mô tả bằng bản sao của đoạn tham chiếu đến vị
trí lưu trữ và bản sao xác định qua tên quan hệ và hai chỉ số (chỉ số đoạn, chỉ
số vị trí).
1.4.4. Sơ đồ ánh xạ địa phương

Trong kiến trúc lược đồ trên có 3 mức độ độc lập theo thứ tự giảm dần:
-

Mức tổng thể
Mức cấp phát
Mức ánh xạ

Vì vậy, mức thấp hơn cần thiết phải ánh xạ mức cao hơn. Việc ánh xạ gọi
là sơ đồ ánh xạ và phụ thuộc vào kiểu cơ sở dữ liệu địa phương. Trong hệ
CSDL phân tán thuấn nhất mức độc độc lập có một số kiểu khác nhau khi
ánh xạ địa phương ở các vị trí khác nhau.

Thực hiện ánh xạ các ảnh vật lý và các đối tượng được lưu trữ lại tại một
trạm lên các CSDL địa phương.
1.4.5. Mức độ trong suốt phân tán
- Trong suốt phân đoạn: Là mức độ cao nhất của mức độ trong suốt, người

sử dụng hoặc chương trình ứng dụng chỉ làm việc trên các quan hệ cơ sở
dữ liệu
- Trong suốt định vị: Hệ thống yêu cầu người sử dụng hay chương trình
ứng dụng phải làm việc trên đoạn logic, tuy nhiên người đó không biết
đoạn đó được đặt ở vị trí nào trong cơ sở dữ liệu.
- Trong suốt ánh xạ địa phương: Ứng dụng tham chiếu đến các đối tượng
có các tên độc lập từ hệ thống cục bộ địa phương. Ứng dụng được cài đặt
12


trên một hệ thống không thuần nhất nhưng được sử dụng như một hệ
thống nhất.
- Trong suốt bản sao: Nó liên quan chặt chẽ với mức trong suốt định vị.
Người sử dụng không biết bản sao của đoạn đặt ở vị trí nào. Thực tế thì
người sử dụng không có mức trong suốt định vị nhưng lại có mức trong
suốt bản sao.
1.5.

Hệ quản trị CSDL phân tán

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ệu phân tán.
Những phần mềm cần thiết cho việc xây dựng cơ sở dữ liệu phân tán là:
-


Phần quản lý cơ sở dữ liệu (Database Management - DB)
Phần truyền thông dữ liệu (Data Communication - DC)
Từ điển dữ liệu được mở rộng để hiện thông tin về phân tán dữ liệu

trong mạng máy tính (Data Dictionary - DD)
- Phần cơ sở dữ liệu phân tán (Distributed Database - DDB)
Mô hình các thành phần của hệ quản trị cơ sở dữ liệu phát triển theo kiểu
mô hình thương mại. (Truy cập từ xa trực tiếp).

Sơ đồ 1.5. : Hệ quản trị CSDL phân tán

Những dịch vụ hệ quản trị cơ sở dữ liệu cung cấp:
- Cách thức truy cập dữ liệu từ xa: bằng chương trình ứng dụng.
13


- Lựa chọn cấp độ trong suốt phân tán thích hợp: cho phép mở rộng hệ

thống theo nhiều cách khác nhau theo từng hoàn cảnh.
- Quản trị và điều khiển cơ sở dữ liệu bao gồm công cụ quản lý cơ sở dữ
liệu, tập hợp thông tin về các thao tác trên cơ sở dữ liệu và cung cấp
thông tin tổng thể về file dữ liệu đặt ở các nơi trong hệ thống.
- Điều khiển tương tranh và điều khiển phục hồi dữ liệu của giao tác
phân tán.
1.6.

Các mô hình phân tán dữ liệu trong Oracle

1.6.1. Phân tán dữ liệu hoàn toàn
- Định nghĩa: Là phương pháp thực hiện phân chia bảng dữ liệu của


quan hệ tổng thể thành các phần hoàn toàn độc lập với nhau, sau đó
định vị chúng vào các vị trí thích hợp theo các ứng dụng và yêu cầu
thực tế. (sử dụng kỹ thuật phân đoạn dọc).
- Mô hình:

Sơ đồ 1.6. : Phân tán dữ liệu hoàn toàn
- Cách thức làm việc:
 Mỗi khi vị trí 1 muốn truy cập CSDL của vị trí 2 thì thông qua

database link vị trí 1 sẽ được đáp ứng qua đường truyền trực tiếp
hoặc qua đường điện thoại.
 Dữ liệu thực tế truyền thường lớn nên phương pháp này yêu cầu có
đường truyền dữ liệu phải tốt.
14


 Không có các vị trí chủ, vị trí trung tâm.
 Khi cần tổng hợp dữ liệu thì có thể thực hiện tại bất kỳ vị trí nào

trong hệ thống mạng của ứng dụng, dữ liệu sẽ hoàn toàn được truyền
trực tiếp.
 Cần có tối thiểu 2 Server để đảm bảo sự oan toàn cho hệ thống.
- Ưu điểm:
 Tính hiệu quả: ngăn cách được dữ liệu sử dùng người dùng.
 Tối ưu hóa cục bộ: Dữ liệu lưu ở nơi thích hợp, tối ưu quá trình truy
xuất dữ liệu cục bộ.
 An toàn dữ liệu: Dữ liệu ko thích hợp thì bị vô hiệu hóa.
 Xây dựng CSDL và các ứng dụng đơn giản.
 Giảm mức độ dư thừa dữ liệu.

- Nhược điểm:
 Tốc độ truy cập không nhất quán: Khi truy cập vào dữ liệu không
cục bộ thì thời gian sẽ lâu hơn so với dữ liệu cục bộ.
 Việc sao lưu không thuận tiện: Nếu dữ liệ không được sao lưu thì
mỗi khi có sự cố không thể truy cập được hoặc bị phá hỏng thì việc
xử lý dữ liệu đó không thể chuyển sang vị trí khác mặc dù tại đó có
tồn tại một bản copy của dữ liệu cần thiết.
 Phạm vi phân tán hạn chế: do càng xa thì đường truyền càng kém.
- Các ứng dụng phù hợp:
 Các ứng dụng có CSDL vừa và nhỏ.
 CSDL nó đã có sự phân chia thành các phần độc lập.
 Có đường truyền tốt.
1.6.2. Phân tán Partition
- Định nghĩa: Là phương pháp thực hiện phân chia bảng dữ liệu của

quan hệ tổng thể thành các bảng dữ liệu độc lập nhưng có cấu trúc
giống hệt nhau, sau đó định vị chúng vào các vị trí thích hợp. (sử dụng
phân đoạn ngang cơ sở)
- Mô hình:

15


Sơ đồ 1.6. : Phân tán Partition
- Cách thức làm việc:
 Các CSDL từ xa kết nối với nhau thông qua database link.
 Tồn tại vị trí chủ, Server.
 Trung tâm tổng hợp CSDL tại các chi nhánh qua các Snapshot.
 Các chi nhánh là vị trí chủ, và trung tâm là vị trí ảnh.
 Có thể có dữ liệu được cập nhật tại Server, các chi nhánh tra cứu sẽ


qua Snapshot. Khi đó dữ liệu Server là vị trí chủ còn chi nhánh là
ảnh.
 Trước khi tổng hợp dữ liệu ở Server thì cần làm tươi toàn bộ dữ liệu.
 Làm tươi: thường sử dụng phương pháp làm tươi nhanh.
 Phải tồn tại 2 máy chủ để đảm bảo an toàn: 1 dự phòng, 1 chạy.
- Ưu điểm:
 Tránh thêm mới dữ liệu một hàng sai vị trí.
 Cho phép thực hiện nhanh hơn các thao tác: Lấy dữ liệu, sửa, tạo
index… tại từng Partition do đó giảm được thời gian xử lý dữ liệu.
- Nhược điểm:
 Thực hiện phân chia dữ liệu tương đối phức tạp.
- Các ứng dụng phù hợp:
 Các ứng dụng có lượng dữ liệu lớn
 Các ứng dụng có phạm vi địa lý tương đối rộng.
 Các dữ liệu ràng buộc bởi một số điều kiện khách quan.

16


1.6.3. Phân tán sử dụng Replication
- Định nghĩa: Là phương pháp sử dụng các bảng copy còn gọi là bảng

ảnh (Snapshots) của một hay nhiều phần dữ liệu từ bảng chủ định vị
vào các vị trí ở xa.
- Mô hình:

Sơ đồ 1.6. : Phân tán Replication
- Cách thức làm việc:
 Có thể ó nhiều các bản sao dữ liệu trùng lặp. đây cũng là nguyên


nhân khiến cho phương pháp này có dữ liệu dư thừa cao nhất.
 Dữ liệu ảnh được tạo ra chỉ xem mà ko được cập nhật.
 Nhiều kỹ thuật sao bản CSDL: như sao bản theo hàng, theo cột và
hỗn hợp cả hàng và cột.
 Dữ liệu thường được truyền qua đường điện thoại.
- Ưu điểm:
 Dể xây dựng CSDL cũng như các chương trình ứng dụng.
 Độ tin cậy: Nếu CSDL tại một trong các chi nhánh bị hỏng thì ta có
thể tìm thấy bản copy của chính nó tại CSDL của chi nhánh khác.
 Tốc độ truy xuất dữ liệu nhanh: Tại mỗi chi nhánh đều có đầy đủ
CSDL để phục vụ quy trình xuất dữ liệu từ phía người sử dụng. Quá
trình này xảy ra ngay tại trạm làm việc, vì vậy tốc độ truy vấn dữ liệu
diễn ra nhanh hơn.
 Có thể sử dụng đường điện thoại để truyền dữ liệu đi xa.
17


 Mỗi vị trí đều có thể sử dụng toàn bộ dữ liệu của CSDL.
- Nhược điểm:
 Dung lượng bộ nhớ tăng lên rất nhiều lần nếu muốn tạo bản sao lưu.
 Giá thành và tính phức tạp của việc cập nhật dữ liệu tăng lên.
- Các ứng dụng phù hợp:
 Dữ liệu phục vụ cho nhiều mục đích tra cứu hoặc dữ liệu là tương đối

tĩnh (danh bạ điện thoại, lịch tàu,…)
 Các CSDL không quá lớn nhưng phạm vi địa lý ứng dụng rộng.
1.6.4. Kết hợp các kiểu phân tán
- Có rất nhiều cách kết hợp các chiến lược, tùy vào bài toán thực tế.
- Kết luận: Các ưu điểm, nhược điểm của 3 mô hình phân tán CSDL trên


sẽ được tăng cường hay giảm bớt còn phụ thuộc vào rất nhiều các yếu
tố khác như: Kinh nghiệm của các nhà quản trị hệ thống dữ liệu, chất
lượng của hệ quản trị cơ sở dữ liệu.

18


19


CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ
2.1. Phân tích chức năng
2.1.1. Mô hình phân rã chức năng của hệ thống

2.1.2. Ý nghĩa các chức năng
-

Quản lý cho thuê: Kiểm tra yêu cầu khách hàng, thông báo từ chối khi

đáp ứng được yêu cầu, lập hợp đồng
- Quản lý khách hàng: Cập nhật, xóa, thêm thông tin về khách hàng
- Quản lý phòng: Cập nhật, xóa, thêm thông tin về phòng
- Quản lý dịch vụ: Cập nhật, xóa, thêm thông tin dịch vụ và lập hợp
đồng dịch vụ
- Báo cáo: Thống kê khách hàng, thống kê tình trạng phòng, thống kê
tình trạng phòng thuê, thống kê doanh thu

2.2. Phân tích dữ liệu
20



2.2.1. Mô hình luồng dữ liệu mức khung cảnh

2.2.2. Mô hình luồng dữ liệu mức đỉnh
21


2.2.3.Mô hình quan hệ
- Xác định các thực thể định danh tương ứng
Khách hàng: Mã khách hàng
Phòng: Mã phòng
Hóa đơn dịch vụ: Số hóa đơn dv
Dịch vụ: Mã dịch vụ
Hóa đơn thuê: Số hóa đơn thuê
-

Mô hình liên kết thực thể

22


Khách hàng
MaKH

Hóa đơn thuê

So hoa don thue

Phòng

Ma

Hoten

MaKH

Loai phong

Diachi

MaP

Gia

Giới tính

Ngayden

Tinh trang

Số điện thoại

TienDV

Số cmnd

Tiền thuê

Hóa đơn DV
Dichvu


So hoa don dv
MaDV

MaKH

TenDV

MaDV

Donvitinh

Ngaysudung

2.2.4. Lập dữ liệu từ điển
- Bảng khách hàng
STT

-

Tên thuộc tính

Kiểu

Ràng
buộc

Khóa chính/
khóa phụ
(PK/FK)

PK

Mô tả

1

MaKH

Text

Not null

Mã khách hàng

2

Ten

Text

Not null

Tên khách hàng

3

Ngaysinh

Date


Not null

Ngày sinh

4

Diachi

Text

Not null

Địa chỉ

5

SĐT

Int

null

Số điện thoại

6

SoCMND

Int


null

Số CMND

Bảng phòng
STT

Tên thuộc tính

Kiểu

Ràng
buộc

Khóa chính/
khóa phụ
(PK/FK)

Mô tả

23


1

-

So hoa don thue

PK


Mã phòng

LoaiP

Text

Not null

Loại phòng

3

Gia

Text

Not null

Giá phòng

Bảng hóa đơn thuê

1

2

Tên thuộc tính

So hoa don thue

MaKH

Kiểu

Ràng
buộc

Khóa chính/
khóa phụ
(PK/FK)
PK

Mô tả

Text

Not null

Số hóa đơn thuê

Text

Not null

Mã khách hàng

3

MaP


Text

Not null

Mã phòng

4

TienDV

Text

Not null

Tiền dịch vụ

5

Tien thue

Text

Not null

Số thuê

6

Tong tien


Text

Not null

Tổng tiền

Bảng dịch vụ
STT

1

-

Not null

2

STT

-

Text

Tên thuộc tính
MaDV

Kiểu

Ràng
buộc


Text

Not null

Khóa chính/
khóa phụ
(PK/FK)
PK

Mô tả

Mã dịch vụ

2

TenDV

Text

Not null

Tên dịch vụ

3

Gia

Text


Not null

Giá

Bảng hóa đơn dịch vụ
STT

1

Tên thuộc tính
So hoa don dịch vụ

Kiểu

Ràng
buộc

Text

Not null

Khóa chính/
khóa phụ
(PK/FK)
PK

Mô tả

Số hóa đơn dịch vụ


2

MaKH

Text

Not null

Mã khách hàng

3

MaP

Text

Not null

Mã phòng

4

TienDV

Text

Not null

Tiền dịch vụ


5

Ngaysudung

Text

Not null

Ngày sử dụng

24


PHẦN III: KẾT LUẬN
1. Kết luận chung các chương

Mặc dù đã rất cố gắng tìm hiểu công việc " Quản lý thuê nhà chung cư "
nhưng không sao tránh khỏi những thiếu sót. Mong quý Thầy và các bạn
đóng góp ý kiến để em rút ra được nhiều kinh nghiệm quý báu khi bước vào
cuộc sống mới.
Do thời gian hạn chế và trình độ hiểu biết của bản thân chưa nhiều nên
việc phân tích thiết kế và cài đặt chương trình chưa hoàn thiện như một
phần mềm quản lý. Nó mang tính chất học hỏi, trao đổi và bắt đầu làm quen
với thực tế. Nhưng qua đợt thực tập này, em đã học hỏi được nhiều kinh
nghiệm trong quá trình phân tích thiết kế và cài đặt một chương trình quản lý,
đồng thời cũng bổ sung kiến thức cho bản thân.
2. Hướng phát triển

Các phiên bản tiếp theo phần mềm sẽ bổ sung một số chức năng còn
thiếu, ràng buộc rõ ràng hơn. Thêm một số chức năng cho phép

khách hàng có thể tự đặt phòng qua mạng internet.

25


×