Các mô hình CSDL..... i thông tin khách-ch cho CSDL qu c gia ..... Ph#n hai trình bày t ng quan v công ngh CSDL... C&ng nh các ngu n tài nguyên khác, ngu n l c thông tin không hoàn toàn
Trang 1C C NG D NG CÔNG NGH THÔNG TIN
Trang 2BÁO CÁO TÀI
Trang 3M C L C
L I GI I THI U 8
Ph n I THÔNG TIN VÀ QU N LÝ THÔNG TIN 11
I.1 Ngu n l c thông tin 11
I.2 T m quan tr ng c a qu n lý thông tin 11
I.3 N i dung qu n lý ngu n l c thông tin 12
I.4 H th ng thông tin 12
I.4.1 Các khái ni m c b n 12
I.4.2 ph c t p c a h th ng thông tin trong t ng lai 14
I.4.3 Gi i pháp cho h th ng thông tin trong t ng lai 14
Ph n II T NG QUAN V C S D LI U 16
II.1 Khái ni m v CSDL 16
II.1.1 D li u trong CSDL 17
II.1.2 Quá trình phát tri n c a các h qu n tr CSDL 17
II.1.3 Các mô hình CSDL 18
II.1.4 Ngôn ng truy v n SQL 21
II.2 Thi t k c a CSDL 24
II.2.1 ánh ch s 24
II.2.2 Các giao d ch và x lý song song 24
II.2.3 C ch ki m soát truy c p ng th i 25
II.2.4 B n sao 25
II.3 Ph m vi ng d ng c a CSDL 25
Ph n III HI N TR NG NGHIÊN C U VÀ NG D NG CSDL 26
III.1 Ngành công nghi p qu n lý d li u trên th gi i 26
III.2 Tình hình nghiên c u, ng d ng CSDL trong n c 26
III.2.1 ng d ng CSDL trong các án tr c ây 27
III.2.2 Tình hình tri n khai các CSDL qu c gia tr c ây 27
III.3 Các v n c a vi c phát tri n và ng d ng CSDL t i Vi t Nam 30
Ph n IV H NG PHÁT TRI N C A CSDL HI N NAY 31
IV.1 Ngôn ng XML 31
IV.1.1 Lý do ra i c a XML 31
IV.1.2 c i m c a XML 32
IV.1.3 T o và so n th o tài li u XML 33
IV.1.4 XML và c u trúc d li u 33
IV.1.5 XML và các nh d ng d a trên XML 34
IV.1.6 XML và HTML 34
IV.1.7 XML phù h p v i vi c ng d ng r ng rãi 35
IV.1.8 XML là c s c a Web th h m i 36
IV.1.9 Giá tr và thách th c c a d li u XML 37
Trang 44
IV.1.10 XML và th tr ng khuôn d ng t p CSDL 37
IV.2 XML và các công ngh x lý d li u liên quan 38
IV.2.1 nh ngh a ki u c a tài li u 38
IV.2.2 L c XML 39
IV.2.3 Ngôn ng XPath 39
IV.2.4 Ngôn ng truy v n XQuery 39
IV.2.5 Các công ngh x lý khác 40
IV.3 Ki n trúc c a m t C s d li u XML 41
IV.3.1 CSDL XML t nhiên và CSDL quan h h tr XML 41
IV.3.2 Các thành ph n c a m t CSDL XML 41
IV.3.3 Các yêu c u i v i CSDL XML 42
IV.4 Trao i d li u và chu n 42
IV.4.1 Xu th trao ! i thông tin b " ng các chu # n 42
IV.4.2 XML và chu # n trao ! i d li u ph ! bi n 43
IV.4.3 Siêu d li u và chu # n cho siêu d li u 45
IV.5 XML và an toàn b o m t 45
IV.6 XML và chính ph i n t 46
Ph n V CÁC GI I PHÁP CÔNG NGH CSDL 48
V.1 Các gi i pháp CSDL c a IBM 48
V.1.1 Qu n lý d li u XML v i DB2 9 49
V.1.2 D ng d li u XML và t i u l u tr trong DB2 9 51
V.1.3 Truy v n d li u XML trong DB2 9 51
V.1.4 Ích l i c a công nghê pureXML 51
V.2 Các gi i pháp CSDL XML c a Oracle 52
V.2.1 H tr XML c a Oracle 52
V.2.2 Các tính n $ ng XML chính c a Oracle 52
V.3 Các gi i pháp CSDL XML c a Microsoft 53
V.3.1 H tr XML trong SQL Server 53
V.3.2 ng d ng u cu i v i XML c a Mocrosoft 54
V.4 Các gi i pháp CSDL c a s d ng ph n m m ngu n m 55
V.4.1 MySQL 55
V.4.2 PostGreSQL 56
V.4.3 BekerleyDB 56
V.5 Công c thu th p d li u và qu n lý bi u m u 57
Ph n VI CÁC THÁCH TH C TRONG T NG LAI 58
VI.1 Các thách th c v qu n lý d li u trong t ng lai 58
VI.2 Các công c liên quan n CSDL 62
VI.2.1 Tình báo doanh nghi p 62
VI.2.2 Kho d li u và h tr ra quy t nh 62
S phát tri n mang tính cách m ng c a CSDL 64
Ph n VII CÁC NGHIÊN C U XU T 65
VII.1 xu t h ng thúc y phát tri n ngu n l c thông tin 65
Trang 5VII.2 xu t ph ng th c tích h p d li u 67
VII.2.1 Công ngh n n t ng 67
VII.2.2 Ki n trúc tích h p d li u 68
VII.2.3 C ch tích h p d li u 68
VII.2.4 Các s n ph # m n n 69
VII.2.5 V n v t ! ch c ph c v cho vi c trao ! i và tích h p thông tin 70
VII.3 xu t gi i pháp khai thác CSDL trong môi tr ng Internet 71
VII.3.1 Mô hình k t h p portal và CSDL 71
VII.3.2 D ch v web – kh n $ ng khai thác d ch v web nâng cao 71
VII.4 xu t v xây d ng các CSDL qu c gia 73
VII.4.1 Tính qu c gia và chuyên ngành c a CSDL qu c gia 73
VII.4.2 xu t v quy ho ch các CSDL qu c gia 75
VII.4.3 Y u t tiên quy t i v i vi c xây d ng các CSDL qu c gia 78
VII.4.4 Tính kh thi i v i thi t k h th ng CSDL qu c gia 79
VII.4.5 xu t mô hình ki n trúc c a các h th ng CSDL qu c gia 79
VII.4.6 Các mô hình trao ! i thông tin khách-ch cho CSDL qu c gia 81
VII.5 xu t !nh h ng ti n hành các d án phát tri n h th ng thông tin 82
VII.5.1 Chu # n b d li u 82
VII.5.2 Xây d ng các CSDL XML 84
VII.5.3 L a ch % n s n ph # m CSDL XML 85
VII.6 Các tiêu chí ánh giá m t CSDL XML 88
VII.7 xu t các h ng ng d ng CSDL m i Vi t nam 89
Trang 66
Danh sách các hình v"
Hình 1: Các thành ph n c a m t h th ng thông tin 14
Hình 2: Vai trò c a XML trong trao ! i thông tin t i môi tr ng SOA 36
Hình 3: Ki n trúc c a CSDL XML 41
Hình 4: M t giao th c FIXML 44
Hình 5: Mô hình các d ch v công v i ng d ng c a XML 46
Hình 6: Công ngh pureXML 50
Hình 7: Ph ng th c truy nh p d li u 61
Hình 8: Xu h ng phát tri n c a siêu d li u 61
Hình 9: Mô hình tích h p d li u 68
Hình 10: Mô hình c ch tích h p d li u 69
Hình 11: D ch v Web và CSDL 73
Hình 12: Ki n trúc logic CSDL qu c gia 80
Danh sách các b ng B ng 1: Ti n trình phát tri n c a SQL 22
B ng 2: Các t n t i trong phát tri n và ng d ng CSDL t i Vi t nam 30
B ng 3: Cú pháp c a XML 32
B ng 4: DTD c a danh sách ng i 38
B ng 5: M t s bi u th c XPath d ng không vi t t & t 39
B ng 6: Mã XQuery tìm danh sách các di ' n viên duy nh t trong v di ' n Hamlet 40
B ng 7: Kích c ( các CSDL 59
B ng 8: Ph n m m trung gian cho XML 85
B ng 9: Ph n m m so n th o và phát tri n XML 86
B ng 10: S n ph #m CSDL cho phép XML i n hình 86
B ng 11: S n ph #m CSDL XML t nhiên i n hình 87
B ng 12: Máy ch XML 87
B ng 13: Các ph n m m Wrapper 88
B ng 14: H qu n tr n i dung 88
Trang 7M t s thu t ng
Schema l c
SGML Standard Generalized Markup Language
HTML Hyper text markup language
Trang 8L I GI I THI U
Trong vi c ng d ng CNTT vào phát tri n kinh t xã h i, ngành qu n lý thông tin
có m t vai trò r t quan tr ng Quan ni m coi thông tin nh nh ng tài s n c a m t
c quan, doanh nghi p, th m chí c a m t t n c c ch p nh n ngày càng
r ng rãi b i không ch nh ng nhà công ngh mà còn c nh ng nhà qu n lý c a các t ch c này
Hi n nay t n c ta ang h ng n phát tri n m t xã h i thông tin v i m t n n kinh t tri th c trong ó thông tin và tri th c là ng l c chính thúc y n n kinh t thông qua vi c giúp t ng n ng su t lao ng, phát tri n th tr ng, t o các
s n ph m m i có giá tr gia t ng cao ph c v cho m c tiêu này, phát tri n và
ng d ng CNTT, trong ó có ng d ng công ngh CSDL và các h th!ng thông tin, m t cách hi u qu là m t công tác h t s c quan tr ng
có th ng d ng CNTT m t cách hi u qu nh"m áp ng c nh ng yêu c#u
n y sinh trong m t môi tr ng nghi p v , kinh doanh v i nhi u bi n i, m t y u t! quan tr ng là c#n n m b t và s$ d ng các công ngh tiên ti n, tránh gây lãng phí, t ng hi u qu #u t vào CNTT Nghiên c u các nh h ng công ngh tìm các gi i pháp phù h p ã tr thành yêu c#u b t bu c m t t ch c t ng kh
n ng c nh tranh và phát tri n b n v ng
S ra i phát tri n và th!ng tr c a Internet trong vi c trao i, chuy n t i thông tin s% làm thay i c c di n c a ngành máy tính c&ng nh ph ng th c ng d ng CNTT T' cu!i nh ng n m 90 tr l i ây, ngành công nghi p ph#n mêm ang
t p trung vào chi n l c phát tri n các d ch v XML và d ch v Web Các hãng
l n trên th gi i ã n( l c xây d ng các tiêu chu n liên quan n ngôn n này và
ng d ng chúng trong các s n ph m c a mình H#u h t các ph#n m m quan tr ng
u s$ d ng nh d ng XML trong các s n ph m c a mình Internet cung c p c
h i giúp ph#n m m tr nên m nh m% h n b"ng cách k t h p m t mô hình d ch
v có kh n ng làm n gi n hoá công vi c nh ng l i nâng cao hi u qu cho các
b ph n CNTT N n t ng r ng rãi và phong phú c a Internet s% gi i phóng m t
"làn sóng d ch v " v i các ng d ng cho hàng tri u ng i s$ d ng khai thác v i
Trang 9vi c các hãng l n xây d ng chi n l c c a mình xoay quanh các d ch v Internet
qu ngu n l c thông tin trong vi c qu n lý nhà n c và phát tri n kinh t K t qu
c a tài ngoài vi c trình bày các công ngh CSDL và ph ng pháp qu n lý thông tin hi n i còn t p trung vào các bi n pháp, ph ng th c khai thác, s$ d ng d
li u trên m ng, c ch tích h p d li u, các thành ph#n CSDL qu!c gia,… thúc
y s phát tri n ngu n l c thông tin c&ng nh nâng cao hi u qu s$ d ng ngu n
l c thông tin trong phát tri n kinh t
Tài li u g m 7 ph#n chính và m t s! n i dung liên quan Ph#n m t gi i thi u chung v thông tin và vai trò qu n lý thông tin Ph#n hai trình bày t ng quan v công ngh CSDL Ph#n ba c p n hi n tr ng nghiên c u và ng d ng CSDL Ph#n b!n nói n vai trò c a ngôn ng ánh d u m r ng XML trong vi c phát tri n CSDL và trong vi c tich h p, trao i thông tin trên Internet Ph#n n m trình bày v các gi i pháp công ngh CSDL c a các hãng l n nh IBM, Oracle, Microsoft,…Ph#n sáu nói v h ng phát tri n c a công ngh qu n lý d li u
a ra gi i pháp !i phó v i các nhu c#u thách th c t' cu c s!ng Ph#n b y t p trung a ra các xu t cho các v n mang tính thi t th c nh qu n lý thông tin, các h ng ng d ng m i c a CSDL, c ch tích h p d li u t' các ngu n khác nhau, các thành ph#n khái ni m c a h th!ng CSDL qu!c gia, các tiêu chí ánh giá CSDL,…
ây là m t tài nghiên c u liên quan n các ng d ng CNTT m t ph m vi
r ng Trên c s các tài li u k) thu t s u t#m c, nhóm tài ã ti n hành nghiên c u, phân tích và h th!ng hóa d i quan i m ph c v công tác qu n lý nhà n c và thúc y ng d ng CNTT V i m t s! thu t ng m i ch a có t'
t ng ng trong ti ng Vi t, nhóm tài xin c s$ d ng các thu t ng g!c
Trong tài li u này ây, thu t ng “d li u” th ng c dùng ch nh ng tài
Trang 1010
li u có c u trúc, nh các b ng bi u, các b s! li u, trong khi thu t ng “thông tin” bao g m c d li u theo ngh a trên và nh ng tài li u không có c u trúc nh các báo cáo, công v n
Nhóm tài xin chân thành c m n m i ý ki n óng góp xây d ng cho n i dung
c a tài li u M i ý ki n xin c g$i v
a ch e-mail: dinhkha@itpromotion.gov.vn Xin chân thành c m n
Trang 11Ph n I THÔNG TIN VÀ QU N LÝ THÔNG TIN
I.1 Ngu!n l c thông tin
Theo cách hi u chung, ngu n l c thông tin c a m t t ch c bao g m kh!i l ng d
li u, thông tin, tri th c và công c x$ lý thông tin có th s$ d ng trong các quá trình h( tr ra quy t nh ph c v m c ích ho t ng c a t ch c ó Ngu n l c thông tin c a m t xã h i là kh n ng t o l p, thu th p, t ch c, x$ lý, và qu n lý thông tin có th s$ d ng nh ng thông tin này cho m c ích mang n th nh
v ng cho xã h i ó C&ng nh các ngu n tài nguyên khác, ngu n l c thông tin không hoàn toàn là tài nguyên thiên nhiên có s*n Thông tin c coi nh tài s n
và s c#n thi t qu n lý thông tin nh nh ng ngu n tài nguyên khác nh tài chính, nhân l c,… c ch p nh n ngày càng r ng rãi b i không ch nh ng nhà công ngh
mà còn c nh ng nhà qu n lý
t o ra ngu n l c thông tin cho xã h i, c#n ph i xây d ng các c ch thu th p thông tin và nghiên c u ph ng pháp s$ d ng hi u qu nó Thông tin cho t'ng !i
t ng, l nh v c c th c th hi n d ng d li u Do ó mu!n phát tri n ngu n
l c thông tin c#n nghiên c u các công ngh qu n lý và x$ lý d li u, các công
c truy n t i thông tin và ph ng pháp trích xu t tri th c t' d li u
I.2 T m quan tr"ng c a qu#n lý thông tin
Thông tin c t o ra b i media, th i n t$, n i dung web, tài li u, giao d ch, báo cáo và c s$ d ng trong m i l nh v c nh trong qu n lý nhà n c, nghiên c u khoa h c, s n xu t kinh doanh, cu c s!ng hàng ngày, vui ch i gi i trí, Theo th!ng kê, 30% s! th i gian có c con ng i dùng vào vi c tìm ki m thông tin
n n m 2010, l ng thông tin c a th gi i (information base) s% t ng g p ôi sau
11 gi , i u này s% d+n n s quá t i và lãnh phí th i gian khi ti m ki m thông tin: ng i s$ d ng s% m t nhi u công s c và ch u m t s c ép x$ lý kh!i l ng thông tin kh ng l c t o ra nh"m tìm c thông tin c#n thi t
Trang 1212
Vì nh ng lý do trên, vi c qu n lý thông tin có t#m quan tr ng ,c bi t M c ích
c a vi c qu n lý thông tin là cung c p các thông tin chính xác vào nh ng th i i m
c yêu c#u M c ích c a x$ lý thông tin là tìm cách t ng giá tr c a thông tin
t ng ch t l ng c a các ho t ng nghi p v , kinh doanh Hai m,t này c a công
tác qu n lý thông tin có m!i liên k t và m t s! h c gi g p chung vào khái ni m tri
th c Theo Samuel Johson, 1709-1784, tri th c có hai d ng: m t c th hi n b"ng vi c bi u di n s liên k t gi a các !i t ng trong cu c s!ng b"ng nh ng quy
lu t ph c t p Các th hi n th hai c a tri th c là cách th c giúp có th tìm ki m thông tin liên quan n các s vi c, !i t ng khi c#n thi t
I.3 N i dung qu#n lý ngu!n l c thông tin
M c ích c b n nh t c a vi c qu n lý thông tin là có kh n ng cung c p thông tin chính xác cho ng i c#n t i th i i m h p lý Qu n lý ngu n l c thông tin bao
g m các i m sau:
1 Qu n lý ch t l ng thông tin thông qua vi c qu n lý ch t l ng c a các
nh ngh a c a d li u v i các quy lu t nghi p v , s nh t quán c a d
li u;
2 Qu n lý ki n trúc thông tin tránh trùng l,p d li u;
3 Qu n lý ch t l ng c a n i dung d li u m b o s chính xác, s th-a mãn yêu c#u s$ d ng;
4 Qu n lý quy t c hình th c trình bày d li u, thông tin bao g m tính tr c quan, s n nh
5 Qu n lý các công ngh l u tr , x$ lý thông tin
6 Qu n lý các chu n d li u, chu n thông tin và c ch trao i thông tin
gi a các h th!ng thông tin
7 Qu n lý các cách th c khai thác thông tin
I.4 H th$ng thông tin
I.4.1 Các khái ni m c b n
Trang 13H th!ng thông tin công c c a nhà qu n lý ki m soát ho t ng nghi p v c a
m t t ch c Ho t ng c a m t t ch c nào c&ng c#n ph i d a trên nh ng thông tin (d ki n) v ngu n l c và ho t ng c a t ch c Các ho t ng này c i u jafnh b i ba h th!ng: H th!ng i u khi n qu n lý, h th!ng thông tin, h th!ng
th c hi n Nh th , h th!ng thông tin là thành t! không th thi u c a m t t ch c,
th c hi n s liên h gi a hai h th!ng còn l i, b o m cho t ch c ho t ng t
ho t ng c a h th!ng thông tin có th c th c hi n trên các công ngh th công
nh gi y, bút v i b x$ lý c b n là b óc con ng i Ví d , m t quy n s tay có danh sách các v t d ng c#n quan tâm, theo nh ngh a trên, là m t h th!ng thông tin Ngày nay, ph bi n h n, h th!ng thông tin c th c hi n b"ng các công c
hi n i c a công ngh thông tin và c g i b"ng thu t ng - “h th!ng thông tin
d a trên CNTT” Do kh!i l ng d li u kh ng l c#n qu n lý, các h th!ng thông tin hi n nay ch ho t ng th c s hi u qu khi d a trên nhi u tính ch t ,c thù c a công ngh ,c bi t này C&ng có nh ng ng d ng máy tính không c coi là h th!ng thông tin, ví d nh các h th!ng nhúng (embedded systems)
V m,t k) thu t, h th!ng thông tin là m t t p h p c a nhi u thành ph#n liên h
v i nhau có ch c n ng thu th p, qu n lý, x$ lý, l u tr và phân ph!i thông tin h(
tr cho vi c ra quy t nh, ph!i h p, i u hành và ,c bi t là ph c v cho quá trình
ch o, t ch c các ho t ng c a m t t ch c M t h th!ng thông tin có các ph#n
c b n nh sau: #u vào, #u ra, x$ lý, l u tr (xem Hình 1) Trong l nh v c x$ lý
thông tin, m t b x lý d li u là m t h th!ng x$ lý các d li u c thu th p và
l u tr d ng mà h th!ng này hi u c hay c t o ra hay l u tr m t b
ph n khác c a h th!ng x$ lý d li u chính Thông th ng b x$ lý d li u này có
ch c n ng c nh, th c hi n m t s! b c chuy n i d li u t' m t d ng sang
d ng khác hay d ng cu!i cùng s*n sàng cho các b ph n khác s$ d ng Các b c này bao g m mã/c i mã, nh khuôn d ng, d ch, chuy n i,…
Trang 1414
Hình 1: Các thành ph n c a m t h th ng thông tin
I.4.2 ph c t p c a h th ng thông tin trong t ng lai
H th!ng thông tin ngày càng t ng v ph c t p: l ng d li u, s! ng i s$ d ng,
ti n trình, và các giao d ch,… không ng'ng t ng lên S ph thu c gi a các kh!i trong m t h th!ng c&ng t ng lên Ph m vi c a các thi t b l u tr , giao di n cho
ng i s$ d ng, và các thi t b tính toán c&ng t ng làm t ng s a t p m c v t
lý c a h th!ng Vi c s$ d ng nhi u ngu n thông tin gi i quy t m t v n d+n
n nhu c#u có m t ph ng th c truy c p ng nh t n các d li u a t p Vi c s$
d ng các thi t b tính toán khác ch ng lo i c&ng òi h-i m t s th!ng nh t v n n
t ng tính toán
I.4.3 Gi i pháp cho h th ng thông tin trong t ng lai
Gi i pháp cho vi c xây d ng ph ng th c truy c p th!ng nh t n các ngu n tài nguyên c xây d ng d a trên siêu d li u T ng lai c a các h th!ng thông tin
c&ng c d a trên y u t! này
Siêu d li u là thành ph#n quan tr ng nh t c a m t h th!ng thông tin t ng lai Vai trò c a siêu d li u c t ng lên b t ng khi các nhà nghiên c u nh n th y siêu d li u làm cho m ng thông tin toàn c#u World Wide Web tr nên s$ d ng
c m t cách hi u qu Siêu d li u góp ph#n làm cho vi c truy v n m t h th!ng thông tin c t!t h n, áp ng c chính xác h n yêu c#u c a ng i s$ d ng
Nhap lieu
Lu tru du lieju
He hong hong in
Bo xu ly Xuat
du lieu
Trang 15Siêu d li u c&ng làm hi u rõ h n c u trúc c a thông tin trong m t h th!ng thông tin, ch t l ng c a thông tin ó và tính phù h p c a nó Siêu d li u cho phép m
r ng kh n ng truy v n cho nhi u h th!ng khác nhau, trích xu t ki n th c t' thông tin và d li u Siêu d li u c s$ d ng v i m t s! m c ích sau:
Mô t d li u v i m c ích trao i d li u
Mô t d li u v i m c ích xây d ng s truy nh p th!ng nh t
Mô t d li u v i m c ích t!i u hóa truy v n
Mô t d li u v i m c ích tích h p câu tr l i và gi i thích
Mô t d li u v i m c ích x$ lý phân tích hay di n gi i, th hi n
S phát tri n c a các h th!ng thông tin và vai trò c a siêu d li u s% c c p chi ti t h n trong ph#n VI.1 trang 58
Trang 16Ph n II T NG QUAN V C S D LI U
Thành ph#n l u tr và qu n lý d li u là m t b ph#n quan tr ng trong m t h th!ng thông tin Thông th ng, thành ph#n này c xây d ng d a trên công ngh
C s d li u nh các kh n ng cho phép l u tr , thay i, và truy v n m t kh!i
l ng l n d li u theo m t cách hi u qu N i dung c a tài li u t' ph#n này s%
c t p trung vào gi i thi u và phân tích các gi i pháp c a công ngh CSDL
II.1 Khái ni m v CSDL
Khái ni m CSDL c xu t phát t' trong ngành công nghi p máy tính và c s$ d ng r ng rãi S s$ d ng s m nh t c a thu t ng CSDL c bi t n vào tháng 6 n m 1963 khi Công ty phát tri n h th!ng (System Development
Corporation) tài tr m t h i th o có tên Phát tri n và Qu n lý m t c s cho d
li u trên máy tính (Development and Management of a Computer-centered Data
Base) Database tr thành m t t' chung thông d ng t i châu Âu và #u nh ng
n m 1970 và n cu!i th p k 70, thu t ng này c s$ d ng trên ph ng ti n thông tin i chúng c a M)
M t trong các nh ngh a c ch p nh n r ng là CSDL là m t t p h p các b n ghi
c l u trong máy tính theo m t cách có h th!ng và c tìm ki m nhanh chóng
b i m t ch ng trình máy tính D li u c l y ra tr l i cho các câu h-i c
g i là thông tin và c dùng ra quy t nh Ch ng trình máy tính c s$
d ng qu n lý và truy v n m t CSDL c g i là h qu n tr CSDL Các thu c tính, tính n ng và thi t k c a m t h th!ng CSDL c nghiên c u b i ngành khoa h c g i là Khoa h c Thông tin (Information science) M t t p h p d li u
c g i là m t CSDL theo úng ngh a n u c qu n lý m b o ch t l ng và tính th!ng nh t, có th c s$ d ng b i m t nhóm ng i dùng, và có m t ngôn
ng truy v n
Trang 17b ng có các c t c nh ngh a d a trên các thu t ng toán h c Mô hình này th
hi n các m!i quan h b"ng vi c s$ d ng các giá tr chung cho các c t nhi u h n
m t b ng Các mô hình d li u khác, th ng c s$ d ng trong nh ng n m 60-70
là mô hình phân c p, mô hình m ng l i trong ó mô t chính xác các quan h gi a các !i t ng trong m t CSDL Chi ti t các mô hình d li u c trình bày t i ph#n II.1.3 trang 18
II.1.2 Quá trình phát tri n c a các h qu n tr! CSDL
Các h qu n tr CSDL thông th ng c phân lo i theo mô hình d li u c h(
tr : mô hình quan h , mô hình h ng !i t ng,…Mô hình d li u c a m t CSDL s% xác nh các ngôn ng truy v n cho CSDL ó Tuy nhiên công vi c chính trong
vi c xây d ng m t h qu n tr CSDL l i không ch ph thu c vào mô hình d li u
mà còn liên quan n các y u t! nh hi u su t, x$ lý song song, th!ng nh t d li u,
kh n ng ph c h i t' các h-ng hóc ph#n c ng Các tính n ng này khác nhau !i v i các s n ph m CSDL c a các nhà cung c p khác nhau
H qu n tr CSDL #u tiên c phát tri n trong nh ng n m 1960 v i ý t ng c a
ng i i #u trong l nh v c này là Bachman là s$ d ng các thi t bin cho phép truy
nh p tr c ti p n d li u n th i i m ó vi c truy c p còn thông qua phi u c l( và b ng t' T' mô hình d li u chính lúc ó là mô hình m ng l i và mô hình phân c p c dùng trong m t h th!ng phát tri n b i North American Rockwell, sau ó c IBM s$ d ng nh m t thành ph#n trong s n ph m IMS
Trang 1818
Mô hình quan h c xu t vào n m 1970 kh c ph c i m y u c a các mô hình
ã xu t là s l+n l n gi a mô t tr'u t ng c a c u trúc thông tin và mô t v t lý
c a các c ch truy c p Trong m t th i gian dài, mô hình quan h ch c các nhà nghiên c u lý thuy t quan tâm Trong khi CODASYL và IMS c hi u là các gi i pháp th c ti n d a trên các công ngh có h i ó, mô hình d a trên lu n i m là ph#n c ng và ph#n m m c#n c ti n hành song song Trong s! các phát tri n #u tiên c#n k n Ingres c phát tri n t i Berkeley, và d án System R t i IBM
T t c các d án này ch d'ng s n ph m th$ nghi m, c m t n m 1976 Nh ng
s n ph m th ng m i #u tiên là Oracle và DB2 xu t hi n vào kho ng 1980
Nh ng s n ph m CSDL thành công trên máy tính nh- #u tiên là dBASE cho h
i u hành PC-DOS/MS-DOS
Trong nh ng n m 1980, các nghiên c u t p trung vào các h th!ng CSDL phân tán, tuy nhiên có ít h nh h ng n th tr ng M t ý t ng lý thuy t khác là mô hình
d li u ch c n ng (Functional Data Model), nh ng ngoài các ng d ng ,c bi t
nh v gien, sinh h c phân t$,…ngoài ra ít c chú ý
Trong nh ng n m 90, c ng ng chuy n sang CSDL h ng !i t ng ã có m t s! thành công trong l nh v c này vì x$ lý c các d li u có c u trúc ph c t p h n
d li u quan h , ví d nh các CSDL không gian, các d li u công ngh , và d li u
a ph ng ti n M t s! ý t ng ã u c ch p nh n b i các nhà cung c p s n ph m quan h h phát tri n các tính n ng m i g n vào các s n ph m có s*n c a h Vào nh ng n m 2000, m t l nh v c m i xu t hi n là CSDL d ng XML C&ng nh các CSDL !i t ng, sáng ch này ã d+n s ra i c a nhi u công ty m i và c&ng c tích h p vào các s n ph m quan h CSDL XML nh"m lo i b- s tách
Trang 19m c nào ó i u ch nh c u hình v t lý nh"m có th tác ng vào hi u n ng
c a h th!ng Ví d , trong mô hình d li u quan h khi c tri n khai s% cho phép
t o ra các index có th truy nh p m t cách nhanh chóng n các dòng c a m t
b ng khi mà giá tr c a m t s! c t ã c bi t D i ây là s l c các mô hình
th p phân Mô hình này là c s c a b ng tính i n t$
Mô hình phân c&p
Mô hình phân c p c t ch c d i d ng m t c u trúc gi!ng hình cây, có ngh a
nh các link h ng lên trên duy nh t (single upward link) t i m(i b n ghi mô t
s l ng nhau (nesting), và m t tr ng gi th t c a các b n ghi trong cùng m t
m c Các ki n tr c phân c p ã c dùng r ng rãi trong các h qu n tr CSDL máy tính l n tr c kia nh Information Management System (IMS) c a IBM Ki n trúc này c&ng c dùng mô t ki n trúc cúa các tài li u XML s% c c p t i ph#n IV.1 trang 31 C u trúc này cho phép quan h 1:N gi a hai ki u d li u và r t
hi u qu khi mô t m!i quan h trong cu c s!ng th c nh hóa n, b ng n i dung, hay b t c thông tin l ng nhau và có th t Tuy nhiên c u trúc phân c p không không hi u qu trong m t s! ch c n ng c a CSDL khi ng d+n #y (full path) không c g n n i m(i b n ghi
Mô hình m'ng l (i
Mô hình m ng t ch c d li u s$ d ng hai ki n trúc n n t ng là b n ghi và t p h p
B n ghi ch a các tr ng, có th c t ch c theo d ng phân c p T p h p nh ngh a các m!i quan h gi a các b n ghi: ch trì và thành viên M t b n ghi có th là
ch trì c a b t c t p h p nào, và là thành viên c a nhi u t p h p
Các thao tác trong mô hình m ng l i nh sau: m t ch ng trình duy trì v trí hi n
t i và l t t' m t b n ghi sang b n ghi khác theo m!i quan h mà các b n ghi tham gia Các b n ghi c&ng có th c tìm ki m s$ d ng các các khóa b sung Các
Trang 2020
CSDL m ng l i xây d ng các m!i quan h b"ng các con tr- th0ng n v trí v t lý trên a c a các b n ghi do ó có hi u n ng truy nh p t!t nh ng v i giá v load CSDL và chi phí t ch c l i khi c#n thay i
Mô hình quan h
Mô hình quan h làm cho các h qu n tr c s d li u it ph thu c vào các ng
d ng c th Mô hình này c d a nh ngh a d a trên logic predicate và lý thuy t
t p h p Các s n ph m CSDL quan h th c hi n các mô hình ch g#n gi!ng mô hình toán h c c a Codd Các c u trúc d li u là các b ng ch không ph i các quan
h trong ó các b ng có th ch a các dòng gi!ng nhau M t CSDL quan h có th
ch a nhi u b ng M!i quan h gi a các b ng không c nh ngh a rõ mà qua các
khóa c dùng kh p các dòng gi a các b ng khác nhau M t khóa g m m t hay nhi u c t trong m t b ng mà các giá tr c a nó kh p v i các c t t ng ng c a các b ng khác M t c t hay m t nhóm các c t có th tr thành m t khóa và không c#n nh ngh a tr c các khóa…M t khóa có th dùng xác nh m t dòng m t cách duy nh t g i là khóa duy nh t M t trong các khóa duy nh t c tham kh o
nh là khóa chính
Mô hình nhi u chi u
Mô hình nhi u chi u là m t ph#n phát tri n c a mô hình quan h th hi n các d
li u trong m t khu d li u theo cách mà d li u có th d dàng c t ng k t l i
th c hi n các câu truy v n d ng x$ lý tr c tuy n OLAP Trong các câu truy v n
mô hình nhi u chi u, m t CSDL c bao g m m t b ng l n duy nh t các s ki n
c mô t theo các chi u M t chi u cung c p ng ngh a c a m t s ki n, ví d
nh ai phù h p, khi nào và âu s ki n x y ra) và c s$ d ng truy v n m t nhóm các s ki n có quan h
Trong m t câu truy v n OLAP, các chi u c ch n và các y u t! c nhóm l i
t o thành m t t ng k t Ngoài m t b ng các s ki n còn có các b ng xung quanh
ch a các chi u
Mô hình CSDL $i t )ng
Công ngh h ng !i t ng (object-oriented) ã c ng d ng vào công ngh CSDL t o thành m t mô hình l p trình g i là các CSDL !i t ng (object databases) Các CSDL này m b o vi c CSDL s$ d ng cùng m t ki u h th!ng
Trang 21nh các ch ng trình ng d ng i u này giúp làm gi m ph#n công vi c ph i chuy n i thông tin gi a các d ng d li u th hi n trong CSDL và trong các
ch ng trình ng d ng
CSDL !i t ng không c ng d ng r ng rãi do thi u các chu n và không bao
gi c xây d ng t!t m b o s t ng tác gi a các s n ph m Tuy nhiên CSDL !i t ng ã c s$ d ng thành công trong nhi u ng d ng ví d nh các
CSDL v sinh h c hay v gia công (engineering database) Ý t ng v h ng i
t ng ã nh h ng n các s n ph m c a các nhà cung c p theo h ng quan h và
n ngôn ng SQL
II.1.4 Ngôn ng truy v n SQL
SQL (Structured Query Language) là m t lo i ngôn ng máy tính r t ph bi n
t o, s$a, và l y d li u t' m t h qu n tr c s d li u quan h Ngôn ng này phát tri n t' m c ích ban #u là ph c v các h qu n tr c s d li u !i t ng-quan h T' bài báo “A Relational Model of Data for Large Share Data Banks” c a
ti n s Edgar F Codd xu t b n tháng 6 n m 1970 trong t p chí Communications of the ACM c a Hi p h i ACM, m t mô hình ã c ch p nh n r ng rãi là mô hình tiêu chu n dùng cho h th!ng qu n lý c s d li u quan h
Trong h th!ng c s d li u "H th!ng R" c a IBM, Ngôn ng truy v n ti ng Anh
có c u trúc (Structured English Query Language, vi t t t là "SEQUEL", sau thành
SQL) c thi t k b i Donald D Chamberlin và Raymond F Boyce qu n lý
và truy l c d li u c l u tr trong h th!ng
N m 1978, vi c th$ nghi m ph ng pháp này c kh i #u t i m t c s th$ nghi m c a khách hàng Cu c th$ nghi m ã ch ng minh c s có ích và tính
th c ti n c a h th!ng và ã ch ng t- s thành công c a IBM D a vào k t qu ó, IBM b t #u phát tri n các s n ph m th ng m i b xung thêm SQL d a trên nguyên m+u H th!ng R bao g m System/38 (H th!ng/38) c th ng m i hóa tháng 8 n m 1979, SQL/DS ( c gi i thi u vào n m 1981) và DB2 (n m 1983) Cùng th i i m ó Relational Software, Inc (bây gi là Oracle Corporation) ã
nh n th y ti m n ng c a nh ng khái ni m c Chamberlin and Boyce a ra và
ã phát tri n phiên b n H qu n tr c s d li u quan h riêng c a h cho H i quân
Trang 2222
M), CIA và các t ch c khác Vào mùa hè n m 1979, Relational Software, Inc
gi i thi u Oracle V2, phiên b n th ng m i #u tiên h( tr SQL
SQL c th'a nh n là tiêu chu n c a Vi n chu n c a M) (American National Standards Institute) vào n m 1986 và ISO (International Organization for Standardization) n m 1987 Tiêu chu n SQL ã tr i qua m t s! phiên b n:
Trang 23hành ng v t lý nào ph i th c hi n l y ra k t qu ó H th!ng c s d li u s$
d ng b t!i u hóa câu truy v n s% d ch t' câu truy v n sang k ho ch truy v n t!i
u Nh ng t' khóa liên quan t i SELECT bao g m: FROM, WHERE, GROUP
BY, ORDER BY
S*a +i d li u
Ngôn ng s$a i d li u có nh ng thành ph#n tiêu chu n dùng thêm, c p nh t
và xóa d li u nh : INSERT, UPDATE, MERGE, DELETE, TRUNCATE
Giao d,ch d li u
Giao d ch, n u có, dùng b t #u và k t thúc các thao tác s$a i d li u Các
l nh thu c lo i này g m: BEGIN WORK, COMMIT, ROLLBACK
,nh ngh-a d li u
Nhóm các t' khóa th hai là ngôn ng nh ngh a d li u (Data Definition Language - DDL) DDL cho phép ng i s$ d ng nh ngh a các b ng d li u Ph#n
l n các CSDL SQL th ng m i có thành ph#n m r ng b n quy n trong các DDL
c a h ki m soát các thành ph#n phi chu n trong các h th!ng CSDL
Các thành ph#n chính c a DDL là các l nh CREATE và DROP CREATE t o m t
!i t ng, ví d m t b ng, trong m t CSDL DROP làm cho m t !i t ng t n t i trong m t CSDL b xóa
Ki.m soát
Nhóm các t' khóa th ba c a SQL là ngôn ng ki m soát d li u (Data Control
Language hay DCL) DCL ki m soát tính th m quy n trong truy nh p hay thay i
d li u trong m t CSDL Hai t' khóa chính là GRANT — cho phép m t hay m t nhóm ng i s$ d ng th c hi n m t nhóm các thao tác trên m t !i t ng d li u REVOKE — Lo i b- hay h n ch kh n ng c a m t hay m t nhóm ng i s$ d ng
th c hi n m t nhóm các thao tác
Ngoài ra, m t s! máy ch SQL còn cho phép ng i s$ d ng nh ngh a các hàm
ng i dùng (User Defined Functions)
Trang 2424
II.2 Thi/t k/ c a CSDL
II.2.1 ánh ch$ s
T t c các lo i CSDL u s$ d ng k) thu t ánh ch s! (indexing) t ng t!c tìm ki m K) thu t này ã ti n r t nhanh k t' khi c phát minh trong nh ng
n m 60-70 Lo i index thông d ng nh t là m t danh sách c s p x p c a m t c t
c th nào ó cùng v i các con tr- tr- t i các dòng liên quan n giá tr ó M t index cho phép xác nh v trí c a m t t p h p các dòng c a b ng phù h p v i m t
tiêu chu n nào ó m t cách nhanh chóng Các lo i ánh ch s! B-trees, R-trees, hashes, và linked lists là nh ng k) thu t ánh ch s! thông d ng
Các h qu n tr CSDL quan h có u i m là các index có th c t o ra hay b- i
ma không làm thay i các ng d ng ã có s$ d ng chúng l a ch n chi n l c
th c hi n truy v n c coi là ch y nhanh nh t, h CSDL dùng nhi u thu t toán khác nhau c l ng và t o ra m t k ho ch th c hi n câu truy v n h p lý nh t
II.2.2 Các giao d!ch và x lý song song
Ngoài mô hình CSDL, các CSDL th ng m i ã s$ d ng mô hình giao d ch CSDL
m b o là các giao d ch c s d li u c th c hi n m t cách an toàn (t c là không b m t hay sai l ch d li u) nh"m t c tính nh t quán c a d li u Các ph#n m m CSDL tuân theo theo lu t ACID c a giao d ch là:
- Tính nguyên t$ (Atomicity) - Ho,c là toàn b ho,c là không thao tác nào c hoàn thành (H y thao tác)
- Tính nh t quán (Consistency) - T t c các giao d ch ph i chuy n c s d li u
v tr ng thái nh t quán
- Tính tách bi t (Isolation) - Các giao d ch không c can thi p l+n nhau
- Tính b n v ng (Durability) - Các giao d ch thành công ph i t n t i sau các s c! k) thu t (Làm l i thao tác)
Trong th c t , nhi u h qu n tr CSDL cho phép ph#n l n các lu t này c th c
hi n m t cách l a ch n t c tóc th c hi n cao
Trang 25II.2.3 C ch ki m soát truy c p ng th i
Ki m soát truy nh p n th i (Concurrency control) là ph ng pháp c s$ d ng
m b o các giao d ch th c hi n theo cách th an toàn theo lu t ACID C ch
ki m soát truy c p ng th i có các lo i chính sau:
- Lo i bi quan - Vi c th c thi ng th i các giao d ch c ng b hóa tr c trong chu trình th c hi n c a chúng
- Lo i l c quan - Hoãn vi c ng b hóa các giao d ch cho n khi chúng th c
hi n xong
Có m t vài ph ng pháp ki m tra vi c truy c p ng th i, a s! là dùng cách
khóa ki u khóa ch t hai giai o n (Strict 2PL locking)
II.2.4 B n sao
N u m t CSDL có th ghi l i các thao tác c th c hi n trên nó thì có th c
sao b n th i gian th c Sao b n có th c dùng t ng hi u su t và tính s*n sàng c a c h th!ng CSDL Có m t s! khái ni m b n sao nh sau:
- Ch /khách: Các yêu c#u c th c hi n t i master và sao b n slave
- Quorum: K t qu c a l nh yêu c#u Read và Write c th c hi n b"ng vi c truy v n a s! các b n sao
- Nhi u ch (Multimaster): Hai hay nhi u b n sao c ng b hóa qua m t
c ch xác nh giao th c
II.3 Ph'm vi 0ng d1ng c a CSDL
CSDL c s$ d ng trong nhi u ng d ng tr i kh p l nh v c c a ph#n m m máy tính CSDL là ph ng th c c a chu ng l u d li u !i v i cá ng d ng l n, nhi u ng i s$ d ng, khi có s c#n thi t i u ph!i gi a các ng i dùng Th m chí
nh ng ng i dùng cá nhân c&ng c#n CSDL t ch c các thông tin cá nhân nh
th i n t$, ghi chú, tài li u…Ch ng trình k t n!i (driver) ph#n m m CSDL có
h#u nh t t c các dòng CSDL nên các ph#n m m ng d ng có th s$ d ng chung
m t giao di n l p trình ng d ng (API) truy c p thông tin c l u trong m t CSDL Hai driver ph bi n cho API c a CSDL là ODBC và JDBC
Trang 26Ph n III HI N TR NG NGHIÊN C U VÀ NG D NG CSDL
III.1 Ngành công nghi p qu#n lý d li u trên th/ gi(i
Qu n lý và x$ lý thông tin và d li u là là m t l nh v c thu hút s quan tâm, #u t nghiên c u và tri n khai m nh m% các n c tiên ti n v CNTT, nh t là khi ngành công nghi p n i dung ang n i lên nh m t l nh v c kinh doanh có l i nhu n cao Các công ngh liên quan n công ngh d li u (data engineering), tìm ki m thông tin (information retrieval), x$ lý d li u (data procesing), CSDL l i (Grid Database)… c nghiên c u h#u nh m i tr ng i h c l n trên th gi i và
c h( tr b i m t ngành công nghi p kh ng l a các công ngh này vào
ng d ng Các chính ph c a các n c tiên ti n coi vi c phát tri n và n m b t, ng
d ng các công ngh này là công tác s!ng còn trong vi c phát tri n các h t#ng thông tin và ph c v l i ích qu!c gia và phát tri n kinh t
Có m t s! hi p h i c a các nhà nghiên c u và phát tri n các công ngh , ng d ng
qu n lý thông tin và d li u có nh h ng l n trên th gi i N i ti ng nh t là SIGMOD thu c ACM và Data Engineering c a IEEE, c hai u thu c M) nh ng
c công nh n r ng rãi trên toàn th gi i T i m t s! n c tiên ti n khác c&ng t
ch c các phân h i a ph ng c a các hi p h i này i u này ch ng t- t#m nh
h ng c a các t ch c này trong ngành x$ lý d li u trên th gi i Ngoài ra các
n c c&ng có các t ch c qu!c gia riêng v công ngh x$ lý d li u Ví d , t i Nh t
b n có SIGMOD-Japan và T ch c x$ lý thông tin Japan (Japan Information Processing Society)
III.2 Tình hình nghiên c0u, 0ng d1ng CSDL trong n (c
T i Vi t nam, trong m t th i gian dài, t#m quan tr ng c a thông tin không c ánh giá úng m c trong qu n lý nhà n c và phát tri n kinh t , kinh doanh
Trang 27Vi c nghiên c u v CSDL trong m t th i gian dài t p trung vào lý thuy t CSDL
nh nghiên c u v mô hình CSDL dùng các công c toán h c Trong l nh v c ng
d ng, m,c dù có không ít các d án xây d ng các CSDL nh ng l nh v c này ch a
c nghiên c u ánh giá m t cách t ng th , s$ d ng còn m c ch a khai thác h t
t t c các tính n ng c a các công ngh CSDL hi n i
Gi a lý thuy t và ng d ng là m t kho ng cách l n 1 t#m v mô chúng ta ch a có
các chính sách h( tr phát tri n và qu n lý thông tin, t#m quan tr ng c a vi c qu n
lý thông tin ch a c nêu lên hàng #u trong các #u t v CNTT 1 m c k)
thu t, nghiên c u v các công ngh xây d ng các CSDL, m t b c quan tr ng
n m b t t!t các s n ph m CSDL, ã b b- qua
Trong m t s! các d án c p qu!c gia ã và ang c th c hi n, các các h ng m c liên quan n thông tin ch a c #u t t ng x ng d+n n d án không mang
l i hi u qu nh mong i
III.2.1. %ng d ng CSDL trong các án tr c ây
M t trong các ch ng phát tri n CSDL l n nh t t' tr c n nay thu c v án
112 M t trong các n i dung c a án này là vi c phát tri n mô hình xây d ng trung tâm tích h p d li u t i các B , Ngành và a ph ng Tuy nhiên, các trung tâm tích h p d li u ch a c phát tri n theo úng quy mô yêu c#u, ch a liên k t
c v i nhau và ch a xây d ng c mô hình k t n!i c v i trung tâm tích h p
d li u qu!c gia; Hi n nay, có m t s! ý ki n gi m s! trung tâm tích h p d li u và
ch xây d ng m t s! trung tâm d li u qu!c gia dùng chung thông qua k t n!i trên
m ng n th i i m này, v n công ngh quan tr ng nh t là c ch tích h p d
li u nh th nào không c gi i quy t rõ
III.2.2 Tình hình tri n khai các CSDL qu c gia tr c ây
CSDL qu!c gia là là m t thành t! quan tr ng trong vi c xây d ng c ch chia s2 thông tin trong Chính ph i n t$ T i nhi u n c trên th gi i, các CSDL qu!c gia
ã c xây d ng
1 Vi t nam, trong ch ng trình CNTT IT2000, vi c xây d ng h th!ng các c s
d li u qu!c gia ã c ,t n n móng v i yêu c#u các c s d li u qu!c gia c#n
Trang 2828
có kh n ng l u tr và cung c p nhanh chóng, k p th i m i thông tin c#n thi t v tình hình kinh t , v n hoá, xã h i c a t n c,c&ng nh các thông tin liên quan khác, các c quan Nhà n c có c n c xây d ng các quy t nh c a mình Các CSDL qu!c gia sau ã c xu t xây d ng:
1 CSDL qu!c gia v công dân và dân s!
2 CSDL qu!c gia v ngu n tài nguyên t
3 CSDL qu!c gia v lu t và các v n b n pháp quy
4 CSDL qu!c gia v thông tin kinh t xã h i
5 CSDL qu!c gia v thông tin tài chính
6 CSDL qu!c gia v công ch c nhà n c
Trong ch ng trình h p tác v i Canada VCIT, m t s! kh o sát nghiên c u v kh
n ng tri n khai các CSDL qu!c gia ã c ti n hành và m t s! k t qu thu c là
nh ng ánh gía còn s b v nhu c#u s$ d ng, các khó kh n trong vi c tri n khai,
và các y u t! v an ninh, con ng i,…
Các d án CSDL này còn d'ng giai o n nghiên c u kh thí, thâm chí ti n kh thi, còn ch a ti n hành các b c thi t k và tri n khai Trong nh ng n m g#n ây, các báo cáo cho th y m t s! ti n tri n trong vi c tri n khai CSDL dân c (công dân) do B công an là n v ch trì
Các khó kh n chính trong vi c tri n khai các CSDL qu!c gia c t ng k t nh sau:
Kinh phí cho các d án này còn ch a c cung c p #y
Thi u nh ng nhà qu n lý và ho ch nh chi n l c cho các d án àny Thi u kinh nghi m qu n lý các d án lo i này t#m qu!c gia Khó kh n trong k t h p các n v có liên quan
Công ngh xây d ng các CSDL l n còn ch a c hi u th u áo nên
ch a ánh giá h t c các y u t! c#n thi t th c hi n các d án l n t#m c3 này
Trang 29Sau nhi u n m, vi c xây d ng các CSDL qu!c gia v+n d'ng m c nh h ng ho,c n u có tri n khai thì n l2 các b ngành, ch a có s ph!i k t h p gi a các
c quan n v có liên quan Hi n nay, thay vì xây d ng m t h th!ng CSDL qu!c gia, m t s! B ngành ã xây d ng các CSDL chuyên ngành cho mình nh sau v i tình hình tri n khai nh sau:
H th ng c s d li u qu c gia v tài nguyên n c hi n ã c l p ,t và tri n khai b c #u t i B Tài nguyên và Môi tr ng H th!ng là công c cho phép trao i, truy c p d li u, thông tin v tài nguyên n c trong ph m
vi c n c, b o m các nhu c#u khai thác, s$ d ng d li u, thông tin v tài nguyên n c
H th ng thông tin v ng ký h t ch, h kh u và h c s d li u dân c
do U ban dân s!, Gia ình và tr2 em ch trì ph!i h p v i T ng c c Th!ng
kê, B t pháp, B công an và các ngành h u quan khác xây d ng trên c s
c p nh t và ánh giá thông tin c b n thu th p qua t ng i u tra dân s! H
c s d li u này thu th p, x$ lý và cung c p thông tin, d li u v dân c , h(
tr h th!ng qu n lý và ng ký d li u liên quan n dân c c a các B , Ngành có liên quan
H th ng c s d li u qu c gia th ng v kê kinh t - xã h i bao g m các c
s d li u vi mô (g m các thông tin ban #u t' các phi u i u tra, t khai, phi u ng ký, ), các c s d li u v mô (g m các b ng bi u ã qua x$ lý
t ng h p) và các c s d li u v h th!ng các b ng phân lo i, các b ng danh
m c, v h th!ng ch tiêu th!ng kê và ph ng pháp tính V m,t qu n lý, h th!ng c s d li u qu!c gia bao g m các c s d li u b! trí t i T ng C c th!ng kê và b! trí t i các B , ngành theo nguyên t c:
1 D li u do ngành nào thu th p, ngành ó xây d ng c s d li u
2 C s d li u th!ng kê c a ngành th!ng kê và các B , ngành thu c h th!ng c s d li u th!ng kê qu!c gia, c truy c p, khai thác theo
nh ng quy nh c th phù h p v i t'ng !i t ng s$ d ng
C s d li u Qu c gia v lu t pháp ang c lên k ho ch xây d ng, a vào khai thác trên m ng Internet ph c v vi c truy c p, tìm ki m các v n
Trang 3030
b n quy ph m pháp lu t liên quan n ho t ng c a cán b , công ch c t i công s , áp ng nhu c#u c#n gi i quy t công vi c hi u qu cho ng i dân
Hi n t i, CSDL v v n b n pháp quy do B T pháp xây d ng ã c a lên khai thác trên m ng
H th!ng c s d li u cán b , công ch c t'ng b c chuy n sang qu n lý cán b , công ch c b"ng h th!ng tin h c các c quan hành chính nhà n c trung ng và a ph ng ang trong quá trình ti n hành t i B N i v Trong ph#n VII.4 xu t v xây d ng các CSDL qu!c gia s% c p n m t s!
Ch a có m t t ch c c a các nhà phát tri n cônng ngh và ng d ng x$ lý d
li u h( tr và i u ph!i các c! g ng các ho t ng trong l nh v c này
Ch a có nh h ng rõ ràng trong vi c phát tri n các CSDL qu!c gia
Trang 31Ph n IV H NG PHÁT TRI N C A CSDL HI N NAY
Trên th gi i, s phát tri n trong nh ng n m g#n ây c a CSDL g n li n v i s ra
i và s ch p nh n c a công ngh XML trong ngành công nghi p x$ lý d li u XML cung c p kh n ng qu n lý d li u cho các tài li u và d li u bán c u trúc và
cung c p m t ng ngh a trung l p (neutral syntax) cho v c t ng tác gi a các h
th!ng thông tin thong qua vi c c i ti n x$ lý các #u ra c a CSDL
Th c t , XML ang thay i c n n công nghi p CSDL XML c dùng nh m t
khuôn d ng a n ng th hi n m i lo i d li u Các tài li u tr c kia th ng c
th hi n d i d ng v n b n không c u trúc (plain text), nay chuy n sang c u trúc
XML có th c trao i v i nhau Ngoài các CSDL quan h ã có trên th
tr ng, các CSDL d ng XML ang c xây d ng qu n lý thông tin/d li u
d ng XML V i vi c a vào các l c ph c t p, c ng v i s tri n khai các ngôn
ng truy v n riêng cho XML vào trong các CSDL quan h th ng m i d+n n vi c truy v n m m d2o h n s v i CSDL quan h thông th ng
kh c ph c c các v n c nêu trong B ng 2: Các t n t i trong phát tri n
và ng d ng CSDL t i Vi t nam, phát tri n và ng d ng các CSDL d a trên công ngh XML là m t gi i pháp h p lý
Trang 3232
M c ích chính c a XML là n gi n hóa vi c chia s2 d li u gi a các h th!ng khác nhau, ,c bi t là các h th!ng c k t n!i v i Internet
XML #u tiên c phát tri n l u các tài li u trên web d ng mà d li u và hình th c trình bày c tách bi t Tr c ó vi c qu n lý n i dung thông tin c a các trang web khó kh n do có s l+n l n gi a hai khái ni m này, vì th thông tin khó c tái s$ d ng cho các nhóm ng i s$ d ng khác nhau, hay trên các thi t b khác nhau Ph ng án l u d li u trong CSDL và thêm HTML b c l y d li u ó
ch phù h p v i các d li u lo i có c u trúc ch,t ch% và không phù h p v i các
thong tin d ng n i dung, phi c u trúc 4ng d ng làm cho XML tr nên thành công
là qu n lý n i dung do có cú pháp m m d2o trao i thông tin gi a các ng d ng
d ng này M,c dù, có m t s! ph ng th c khác nh ng XML c ch n vì s n
gi n, c ng h r ng rãi và giá phát tri n th p
IV.1.2. &c i m c a XML
XML mô t thông tin theo m t c u trúc hình cây M t tài li u XML g m các th c
th (element), m(i th c th th ng là m t ph#n nào ó c a các ký t thu c tài li u,
có các th2 ánh d u (markup tag) ký hi u s phân chia thông tin thành m t c u trúc Ký t trong XML theo nh ngh a c a Unicode (B ký t toàn c u)
B ng 3: Cú pháp c a XML
Tr c XML, có r t ít ngôn ng mô t d li u v i các ,c i m a n ng, thân thi n
v i giao th c Internet, d h c và d t o a s! các nh d ng trao i d li u tr c
ây u chuy n d ng, có tính c quy n, và có nh d ng nh phân khó dùng chung
gi a các ng d ng ph#n m m khác nhau hay gi a các h n n (platform) khác nhau
<?xml version="1.0" encoding="UTF-8"?>
<recipe name="bread" prep_time="5 mins" cook_time="3 hours">
<title>Basic bread</title>
<ingredient amount="3" unit="cups">Flour</ingredient>
<ingredient amount="0.25" unit="ounce">Yeast</ingredient>
<ingredient amount="1.5" unit="cups" state="warm">Water</ingredient>
<ingredient amount="1" unit="teaspoon">Salt</ingredient>
<instructions>
<step>Mix all ingredients together, and knead thoroughly.</step>
<step>Cover with a cloth, and leave for one hour in warm room.</step> <step>Knead again, place in a tin, and then bake in the oven.</step> </instructions>
</recipe>
Trang 33IV.1.3 T o và so n th o tài li u XML
Các ph#n m m h( tr vi c so n th o và b o trì tài li u XML m t cách thu n tiên ã nhanh chóng xu t hi n M t thu n l i c a XML là cho phép xem d li u mà không c#n ph i có ch ng trình ã t o ra d li u ó
XML cho phép b n t o ra m t khuôn d ng v n b n m i b"ng cách k t h p hay s$
d ng l i các kh!i có s*n Do hai khuôn d ng c phát tri n c l p nên có th xu t
hi n nh ng ,c tính và thu c tính có tên trùng nhau tránh nh#m l+n tên khi k t
h p các khuôn d ng v i nhau, XML cung c p c ch namespace XSL và RDF là
nh ng ví d i n hình c a nh d ng XML có s$ d ng namespace
IV.1.4 XML và c u trúc d li u
D li u bao g m b ng công tác, s a ch , các tham s! c u hình, giao d ch tài chính, b n v% k) thu t, v n b n, hình nh… Nh h th!ng các lu t mô t c u trúc, XML có th c dùng cho vi c thi t k các khuôn d ng c u trúc cho d li u D a
vào các th2 c a XML, máy tính d dàng t o d li u, c d li u và làm cho c u trúc d li u tr nên rõ ràng d hi u XML còn giúp m r ng c u trúc d li u khi c#n thi t, có platform hoàn toàn c l p và h( tr tính qu!c t hoá và n i a hoá Các c u trúc có ch a ti ng Vi t hoàn toàn c h( tr b i XML do XML h( tr Unicode, b ng mã có ch a phông ch thông d ng cho ti ng Vi t
Trong xây d ng các ng d ng x$ lý d li u, XML th hi n s m m d2o nh các
l c linh ho t, b n ch t phân c p và có th a ra các mô hình d li u t!t h n so
v i d li u quan h vì có th x$ lý c d li u bán c u trúc và không c u trúc (ví
d nh các b n ghi v tình hình s c kh-e, d li u sinh h c, các h p ng kinh t ,
các tuyên b! b o hi m), tính phân c p hay d li u ph c t p l ng nhau (ví d nh
h ng d+n s$ d ng, catalog, hóa n,…), các d li u có s thay i nhi u hay th m
chí có l c thay i (các khung khai báo, các tài li u chu n công nghi p ang trong quá trình phát tri n, các s n ph m m i,…), d li u v i giá tr Null hay a giá
tr (s! i n tho i hay a ch , b n ghi b nh nhân,…)
Trang 3434
IV.1.5 XML và các !nh d ng d a trên XML
B"ng cách cho phép ,t tên d li u, xác nh c u trúc th b c và ý ngh a c a các ph#n t$ và thu c tính c a các ph#n t$ ó theo m t cách m và có th c nh
ngh a b i m t l c (schema), XML cung c p m t cú pháp cho vi c t o l p các ngôn ng ánh d u d a trên XML (XML-based) theo yêu c#u
Cú pháp chung c a các ngôn ng ó là c! nh, t c là các tài li u ph i tuân theo các quy t c chung c a XML, b o m t t c các ph#n m m hi u XML c&ng ph i có kh
n ng c (phân tích cú pháp - parse) và hi u b! c c c a thông tin trong các tài li u
ó Gi n ch b sung m t t p các ràng bu c cho các quy t c cú pháp Các gi n
th ng h n ch tên c a ph#n t$ và thu c tính và các c u trúc th b c c phép T' nh ngh a c b n là d ng text c a XML, các ng d ng v i ch c n ng tr'u
t ng hóa XML thành các nh d ng khác giàu thông tin h n, c th c hi n ch
y u qua vi c s$ d ng các l c nh h ng ki u d li u (datatype-oriented schema) và khuôn m+u l p trình h ng !i t ng trong ó, m(i tài li u XML coi
nh là m t !i t ng, ã nhanh chóng xu t hi n Trong các ph#n m m nh v y, XML c tu#n t hóa ch khi c#n truy n d li u qua m ng
IV.1.6 XML và HTML
T ng t HTML, XML c&ng s$ d ng các tags (các t' c ,t trong ngo,c v i '<'
và '>') và dùng thu c tính (v i m+u ) Trong khi trong HTML, tag và thu c tính có ý ngh a !i v i s hi n th c a ph#n v n b n gi a các tag ó trong trình duy t thì trong m t v n b n XML, các tag ch phân nh ranh gi i gi a các
m u d li u và th hi n ý ngh a c a n i dung ó i m khác bi t gi a XML và HTML là HTML có m t b các tag và thu c tính không m m d2o, ch có m t tác
d ng và nói chung là không th dùng cho m c ích khác
S k t h p gi a XML và HTML t o ra m t ng d ng r t quan tr ng ó là khuôn
d ng v n b n XHTML c a W3C XHTML có nhi u i m chung v i HTML Tuy nhiên, trong cú pháp c&ng có m t s! thay i phù h p v i các lu t trong XML, mang c u trúc c a XML và b h n ch m t s! ph ng di n (Ví d , XHTML qui
nh "<p>" là " o n v n (paragraph)", ch không ph i "giá (price)", "ng i (person)", hay b t c m t cái gì khác
Trang 35XML tránh c nh ng v n v vi c mã hóa ký t m c th p b"ng
vi c ch p nh n Unicode cho phép tri n khai trên toàn c u
XML uy n chuy n th hi n d li u d ng v n b n phù h p v i kh
n ng c c a con ng i và c các c u trúc d li u tr'u t ng có m c ích x$ lý c b i các ng d ng
Ng pháp c a XML d hi u v i ng i c, cho phép các tài li u n
gi n có th c t o và c b i các editor chu n
XMl tránh c s tranh giành th ng có trong ngành công nghi p IT:
c ngành công nghi p IT ch p nh n và các s n ph m c cung cáp b i các hang khác nhau có tính t ng tác cao
Nh ng y u t! trên làm XML c ch p nh n r ng rãi không ch trong qu n lý n i dung web mà còn trong các ng d ng khác m c toàn c#u G#n nh m i công
ty hi n nay u dùng XML m t d ng nào ó Kh!i l ng d li u XML mà các t
ch c c#n x$ lý t ng lên v i t!c nhanh g p hai d li u truy n th!ng trong các CSDL quan h Nh ng y u t! trong vi c t ng tr ng này bao g m:
- Ngành công nghi p và các chu n d a trên XML (xem IV.4)
- Các ki n trúc h ng !i t ng (SOA) và d ch v web, công ngh web 2.0
nh XML feed, d ch v ng b (xem IV.1.8)
Trang 3636
IV.1.8 XML là c s c a Web th h m i
Khung miêu t tài nguyên c a W3C (RDF) là m t khuôn d ng v n b n XML h( tr
mô t tài nguyên và các ng d ng siêu d li u, ví d nh danh sách b n nh c, b
s u t#m nh, s u t#m th m c
Các máy tính c#n có c ch th!ng nh t v ý ngh a các thu t ng truy n t thông tin m t cách hi u qu nh ngh a chính th c các thu t ng trong m t vài l nh v c
g i là b n th h c r t c#n thi t trong Web th h m i RDF, b n th h c, và vi c th
hi n ý ngh a các máy tính có th giúp ng i ta ti n hành công vi c c a mình là
n i dung quan tr ng c a Semantic Web
Các khuôn kh và s tri n khai d a trên d ch v ang t ng lên m t cách ph bi n
nh kh n ng tích h p các h th!ng, cho phép s$ d ng l i ngu n tài nguyên, ph n
ng nhanh chóng v i s thay i c a th tr ng, cho phép ti t ki m và t ng kh
n ng c nh tranh Trong ki n trúc d a trên d ch v (SOA), ng i tiêu th và nhà cung c p d ch v trao i thông tin d a trên các tin nh n c bao gói th!ng nh t
nh XML XML cung c p ph ng ti n trao i thông tin trong môi tr ng SOA
nh c ch ra trong Hình 2 nh h ng t i thông tin nh là m t d ch v và s
ch p nh n nhanh chóng môi tr ng SOA c&ng làm t ng s ch p nh n XML
XML là tâm i m c a công ngh Web 2,0 , th h ti p theo c a Internet, trong ó
s ng b hóa c coi là quan tr ng nh t Các c ch ng b (Rich Site Summary) cho phép ng ký và c c p nh t #y v m i s thay i trong n i
dung web N i dung c a các feed c trình bày nh các t p d ng XML và có th
ch a các link, t ng k t, bài vi t, và các t p g n li n S ng b và web feed ang thay i cách th c trình bày web Các mô hình kinh doanh m i ang xu t hi n xung quanh công ngh này H qu n tr CSDL XML t n t i không ch các công
ty ch p nh n chu n XML hay các công ty tri n khai SOA mà còn m(i h th!ng
có n!i n web
Hình 2: Vai trò c a XML trong trao i thông tin t i môi tr ng SOA
Trang 37li u XML tr nên là tài s n có giá tr và ch a các thông tin quan tr ng S t ng
tr ng và s ph bi n c a các tài s n XML ra s thách th c và c h i cho các công ty Khi d li u XML và n i dung thông tin c s$ d ng t!t, ó s% là c h i cho các t ch c thúc y các ho t ng và hi u bi t kinh doanh M,t khác, khi XML tr thành quan tr ng cho các ho t ng c a m t t ch c, m t th$ thách là d
li u XML c#n c an toàn, b o trì, tìm ki m c và chia s2 c th o cách th c tin c y, s*n sàng, và kh m nh v i các tài nguyên d li u d ng quan h i u
ó có ngh a c#n phát tri n các công c qu n tr d li u XML ti n l i nh các CSDL quan h ang c th ng m i trên th tr ng
Khi XML c ch p nh n a vào s$ d ng s% n y sinh yêu c#u c#n l u tr và truy
c p n d li u XML Có ba ph ng phap l u tr d li u XML:
1 L u d li u XML nh m t t p: khi ó XML c th hi n d ng v n
b n thô, thu ng c l u trong BLOB hay CLOB c a CSDL quan h
2 Tách d li u: Tài li u XML c phân tích ng pháp và thông tin c tách ra, th ng c l u d ng CSDL quan h Khi c#n, các thành ph#n
c a m t tài li u XML c t p h p l i tái t o l i tài li u XML ó
3 S d ng các CSDL d ng XML chuyên d ng: CSDL này hi u c c u trúc c a c a tài li u XML và th c hi n các câu truy v n c&ng nh c d
li u c a XML v i thông tin v c u trúc c a t p XML ã c bi t tr c
IV.1.10 XML và th! tr ng khuôn d ng t p CSDL
Hi n nay, c 3 hãng l n cung c p CSDL là IBM, Oracle, và Microsoft u s$ d ng XML làm CSDL c a h nhanh h n và h( tr d ch v web Microsoft a ra phiên b n SQL Server có tên Yukon chuyên x$ lý d li u XML làm lõi cho các
d ch v Net Web c a Microsoft ây là m t CSDL l u XML d ng nguyên th y
Trang 3838
Microsoft h( tr các chu n c a XMLm ví d nh a SQLXML vào h( tr XML Schema Definition, m t ,c t c cho tích h p d li u c h( tr b i W3C Oracle và IBM c&ng ang tri n khai m nh XML trong các s n ph m c a mình Oracle ang hoàn thi n XDB (XML database support) IBM thông báo h ã có các
s n ph m XML k t h p trong DB2.9 v i công ngh pureXML Ngoài ba hãng l n trên, nhà cung c p CSDL quan h nh Sybase c&ng ang tham gia vào l nh v c XML c&ng nh Software AG và Ixiasoft
IV.2 XML và các công ngh x* lý d li u liên quan
D a trên XML, "the XML family" là m t b các công c h u d ng qu n lý và x$
lý các câu truy v n D i ây là mô t m t s! công ngh này
IV.2.1. !nh ngh'a ki u c a tài li u
Document Type Definition (DTD), là m t trong các ngôn ng c a XML c
dùng th hi n m t l c b"ng các khai báo tuân th m t ng ngh a ánh d u
c th (particular markup syntax) và mô t các l p, các ki u c a các tài li u XML d a trên các ràng bu c v c u trúc c a các tài li u ó DTD còn c s$
d ng mô t các c u trúc không b t bu c t o lên c u trúc c a tài li u nh ng có
th nh h ng n s di n gi c a m t s! tài li u
Trong m t DTD, c u trúc c a m t l p các tài li u c mô t quan các khai báo nguyên t! và tính ch t (attribute-list declarations) Các khai báo nguyên t! ,t tên cho m t t p h p các nguyên t! trong m t tài li u và ch ra các nguyên t! c&ng nh các chu(i ký t c ch a trong m t nguyên t! nh th nào Các khai báo thu c tính ch ra danh sách các thu c tính, ki u, và giá tr n u có c a các thu c tính ó
B ng 4: DTD c a danh sách ng i
<!ELEMENT people_list (person*)>
<!ELEMENT person (name, birthdate?, gender?, socialsecuritynumber?)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT birthdate (#PCDATA)>
<!ELEMENT gender (#PCDATA)>
<!ELEMENT socialsecuritynumber (#PCDATA)>
Trang 39IV.2.2 L c XML
L c XML (XML schema) là m t mô t c a m t d ng tài li u XML, thông
th ng c th hi n b i các h n ch v c u trúc và n i dung c a tài li u thu c
d ng ó, m c tr u t ng cao h n !i v i các h n ch cú pháp c b n c thiêt l p b i XML C ch g n m t tài li u vào m t l c ph thu c vào t'ng ngôn ng l c , có th thông qua markup trong tài li u XML hay thông qua các
ph ng ti n bên ngoài L c XML cho phép ráp các kh!i nh"m n b o c u trúc v n b n XML, b"ng cách t o i u ki n d dàng k t h p hai l c t o ra cái th ba có c u trúc v n b n k t h p
IV.2.3 Ngôn ng XPath
XPath (XML Path Language) là m t ngôn ng th hi n nh"m c p n m t ph#n
c a m t tài li u XML hay tính toán các giá tr (strings, numbers, hay boolean values) d a trên n i dung c a m t tài li u XML Ngôn ng XPath d a trên bi u
di n hình cây c a tài li u XML, cho phép l t trong cây ó, ch n các node theo các
tiêu chu n khác nhau
B ng 5: M t s bi u th c XPath d ng không vi t t(t
IV.2.4 Ngôn ng truy v n XQuery
XQuery là m t ngôn ng truy v n c thi t k truy v n d li u XML và có
ng ngh a t ng t nh SQL Nhi m v c a XQuery là cung c p m t ph ng ti n truy v n m m d2o l y d li u t' các tài li u XML và tài li u trên Web, qua ó cung c p s t ng tác c#n thi t gi a web và th gi i CSDL D i ây là m t s! các
ng d ng c a XQuery:
Trích thông tin t' CSDL s$ d ng cho các d ch v web
T o các báo cáo t ng k t v d li u l u trong m t CSDL XML
Tìm các tài li u d ng v n b n trên web có các thông tin phù h p và trình bày k t qu nh mong mu!n
Trang 40Xlink c coi nh m t ph ng th c chu n a các liên k t siêu v n b n vào
file XML XPointer and XFragments là nh ng cú pháp phát tri n các ph#n trong
v n b n XML XPointer có ôi ch( gi!ng URL, nh ng thay vì t p trung vào v n
b n trên m ng, XPointer t p trung vào t'ng o n d li u trong file XML CSS
(style sheet language) có th áp d ng c !i v i XML gi!ng nh HTML XSL là
m t lo i ngôn ng dùng cho style sheet d a trên XSLT, m t lo i ngôn ng chuy n
i s$ d ng trong vi c s p x p l i, thêm vào và xoá i m t s! tag và thu c tính
DOM và SAX là trình phân tích file XML th ng c dùng trong m t ngôn ng
l p trình DOM phân tích m t v n b n XML ra theo c u trúc hình cây trong b nh x$ lý SAX c&ng là trình phân tích tài li u XML nh ng làm vi c theo nguyên t c
ch kích ho t khi c n các tags c a d li u XML
<html><head/><body>
{ for $act in doc("hamlet.xml")//ACT
let $speakers := distinct-values($act//SPEAKER)
return
<span>
<h1>{ $act/TITLE/text() }</h1>
<ul>
{ for $speaker in $speakers
return <li>{ $speaker }</li> }
</ul>
</span>
}
</body></html>