Tải bản đầy đủ (.doc) (23 trang)

HOÀN THIỆN KỸ THUẬT ĐẢM BẢO GẮN BÓ DỮ LIỆU TRONG CÁC WEBSITE KHI CẬP NHẬT CƠ SỞ DỮ LIỆU BẰNG NGÔN NGỮ ASP TRÊN MẠNG INTERNET

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 (297.29 KB, 23 trang )

ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC BÁCH KHOA

TIỂU LUẬN
Môn: HỆ PHÂN TÁN
Đề tài:
HOÀN THIỆN KỸ THUẬT ĐẢM BẢO GẮN BÓ DỮ
LIỆU TRONG CÁC WEBSITE KHI CẬP NHẬT CƠ SỞ
DỮ LIỆU BẰNG NGÔN NGỮ ASP TRÊN MẠNG
INTERNET
GVHD: PGS.TS. Lê Văn Sơn
Thực hiện: Đặng Quang Hiển
Chuyên ngành: Khoa học máy tính
Khóa: 2010 – 2014
ĐÀ NẴNG, 06/2014
LỜI NÓI ĐẦU

Hiện nay, công nghệ thông tin là mối quan tâm hàng đầu của Việt Nam và toàn
thế giới. Chính mối quan tâm này đã làm nên cuộc cách mạng về khoa học và công
nghệ. Khởi đầu cho cuộc cách mạng khoa học và công nghệ này là sự hình thành và
phát triển hàng loạt máy vi tính và các phương tiện xử lý thông tin khác. Với sự phát
triển nhanh chóng của khoa học máy tính cũng như nhu cầu trao đổi thông tin trong
mọi hoạt động của xã hội đòi hỏi sự phát triển đồng bộ các phương tiện truyền thông.
Các thành tựu của ngành khoa học trí tuệ này đã góp phần quan trọng vào việc thay
đổi bộ mặt của thế giới cả về bề mặt lẫn chiều sâu. Việc ứng dụng các thành tựu của
nền công nghệ hiện đại này trở thành vấn đề chủ chốt, quan trọng, quyết định sự thành
bại của các thành phần tham gia vào lĩnh vực hoạt động trên thế giới từ kinh tế, văn
hóa, chính trị đến quân sự.
Trên thực tế, một xu hướng kỹ thuật mới được hình thành, 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 trên cơ sở mạng máy tính. Nhằm khai thác có hiệu quả toàn hệ, vấn đề quan trọng


hàng đầu cần tính đến là các tài nguyên và chiến lược khai thác, sử dụng chúng một
cách có hiệu quả nhất.
Hiện nay các hệ thống thông tin trên mạng rất phổ biến như các website mua
bán máy tính, đăng ký thi và thi qua mạng, các website thương mại điện tử, đang
được sự quan tâm rất lớn. Trong phạm vi báo cáo này sẽ trình bày về vấn đề đảm bảo
gắn bó dữ liệu cho các website khi cập nhật dữ liệu bằng ngôn ngữ ASP.
Được sự giúp đỡ tận tình của PGS.TS Lê Văn Sơn và các bạn, tôi đã hoàn thành
bài báo cáo. Tuy nhiên thời gian và kiến thức có hạn nên bài báo cáo này chắc chắn
còn nhiều khuyết điểm, tôi rất mong nhận được sự góp ý của Thầy giáo và các bạn.
Cho phép tôi được bày tỏ lòng biết ơn đối với PGS.TS Lê Văn Sơn và các bạn đã ủng
hộ, giúp đỡ tôi hoàn thành bài báo cáo này.
Trân trọng cảm ơn !
Gắn bó dữ liệu trong các website khi cập nhật bằng ASP Trang 1
CHƯƠNG I
CÁC KHÁI NIỆM VỀ HỆ TIN HỌC PHÂN TÁN
I.1 Định nghĩa hệ tin học phân tán
Hệ tin học phân tán là hệ thống xử lý thông tin bao gồm nhiều bộ xử lý hoặc các bộ
xử lý nằm ở xa ở các vị trí khác nhau và được liên kết với nhau thông qua phương tiện
viễn thông dưới sự điều khiển thống nhất của hệ điều hành.
Hệ phân tán là một tập hợp bao gồm các bộ xử lý hoặc bộ vi xử lý với bộ nhớ và
đồng hồ độc lập. Điều này đồng nghĩa với việc các bộ xử lý không sử dụng chung bộ
nhớ và đồng hồ. Trong hệ tin học phân tán, các tính toán có thể được tính trên nhiều bộ
xử lý hay trên vi xử lý của hệ thống đa bộ xử lý. Như vậy hệ thống hệ tin học phân tán
đòi hỏi hệ thống của mình phải trang bị bộ nhớ cục bộ. Các bộ xử lý trao đổi thông tin
qua các hệ thống đường truyền khác nhau như là cáp chuyên dụng, bus trao đổi, đường
điện thoại, cáp quang, . . .
Khác với hệ thống máy đơn, mạng máy tính là tập hợp các thiết bị đầu cuối được kết
nối với nhau thông qua hệ thống đường truyền. Các thiết bị đầu cuối của máy tính rất đa
dạng, bao gồm tập hợp các máy tính, các thiết bị chuyên dụng, các thiết bị truyền tin, các
thiết bị tiếp nhận và hiển thị thông tin. Hệ thống mạng máy tính được điều khiển bằng hệ

điều hành mạng. Hệ thống tin học này có thể là hệ tập trung hoặc hệ phân tán.
Căn cứ vào các thành phần của hệ tin học, ta nhận thấy hệ tin học có thể bao gồm
bốn thực thể sau:
GVHD: PGS.TS. Lê Văn Sơn Thực hiện: Đặng Quang Hiển
Các
hệ thống
phần mềm
Hệ thống
dữ liệu
Tập hợp
phần cứng
Hệ thống
truyền
thông
Hình 1 Các thực thể của hệ tin học phân tán
Gắn bó dữ liệu trong các website khi cập nhật bằng ASP Trang 2
Trong hệ tin học phân tán, cấu hình phần cứng của mạng có thể bao gồm các bộ xử lý
có cấu tạo hoàn toàn khác nhau về khả năng, tốc độ và được thiết kế cho các chức năng
khác nhau. Chúng có thể là các bộ xử lý, các trạm làm làm việc, các máy tính tập trung
và các máy tính điện tử vạn năng lớn. Chúng được gọi bằng các tên khác nhau như trạm,
node . . . căn cứ vào ngữ cảnh mà ở đó nó được nêu ra.
Ngoài hệ thống phần cứng, phần mềm, dữ liệu thì hệ phân tán còn có hệ thống truyền
thông được mô tả như ở trên. Song điều cơ bản để phân biệt hệ tin học phân tán với
mạng máy tính là và hệ điều hành mạng chính là nguyên tắc xây dựng hệ.
I.2 Ưu điểm và hạn chế của hệ thống phân tán
I.2.1 Ưu điểm
 Chia sẻ tài nguyên: Chia sẻ tài nguyên trong hệ thống phân tán cung cấp một cơ
chế để chia sẻ tập tin ở vị trí xa, xử lý thông tin trong một cơ sở dữ liệu phân tán,
in ấn tại một vị trí xa, sử dụng những thiết bị ở xa để thực hiện các thao tác…
 Tăng tốc độ tính toán: Hệ thống phân tán cho phép phân chia việc tính toán trên

nhiều vị trí khác nhau để tính toán song song.
 An toàn: Nếu một vị trí trong hệ thống phân tán bị hỏng, các vị trí khác vẫn tiếp
tục làm việc mà không ảnh hưởng đến toàn bộ hệ thống.
 Thông tin liên lạc với nhau: Có nhiều lúc, chương trình cần chuyển đổi dữ liệu từ
vị trí này sang vị trí khác. Khi các vị trí được nối kết với nhau trong một hệ thống
mạng, việc trao đổi dữ liệu diễn ra rất dễ dàng.
I.2.2 Hạn chế
 Giá phát triển phần mềm cao: Do các khó khăn khi cài đặt một hệ thống phân tán,
giá thành sẽ tăng lên.
 Dễ mắc lỗi hơn: Vì các trạm trong hệ phân tán làm việc song song, khó có thể
đảm bảo thuật toán được thực hiện đúng trên tất cả các trạm. Do vậy mà số lỗi sẽ
tăng lên.
GVHD: PGS.TS. Lê Văn Sơn Thực hiện: Đặng Quang Hiển
Gắn bó dữ liệu trong các website khi cập nhật bằng ASP Trang 3
 Khối lượng các xử lý tăng: Hệ thống phân tán cần truyền nhiều thông báo, nhiều
tính toán phụ. Do vậy khối lượng xử lý tăng lên so với hệ thống tập trung.
I.3 Nguyên tắc xây dựng hệ phân tán
 Chia sẻ tài nguyên: Thực tế phát triển mạng máy tính đặt ra một vấn đề lớn là cần
phải dùng chung tài nguyên. Một tiến trình trên một trạm nào đó có thể cung cấp
tài nguyên dùng chung ở một trạm khác.
 Liên lạc: Khi các hệ thống đã được mắc nối với nhau, các thực thể trong hệ có thể
trao đổi thông tin với nhau.
 Tin cậy: Một trạm trong hệ bị sự cố không làm cho toàn hệ ảnh hưởng, mà ngược
lại, công việc đó được phân cho các trạm khác đảm nhận. Ngoài ra, trạm bị sự cố
có thể tự động phục hồi lại trạng thái ban đầu trước khi có sự cố hay trạng thái
ban đầu của nó.
 Tăng tốc: Đây là khái niệm mới về phân tán tải. Một tính toán lớn nào đó, nếu chỉ
sử dụng một trạm thì thời gian cho kết quả lâu. Tính toán này được chia nhỏ và
thực hiện song song trên các trạm. Điều này cũng cần thiết đối với các trạm quá
tải.

I.4 Điều kiện của hệ phân tán
Để đảm bảo hoạt động thì các hệ thống kết nối với nhau phải thỏa mãn hai điều kiện
cơ bản sau đây :
 Bất kỳ một hệ thống thành phần nào (hệ cục bộ) đều có thể liên lạc thông suốt với
các hệ thống thành phần khác.
 Mỗi một hệ thống cục bộ được đặc trưng bằng một tên duy nhất và tên này có thể
được nhận biết bởi các hệ thống viễn thông.
GVHD: PGS.TS. Lê Văn Sơn Thực hiện: Đặng Quang Hiển
Gắn bó dữ liệu trong các website khi cập nhật bằng ASP Trang 4
CHƯƠNG II
SỰ GẮN BÓ THÔNG TIN TRONG CƠ SỞ DỮ LIỆU
II.1 Các điều kiện giả định và thực tế
Ta có một tập hợp các thông tin nào đó có thể được truy cập bởi một tập các
tiến trình. Số lượng các thông tin có thể truy cập được và các tiến trình có nhu cầu
thông tin là con số cố định. Hệ này phát triển rời rạc theo thời gian giữa các điểm
quan sát, ta có thể nhận biết được trạng thái thực của chúng, có nghĩa là các đối
tượng và các ngữ cảnh thực hiện tiến trình, hệ kiểu như vậy hoạt động với độ ổn
định cao.
Các điều kiện giả định này so với thực tế có các điểm khác biệt cơ bản như sau:
STT So sánh
1 Các đối tượng và các tiến trình có thể được tạo lập và hủy bỏ có tính chất
động trong suốt quá trình tồn tại của hệ
2 Các đối tượng và các tiến trình có thể được phân tán trên các trạm khác nhau,
liên hệ với nhau qua hệ thống viễn thông. Do vậy, ta không thể xác định trạng
thái thời điểm của hệ vì lý do độ trễ đường truyền giữa các trạm và tính không
tương thích giữa các điểm quan sát trong trạm đó.
3 Hệ thống viễn thông và các tiến trình là các đối tượng có thể xảy ra các sự cố
về kỹ thuật.
II.2 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 với nhau, chúng

quan hệ với nhau bởi tậ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ệ thỏa 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ó.
GVHD: PGS.TS. Lê Văn Sơn Thực hiện: Đặng Quang Hiển
Gắn bó dữ liệu trong các website khi cập nhật bằng ASP Trang 5
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 hóa đặ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 sau:
STT Mức Giải thích
1 Người sử
dụng
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ừ một dãy các tác động được thể
hiện như sau: Nếu hai 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).
Nếu một tập hợp các giao dịch M được thực hiện bởi các tiến trình độc lập và được
thực hiện một cách tuần tự, điều này có nghĩa là các giao dịch này thực hiện xong thì
giao dịch khác mới thực hiện và tuân thủ theo một trật tự nào đó. Sự gắn bó của hệ được
bảo toàn.
Ở mức hệ thống ta có thể nói rằng tác động là phần tử nhỏ nhất của hệ thống mà ta
không thể chia cắt được nữa. Nhưng vì lý do hiệu quả nên các giao dịch được xử lý song
song nên việc gắn bó dữ liệu không còn được đảm bảo. Một yếu tố quan trọng khác là
trong quá trình thực hiện các giao dịch không được thực hiện một cách ngắt quãng mà
phải liên tục cho đến khi giao dịch kết thúc nhằm đảm báo tính gắn bó dữ liệu.
II.3 Tác động của sự cố đối với việc gắn bó dữ liệu
Phương pháp đảm bảo gắn bó dữ liệu một cách khả thi trong điều kiện có sự cố cho

các hệ thống thông tin, bản chất của vấn đề gắn bó dữ liệu cũng như nguyên nhân dẫn
GVHD: PGS.TS. Lê Văn Sơn Thực hiện: Đặng Quang Hiển
Gắn bó dữ liệu trong các website khi cập nhật bằng ASP Trang 6
đến sự cố làm cho dữ liệu không còn gắn bó được chỉ ra và nhóm ghép trong quá trình
phân tích và thiết kế hệ thống.
Một cơ sở dữ liệu được xem là gắn bó nếu nó thỏa mãn các ràng buộc về toàn vẹn
ngữ nghĩa. Để đảm bảo tính gắn bó dữ liệu nhiều cơ chế cũng như kiểm soát tính toàn
vẹn về mặt ngữ nghĩa được sử dụng.
Việc kiểm soát tính toàn vẹn ngữ nghĩa tốt sẽ đảm bảo được tính gắn bó dữ liệu của
hệ thống thông tin. Hiện nay, người ta đang áp dụng hai phương pháp chủ yếu sau:
 Loại bỏ các chương trình/ thủ tục cập nhật có thể dẫn đến trạng thái không gắn bó
dữ liệu trong các cơ sở dữ liệu.
 Triệu gọi các chương trình/thủ tục đặc biệt đã được cài đặt sẵn trên hệ thống
nhằm khôi phục trạng thái ban đầu trước khi cập nhật.
Để có thể khôi phục lại dữ liệu và trạng thái gắn bó thông tin của toàn hệ thống khi
có sự cố xảy ra, một trong những vấn đề hàng đầu là xác định được loại, bản chất và vị
trí diễn ra sự cố mà tự đó nhận biết một cách tự động và chuyển đến phương án giải
quyết nào cho phù hợp.
Tổng quan, sự cố có thể chia làm hai loại chính là sự cố xảy ra do các trạm trên hệ
phân tán và sự cố do hệ thống viễn thông gây ra. Để tiện lập trình giải pháp, người ta cụ
thể hóa thành bốn mức và các nguyên nhân thể hiện trong bảng sau:
STT Loại sự cố Nguyên nhân
1 Sự cố giao dịch Do một lỗi nào đó trong bản thân giao dịch gây nên.
2 Sự cố vị trí Do một lỗi phát sinh trong quá trình vận hành hệ thống.
Lỗi này có thể xuất phát từ các thiết bị phần cứng. Khi
bị sự cố hệ thống lập tức ngừng hoạt động. Hệ thống
chương trình, đặc biệt là các chương trình điều khiển
GVHD: PGS.TS. Lê Văn Sơn Thực hiện: Đặng Quang Hiển
Gắn bó dữ liệu trong các website khi cập nhật bằng ASP Trang 7
cũng có thể sinh ra lỗi. Đó là các lỗi do thuật toán hoặc

do viết lệnh sai, do lưu trữ chương trình hay do virus.
Các lỗi này thường là ở các chường trình và ở cơ sở dữ
liệu.
3 Sự cố phương tiện Do sự cố của các thiết bị lưu trữ thứ cấp dùng để lưu cơ
sở dữ liệu. Khi có sự cố này thì một phần hoặc tất cả cơ
sở dữ liệu trên thiết bị đó được xem như bị hủy hoại
hoặc không thể truy cập một cách bình thường được.
4 Sự cố đường truyền Do lỗi trong các thông điệp, các thông điệp vô trật tự,
thông điệp bị thất lạc hoặc không phân phối thông điệp
và các sự cố khác liên quan đến đường truyền.
Bảng 1: Các loại sự cố và nguyên nhân gây nên sự cố
Phương pháp tổng quan cho việc khắc phục bốn loại sự cố trên được trình bày trong
bảng sau:
STT Loại sự cố Cách khắc phục
1 Sự cố giao dịch Hủy bỏ giao dịch, sau đó đặt lại cơ sở dữ liệu về trạng
thái của nó trước khi khởi động giao dịch này.
2 Sự cố vị trí Thiết kế nghi thức ủy thác nguyên tử không bị phong
tỏa.
3 Sự cố phương tiện Được xem như những vấn đề cục bộ của một vị trí, vì
vậy không xem xét trong trường hợp các hệ thống
phân tán.
4 Sự cố đường truyền Sử dụng bộ đếm thời gian và cơ chế quá hạn và theo
dõi xem đã qua bao lâu kể từ khi vị trí gởi không nhận
được thông điệp trả lời của vị trí đến.
GVHD: PGS.TS. Lê Văn Sơn Thực hiện: Đặng Quang Hiển
Gắn bó dữ liệu trong các website khi cập nhật bằng ASP Trang 8
II.4 Xử lý các sự cố
Ta giả sử rằng các bộ xử lý và bộ nhớ tạo nên các trạm là nguyên nhân chính của sự
cố ngắt quãng quá trình thực hiện các tiến trình. Các hệ thống viễn thông cũng có thể là
nơi diễn ra các sự cố làm mất hẳn hoặc chồng chéo các thông điệp.

Ta xét sự gắn bó thông tin không chỉ trong các điều kiện thuận lợi như đã nêu trước
đây mà còn tính đến các yếu tố mới và cũng xét đến các công cụ cho phép đảm bảo cho
sự gắn bó này.
Nếu một tiến trình nào đó bị sự cố trong khi thực hiện giao dịch thì trạng thái của hệ
xuất phát từ việc thực hiện từng phần đó chắc chắn sẽ không còn đảm bảo sự gắn bó.
Một cơ chế cho phép duy trì sự gắn bó trong môi trường phân tán có sự cố phải được
thực hiện như sau:
STT Công việc phải thực hiện
1 Một giao dịch 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ì bắt buộc giao dịch phải quay về điểm xuất phát.
Muốn thực hiện những điều vừa nêu trong bảng trên, người ta đòi hỏi phải có các đặc
tính toàn vẹn như sau:
STT Đặc tính
1 Nếu một tiến trình bị sự cố trước khi kết thúc một giao dịch T nhưng lại sau
các thay đổi cần thiết của T thì hệ là gắn bó.
2 Nếu một tiến trình bị sự cố trước khi kết thúc một giao dịch T nhưng lại trước
các thay đổi cần thiết của T thì hệ là gắn bó.
GVHD: PGS.TS. Lê Văn Sơn Thực hiện: Đặng Quang Hiển
Gắn bó dữ liệu trong các website khi cập nhật bằng ASP Trang 9
3 Nếu một tiến trình bị sự cố trước khi kết thúc một giao dịch T nhưng lại diễn
ra trong quá trình đang thực hiện các thay đổi của T thì hệ là không gắn bó.
Các đặc tính trên có thể được mô tả bằng hình vẽ sau:
Tình huống này ta có hai giải pháp cụ thể là:
STT Giải pháp tổng quát
1 Phục hồi trạng thái của hệ như trước khi diễn ra giao dịch T
2 Cố gắng thực hiện giao dịch T cho đến khi kết thúc
Không phải lúc nào ta cũng áp dụng được giải pháp 1 vì một số tác động không thể
quay trở lại được. Như thế ta phải xác định cho được điểm không quay trở lại được của
từng giao dịch. Căn cứ vào điểm này, nếu vượt qua nó, không có hành động quay trở lại
nào được thực hiện và trạng thái trước đó của giao dịch sẽ được thực hiện bởi phép lặp

lại (rollback).
Trong hệ tin học tập trung, việc triển khai một kỹ thuật khẳng định (điểm không quay
trở lại) không có gì khó khăn. Ta thực hiện việc cập nhật có tính chất quyết định vào
trạng thái bằng phép ghi duy nhất.
Trong hệ phân tán, vấn đề triển khai có nhiều tinh tế hơn vì khi một trạm bắt đầu cập
nhật, nó phải gởi cho tất cả các trạm khác và sự cố có thể xảy ra vào thời điểm đó.
GVHD: PGS.TS. Lê Văn Sơn Thực hiện: Đặng Quang Hiển
Gắn bó
1
2
3
Trước khi cập nhật (thay đổi)
Sau khi cập nhật (thay đổi)
Không gắn bó
Gắn bó dữ liệu trong các website khi cập nhật bằng ASP Trang 10
GVHD: PGS.TS. Lê Văn Sơn Thực hiện: Đặng Quang Hiển
Gắn bó dữ liệu trong các website khi cập nhật bằng ASP Trang 11
KẾT LUẬN
Trong bản báo cáo này đã trình bày các vấn đề về gắn bó dữ liệu trong hệ phân tán
như sau:
 Định nghĩa hệ tin học phân tán.
 Các ưu điểm và hạn chế của hệ tin học phân tán.
 Nguyên tắc xây dựng hệ phân tán, điều kiện hệ phân tán.
 Giúp cho người đọc hiểu được phần nào về tác động và giao dịch.
 Tác động của sự cố đối với vấn đề gắn bó dữ liệu trong hệ phân tán: đề cập
đến các loại sự cố, nguyên nhân gây ra các loại sự cố đó cũng như cách khắc
phục chúng như thế nào.
 Đề ra giải pháp nhằm xử lý các sự cố, hiểu được nếu xảy ra sự cố thì hệ thống
có còn đảm bảo việc gắn bó dữ liệu hay không.
GVHD: PGS.TS. Lê Văn Sơn Thực hiện: Đặng Quang Hiển

Gắn bó dữ liệu trong các website khi cập nhật bằng ASP Trang 12
CHƯƠNG III
KỸ THUẬT ĐẢM BẢO GẮN BÓ DỮ LIỆU TRONG CÁC WEBSITES KHI
CẬP NHẬT CƠ SỞ DỮ LIỆU BẰNG NGÔN NGỮ ASP TRÊN MẠNG
INTERNET
III.1 Đặt vấn đề
Hiện tại, trên mạng Internet các hệ thống thông tin cũng như các hệ thống cung cấp
tin tức, hệ thống kinh doanh thương mại điện tử đều được xây dựng trên cơ sở các công
cụ tạo web kết hợp với một số hệ quản trị cơ sở dữ liệu có sẵn trên thị trường như là
SQL Server, Oracle, MySQL, Các hệ này hình thành dưới dạng các websites mang tính
chất thông tin theo mô hình Client/Server và tỏ ra hữu dụng trong việc tra cứu thông tin
với độ gắn bó dữ liệu không nhất thiết phải là gắn bó mạnh.
Mô hình tổng quan về một hệ thống website có thể được mô tả trong hình vẽ sau:
Hình-1: Mô hình tổng quan về hệ thống website
Các hệ thống thông tin trên Internet với các truy cập đồng thời bao gồm cả việc đọc
và ghi dữ liệu đan xen nhau phải được nâng cấp để đáp ứng yêu cầu nhất quán cho người
sử dụng thông qua trình duyệt. Chính vì thế, việc nghiên cứu hoàn thiện hệ bằng các giải
pháp kỹ thuật ngay trong giai đoạn thiết kế nhằm đảm bảo dữ liệu đạt kết quả mạnh là
hết sức cần thiết.
Để đảm bảo duy trì sự gắn bó mạnh, người ta đã đề xuất các giải pháp kỹ thuật khác
nhau và đã được công bố. Trong phạm vi báo cáo này chỉ trình bày phương pháp đảm
GVHD: PGS.TS. Lê Văn Sơn Thực hiện: Đặng Quang Hiển
Gắn bó dữ liệu trong các website khi cập nhật bằng ASP Trang 13
bảo gắn bó mạnh trên cơ sở thuật toán luân phiên cho các cập nhật của hệ phân tán triển
khai cho các hệ thống website.
Mục tiêu của giải pháp nghiên cứu phải thỏa mãn yêu cầu cơ bản là với đối tượng
cần đặc trưng, thì thông tin biểu hiện về nó là duy nhất đúng ở thời điểm được phép truy
cập bằng các trình duyệt có xét đến độ trễ và sự cố có thể của hệ thống viễn thông.
III.2 Cơ sở kỹ thuật của hệ thống thông tin trên Internet
Việc truy cập vào thông tin của các hệ thống website trên Internet có thể được khái

quát hóa bằng hình vẽ 2. Đây là hệ thống truy cập từ trình duyệt thể hiện kiến trúc n-bên
với các chương trình ứng dụng đã được công bố trong nhiều tài liệu tin học khác nhau.
Hình – 2: Truy cập thông tin từ trình duyệt
Các hệ thống được xây dựng trên mạng Internet bao gồm các máy chủ kết nối với
nhau qua mạng viễn thông, ví như mạng điện thoại công cộng.
Khi thiết kế người ta thường dựa vào các hệ quản trị cơ sở dữ liệu có sẵn với ngôn
ngữ SQL được sử dụng để kiểm nghiệm tính tương tác trên cả hai đối tượng server và
client.
Mối quan hệ giữa hệ quản trị cơ sở dữ liệu và công cụ tạo web có thể được mô tả
trong hình 3.
Hình – 3: Mô hình quan hệ giữa công cụ và hệ quản trị cơ sở dữ liệu
Việc kết nối cơ sở dữ liệu có thể thực hiện theo hai cách:
1. Theo sự kiện Application_OnStart.
2. Trên từng trang web động khi có yêu cầu sử dụng.
GVHD: PGS.TS. Lê Văn Sơn Thực hiện: Đặng Quang Hiển
Gọi
truy vấn
HTML
HTML
URL
Các bộ
Truy vấn
Chương trình
duyệt web
(IE, Netscape)
Các hệ thống thông
tin dưới dạng các
website
Các giao diện
với thông tin

(CSDL)
Nơi chứa
thông tin
(các files)
Programs
(Trên công cụ
tạo web động)
ADO
(ActiveX Data
Object)
DBMS
(SQL Server,
Oracle, MySQL )
Gắn bó dữ liệu trong các website khi cập nhật bằng ASP Trang 14
Trong trường hợp thứ nhất thì cách thức mở cơ sở dữ liệu không phải là vấn đề đáng
quan tâm vì đối tượng Connection duy trì kết nối cho toàn website. Ngược lại trong cách
thứ hai, cơ sở dữ liệu được mở theo chế độ Shared dùng chung. Trong chế độ này, cơ sở
dữ liệu được xem như là tài nguyên dùng chung.
Đoạn lệnh sau cho phép hình dung cơ chế mở một cơ sở dữ liệu trong công cụ tạo
web động bằng ADO.
<%
‘Global ADO variables
Dim cnn ‘as ADODB.Connection
Dim connectionString ‘as String
‘Create a connection string
‘You can edit connectionString variable to set your SQL server, login ID and password
connectionString = "Provider=SQLOLEDB;Data Source=MyServer;
Initial Catalog=MyDatabase; User ID=MyUID;
Password=MyPassword;"
‘Create connection object

Set cnn = Server.CreateObject(“ADODB.Connection”)
‘Open connection
‘Connection objection using supplied information in the connection string
cnn.Open connectionString
%>
Trong các công cụ tạo web đã được định hướng sử dụng để thiết kế hệ thống, các
thuật toán điều khiển đồng thời để đảm bảo việc gắn bó dữ liệu được triển khai dưới
dạng các khóa trong khi truy vấn hay cập nhật cơ sở dữ liệu như adLockReadOnly,
adLockPessimistic, adLockOptimistic, adLockBatchOptimistic với đối tượng
ADODB.RecordSet và các chế độ mở kết nối đến cơ sở dữ liệu như sau
adModeShareDenyNone, adModeShareExclusive, adModeShareDenyWrite,
GVHD: PGS.TS. Lê Văn Sơn Thực hiện: Đặng Quang Hiển
Gắn bó dữ liệu trong các website khi cập nhật bằng ASP Trang 15
adModeShareDenyRead, adModeReadWrite, adModeWrite, với đối tượng
ADODB.Connection được triển khai nhằm đảm bảo gắn bó dữ liệu.
Optimistic locking cập nhật bằng cách thay đổi đối tượng Field. Khi sử dụng
Optimistic locking , ADO không khóa bản ghi. Lưu các thay đổi đối với bản ghi bằng
cách chuyển sang bản ghi mới hoặc sử dụng phương thức Update. Phương thức này sẽ
dẫn đến khóa bản ghi, kiểm tra phương thức Update có thành công hay không. Nếu
không chuyển qua chế độ thử lại.
Optimistic locking sẽ chuyển thành Pessimistic locking khi giao dịch được sử dụng.
Vì giao dịch khóa dữ liệu nên người dùng không thể cập nhật dữ liệu, thay đổi dữ liệu
cho đến khi giao dịch được thực hiện xong.
Như đã trình bày ở phần trước của bản báo cáo tính toàn vẹn của cơ sở dữ liệu cũng
vô cùng quan trọng trong việc đảm bảo gắn bó dữ liệu. Chính vì thế, trong khi thiết kế cơ
sở dữ liệu chúng ta cần phải thực hiện tạo các ràng buộc cơ sở dữ liệu trong quá trình tạo
các table dữ liệu. Việc tạo các ràng buộc giữa các bảng có thể được tạo bằng câu lệnh
cũng như bằng giao diện người sử dụng.
Thêm vào đó nếu khi có sự cố thì hệ quản trị cơ sở dữ liệu cũng cần phải thực hiện
các biện pháp khắc phục xử lý sự cố để đảm bảo tính gắn bó dữ liệu. Trong tình huống

này các hệ cơ sở dữ liệu cung cấp các giao dịch (Transaction) để triển khai. Các phương
thức quan trọng trong quá trình thiết kế các hệ thống cập nhật cơ sở dữ liệu bằng các
giao dịch với các thao tác tương ứng trong bảng sau:
STT Tên gọi Thuyết minh
1 BeginTransaction <name> Bắt đầu một giao dịch có tên là name trên một
liên kết.
2 End Ranh giới kết thúc giao dịch
3 Commit Khẳng định tất cả các thay đổi kể từ thời điểm
bắt đầu giao dịch.
4 Rollback Khôi phục lại toàn bộ các thay đổi của giao dịch
kể từ khi nó bắt đầu thực hiện.
Từ các phương thức trên người phát triển hệ thống cần lựa chọn sử dụng thích hợp để
phát triển các hệ thống thông tin nhằm đảm bảo vấn đề gắn bó dữ liệu.
GVHD: PGS.TS. Lê Văn Sơn Thực hiện: Đặng Quang Hiển
Gắn bó dữ liệu trong các website khi cập nhật bằng ASP Trang 16
III.3 Giải pháp đảm bảo gắn bó dữ liệu trên các hệ thống website
Việc nghiên cứu và tìm ra giải pháp hữu hiệu nhằm đảm bảo gắn bó thông tin trong
điều kiện lượng truy cập lớn, hơn nữa các truy cập này diễn ra đồng thời mang tính ngẫu
nhiên và việc đọc và ghi đan chen lẫn nhau. Sau khi xem xét các phương diện phầm
mềm cơ sở như hệ điều hành, hệ quản trị cơ sở dữ liệu, công cụ tạo web động với vấn đề
gắn bó dữ liệu, vấn đề còn lại là phải nghiên cứu phát triển các hàm, thủ tục người dùng.
Các hàm thủ tục này sẽ đóng vai trò cơ sở cho việc lập chương trình các hệ thống thông
tin. Hình sau cho phép hình dung các lớp hỗ trợ giải quyết có tính chất kỹ thuật cho vấn
đề gắn bó dữ liệu.
Hình – 4: Cấu trúc lớp của việc giải quyết vấn đề gắn bó
Nội dung cơ bản của giải pháp kỹ thuật được thể hiện trên cơ sở giao dịch trực tuyến
được trình bày thông qua hình vẽ dưới. Trong đó toàn bộ thời gian của giao dịch chuyển
từ trạng thái gắn bó này đến trạng thái gắn bó khác của thông tin. Do đó, vấn đề gắn bó
trong hệ thống chính là giải quyết vấn đề quản lý các giao dịch khi có nhiều truy cập
diễn ra đồng thời, đặc biệt là các truy cập để thay đổi thông tin.

GVHD: PGS.TS. Lê Văn Sơn Thực hiện: Đặng Quang Hiển
Các chương trình ứng dụng
Các ngôn ngữ lập trình và các công cụ hỗ trợ
Các hệ quản trị cơ sở dữ liệu (DBMS)
Hệ điều hành
máy Server
Hệ điều hành
máy Client
Hệ điều hành mạng các máy tính
Gắn bó dữ liệu trong các website khi cập nhật bằng ASP Trang 17
Hình – 5: Trang thái dữ liệu trong khi cập nhật
Trong quá trình thiết kế các hệ thống thông tin cần quan tâm tới một số các điểm sau:
1. Có bao nhiêu cơ sở dữ liệu trong website thì cần có bấy nhiêu đối tượng cần
đảm bảo gắn bó dữ liệu.
2. Cần thiết lập tính toàn vẹn giữa các bảng trong cơ sở dữ liệu.
3. Xác định thời gian mà một giao dịch có thể chiếm giữ cơ cở dữ liệu. Nếu quá
thời gian cho phép thì cần phải giải phóng việc chiếm dụng để trả lại tài
nguyên dùng chung cho các giao dịch khác truy cập.
4. Cho phép các thao tác đọc dữ liệu trong các cơ sở dữ liệu diễn ra đồng thời.
Sơ đồ hoạt động của hệ thống thể hiện trong hình vẽ 6. Sơ đồ này chỉ giới hạn vấn đề
trong một truy cập trong điều kiện còn nhiều truy cập đồng thời từ xa. Việc khóa (cài
then) được diễn ra ở mức trường dữ liệu. Trường hợp đang thực hiện thao tác ghi mà bị
sự cố thì hệ thống sẽ thực hiện khôi phục dữ liệu từ backup một cách tự động. Trường
hợp giao dịch thành công thì hệ quản trị cơ sở dữ liệu sẽ thực hiện phép xóa backup để
giải phóng tài nguyên.
Vấn đề an toàn đối với dữ liệu được thực hiện qua các phép kiểm tra tên đăng nhập
và mật khẩu, quyền đối với người dùng trên hệ và các quy tắc logic trên hệ quản trị cơ sở
dữ liệu.
GVHD: PGS.TS. Lê Văn Sơn Thực hiện: Đặng Quang Hiển
Gắn bó

1
2
3
Trước khi cập nhật (thay đổi)
Sau khi cập nhật (thay đổi)
Không gắn bó
Gắn bó dữ liệu trong các website khi cập nhật bằng ASP Trang 18
Hình – 6: Sơ đồ hoạt động của hệ thống
Đoạn chương trình sau mô tả quá trình thực hiện cập nhật dữ liệu có sử dụng giao
dịch (transaction).
<%
‘Global ADO variables
GVHD: PGS.TS. Lê Văn Sơn Thực hiện: Đặng Quang Hiển
Gắn bó dữ liệu trong các website khi cập nhật bằng ASP Trang 19
Dim strQuery ‘as String
‘Create a query string
strQuery = “UPDATE Products SET P_Name = ‘Samsung LCD 32’ WHERE P_id = 1”
‘Begin a transaction
cnn.BeginTrans
‘Update Products table
Cnn.Excute strQuery
‘End transaction
cnn.CommitTrans
cnn.Close
Set strQuery = Nothing
%>
Để triển khai xây dựng các hệ thống thông tin, các website bằng các công cụ tạo web
động, các yếu tố cơ bản của việc đảm bảo gắn bó dữ liệu cần được xem xét ngay từ khâu
thiết kế ban đầu. Các yếu tố Connection, RecordSet, Transaction, Command, Dataset
cùng với kỹ thuật cần được nghiên cứu nhằm đảm bảo vấn đề gắn bó dữ liệu trong các

hệ thống.
TÀI LIỆU THAM KHẢO
1. Lê Văn Sơn, Hệ tin học phân tán, NXB Đại học Quốc Gia TP.Hồ Chí Minh,
2002.
GVHD: PGS.TS. Lê Văn Sơn Thực hiện: Đặng Quang Hiển
Gắn bó dữ liệu trong các website khi cập nhật bằng ASP Trang 20
2. Lê Văn Sơn, Giáo trình Hệ tin học phân tán cho học viên Cao học CNTT, Đại học
Đà Nẵng, Đà Nẵng, 2001.
3. Lê Văn Sơn, Giáo trình hệ điều hành, Đại học Đà Nẵng, Đà Nẵng,1998
4. Nguyễn Thúc Hải, Mạng máy tính và các hệ thống mở, Nhà xuất bản giáo
dục,1997.
5. Bài viết của nhóm tác giả Lê Văn Sơn, Phạm Đình Hân, Gắn bó dữ liệu trong hệ
thống thông tin đào tạo Đại học và Cao đẳng trên mạng Internet.
6. Bài viết của nhóm tác giả Lê Văn Sơn, Nguyễn Hữu Hải, Phát triển phương pháp
gắn bó dữ liệu trong điều kiện có sự cố của các hệ thống thông tin đăng ký trên
mạng Internet/Intranet.
MỤC LỤC
LỜI NÓI ĐẦU
CHƯƠNG I -
CHƯƠNG I 1
CÁC KHÁI NIỆM VỀ HỆ TIN HỌC PHÂN TÁN 1
CHƯƠNG III 12
GVHD: PGS.TS. Lê Văn Sơn Thực hiện: Đặng Quang Hiển
Gắn bó dữ liệu trong các website khi cập nhật bằng ASP Trang 21
KỸ THUẬT ĐẢM BẢO GẮN BÓ DỮ LIỆU TRONG CÁC WEBSITES KHI CẬP NHẬT CƠ SỞ DỮ LIỆU
BẰNG NGÔN NGỮ ASP TRÊN MẠNG INTERNET 12
III.1 Đặt vấn đề 12
III.2 Cơ sở kỹ thuật của hệ thống thông tin trên Internet 13
III.3 Giải pháp đảm bảo gắn bó dữ liệu trên các hệ thống website 16
Hình – 5: Trang thái dữ liệu trong khi cập nhật 17

GVHD: PGS.TS. Lê Văn Sơn Thực hiện: Đặng Quang Hiển

×