1. Trang chủ
  2. » Công Nghệ Thông Tin

Tài liệu so sánh các phương pháp tiếp cận cơ sở dữ liệu XML docx

6 639 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề So sánh các phương pháp tiếp cận cơ sở dữ liệu xml
Tác giả Adriaan De Jonge
Thể loại Tiểu luận
Định dạng
Số trang 6
Dung lượng 209,31 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Hãy ngh- n tính toàn v/n tham chi u và qu n lý giao tác... Th vi n k thu t XML: Truy c p developerWorks XML Zone xem các bài vi t, các th thu t, các h ng d#n, các tiêu chu%n và IBM Redbo

Trang 1

XML

M c : Trung bình

Adriaan de Jonge, K s ph n m m, Freelance

17 07 2009

Nhu c u s d ng XML ngày càng t ng òi h i các h th ng mà l u tr d li u bán c u trúc

mà không c n ph i ép nó vào các c u trúc d li u không phù h p Các yêu c u này u c

áp ng b i c c s d li u XML nguyên g c và c s d li u quan h h tr XML Câu

h i t ra là: T i sao b n thích m t c s d li u XML nguyên g c h n m t c s d li u c

i n v i h tr XML ho c các cách khác? Bài vi t này so sánh các ph ng pháp ti p c n cho

m t s các gi i pháp khác nhau, bao g m eXist, Mark Logic, và IBM® DB2® Express-C S

khác bi t c a các ki u c s d li u c so sánh gi a nh ng thu n l i và khó kh n c a

chúng

Trong nh ng n m u tiên c a c s d li u XML, s khác bi t gi a cái c g i là c s d li u XML nguyên g c (native XML database-NXD) và các h th ng qu n lý c s d li u quan h có h tr XML (relational database management systems - RDBMS) là r t l n Các NXD c t i u hóa l u tr các tài li u XML Các b n RDBMS c ch! thêm m t s gia v" vào các i t ng nh" phân l n (binary large object - BLOB) ch a XML

Ngày nay, các NXD v#n là NXD nh ng c c i ti n r t

nhi u Cùng th$i i m, các nhà cung c p RDBMS ã có

th$i gian u i k"p khi chúng có th l u tr các tài li u

XML Các ph n XML không còn c l u tr trong các

BLOBs Thay vì nh v y, chúng c l u tr trong các

c u trúc cây (tree-like structure), c t i u hóa ch a

các tài li u có c u trúc cây, b n ch t t nhiên c a m t tài

li u XML chu%n

Trong th$i gian gi a các cài t ban u và các gi i pháp ngày nay, m t s s phát tri n n n t ng ã c thêm vào s chu%n hóa c a các ngôn ng truy v n trên các tài li u XML — áng chú ý nh t, XQuery 1.0,

v i h tr cho Ngôn ng & $ng d#n XML (XML Path Language - XPath) 2.0 Khái ni m c a XQuery

c phát tri n trong nhi u n m; k t qu cu i cùng có s t ng ng v i các phiên b n tr c ó nh ng hoàn thi n h n Gi ng nh Ngôn ng Truy v n Có c u trúc (Structured Query Language - SQL), XQuery

%y m nh s c l p c a nhà cung c p và tái s d ng

T i sao b n c n c s d li u XML?

Các c s d li u th $ng có th l u tr c tài li u không c u trúc và có c u trúc C hai u yêu c u các

c u trúc d li u mà không th $ng xuyên thay i Tuy nhiên, i m y u c a các c s d li u quan h là

vi c l u tr các tài li u bán c u trúc Không nh các d li u có c u trúc, các tài li u bán c u trúc này có

th có r t nhi u b c t do trong tr t t c a các thành ph n trong tài li u và cách nh ng thành ph n ó c

l ng vào nhau Không nh các tài li u không có c u trúc, các thành ph n riêng l' có th c phân lo i b(ng cách s d ng các nhãn mô t

B n có th l u tr d li u bán c u trúc trong các c u trúc quan h không? T t nhiên là b n có th , nh ng

b n có th k t thúc b(ng m t c u trúc d li u c th mà th $ng xuyên thay i, m t c u trúc d li u t ng quát hóa mà làm m t mô t c a các nhãn ho c m t mô hình tr)u t ng nh là nh ng th mà các h th ng

qu n lý n i dung s d ng, tr n d li u v i nh ng th mà áng ra là siêu d li u (metadata)

M t khác, "nh d ng XML phù h p v i vi c mô t d li u bán c u trúc Thêm n a, b n có th duy trì mô

Các thu t ng hay dùng

API: Giao di n l p trình ng d ng HTTP: Giao th c truy n siêu v n

b n IT: Công ngh thông tin XML: Ngôn ng ánh d u m r ng

Trang 2

tên c a ph n t c s d ng và liên k t bên trong c u trúc cây

V i các tài li u nh là các h s xin vi c, các mô t s n ph%m, và các n hàng c a khách hàng, XML có l+ là "nh d ng phù h p & ng th$i, XML có kh n ng mô t c d li u có c u trúc và d li u không có

c u trúc

Th thì, b n có c n các c s d li u quan h n a

không?

Khi b n t o m t gi i pháp ph n m m m i, câu tr l$i có th là "Không!" N u b n có m t gi i pháp mà cho phép b n l u tr d li u bán c u trúc, b n c ng có th s d ng nó l u tr d li u có c u trúc và không có c u trúc Vi c có t t c d li u c a b n trong m t gi i pháp l u tr n l' v i kh n ng t ng k t

và t o ra các truy v n mà bao trùm m i th trong m t l n thì d* h n r t nhi u so v i d li u tích h p t) nhi u ngu n l u tr khác nhau

T t h n, n u tr l$i "không" v i câu h i này, b n nên ph n l n d li u c a mình d ng ki u tài li u bán c u trúc Tuy nhiên, n u a ph n d li u c a b n phù h p v i mô hình quan h có c u trúc ch t ch+ và

ít gi ng v i ki u tài li u và qu n ch t v i nhau, thì vi c ch n m t NXD có l+ không giúp ích gì cho tr $ng

h p c a b n

V y thì làm th nào xác "nh b n ch t d li u c a b n? Và b n s+ ph i làm gì n u kh i l ng d li u có

c u trúc, bán c u trúc và không c u trúc là t ng ng? Trong tr $ng h p b t "nh nh v y, tin t t lành

là các c s d li u c i n là l a ch n phù h p ch a các tài li u XML ho c các phân m nh c a các tài

li u XML vào th$i i m hi n t i Các cách th c truy c p nh ng phân m nh XML này có l+ khác nhau

gi a các c s d li u M t i u mà các b n cài t c a các c s d li u cùng có là chúng s d ng b n XQuery 1.0

Các gi i pháp

M t s s n ph%m trên th" tr $ng cài t m t c s d li u XML m t chi u ho c m t c s d li u khác, bao g m Xindice, Tamino, X-Hive, Oracle, và Microsoft® SQL Server Tuy nhiên, tôi s+ không khung làm vi c lu n v nh ng s n ph%m này trong bài vi t này M t b n so sánh s n ph%m dài và y là không

kh thi, và nó có th không áng tin khi mà bài vi t này c công b trên trang c a m t nhà cung c p m t

gi i pháp c s d li u XML Các tác gi c l p c ng không gi i quy t hoàn toàn các câu h i m t cách khách quan

Nh ng gì tôi có th làm là th o lu n v IBM DB2 Express-C v i các tính n ng pureXML và so sánh nó

v i các ti p c n c a các NXD c i n V i so sánh này, tôi ã ch n m t d án mã m tên là eXist-DB C eXist-DB và DB2 Express-C u mi*n phí và cung c p r t nhi u ch c n ng thân thi n v i ng $i dùng

N u b n mu n l u tr l ng d li u c c l n, tôi khuyên b n mua m t phiên b n th ng m i c a DB2

& u tiên, DB2 có l+ nghe nh là m t cái gì ó r t n ng n , nh ng b n có th cài t DB2 Express-C trên

m t máy bàn ho c máy xách tay th nghi m kh n ng pureXML d* dàng M c dù không có phiên

b n th ng m i c a eXist, Mark Logic là l a ch n thay th x ng áng cho eXist khi mà các yêu c u hi u

su t và tính m r ng v t quá kh n ng c a eXist B n có th dùng th Mark Logic b(ng cách s d ng

gi y phép dùng th 30 ngày ho c m t phiên b n c ng ng mà b" gi i h n l u tr m c 100MB

Tôi có th t ng t ng th y nhu c u v so sánh s n ph%m gi a các s n ph%m t ng t nh là DB2 và Orcale B n có th tìm th y m t s tranh lu n tr c ây trên m ng v hai s n ph%m này M t th o lu n c

b n h n là so sánh các tính n ng c a pureXML trong DB2 Express-C và trong eXist-DB Ho c, m t cách

t ng t , so sánh DB2 v i Mark Logic

Trang 3

C s d li u XML nguyên g c

Gi ng nh h u h t các tên phân lo i s n ph%m, thu t ng c s d li u XML nguyên g c gây hi u nh m

ôi chút Nó làm cho b n th,c m,c ki u nh : C s d li u là gì? XML nguyên g c là gì? DB2 có ph i là NXD không?

Theo Wikipedia, "m t c s d li u máy tính là m t t p h p có c u trúc các b n ghi ho c d li u c l u

tr trong m t h th ng máy tính." XML nguyên g c là cách dùng c a các công ngh liên quan n XML

mà không pha t p v i các công ngh phi XML T c là kh n ng s d ng XQuery và XPath không có m t chút SQL nào IBM d oán tr c câu h i có ph i DB2 là XML nguyên g c không b(ng cách g i các c tính c a nó là pureXML Tôi s+ quay tr l i "nh ngh-a ó trong ph n sau

Khi so sánh các NXD v i RDBMS có h tr XML, tôi ngh- r(ng m t NXD i n hình c ng có th c

phân lo i nh là m t kho ch a tài li u Thu t ng kho ch a tài li u c s d ng b i các s n ph%m nh Alfresco và Magnolia Các s n ph%m này c x p l p trên c các c s d li u hi n có, và chúng thi u c

s h t ng c cung c p b i eXist và Mark Logic — áng chú ý nh t là kh n ng ch y các XQuery m t cách có hi u qu Chúng t p trung vào các ch c n ng b c cao nh là lu ng làm vi c (workflow) và giao

di n ng $i dùng thân thi n Các NXD dành nh ng th ó cho các ng $i dùng các s n ph%m c a mình Chúng ch! cung c p các hàm API ch a tài li u b c th p, nh là Web-based Distributed Authoring and Versioning (WebDAV) ho c các k t n i RESTful tùy bi n

Nh v y m t NXD i n hình l u tr các tài li u XML m t cách hi u qu Nó cung c p công ngh XQuery

và m t l p m ng các ch c n ng kho d li u

Các NXD d $ng nh nh,m t i tài nguyên theo nh h ng, ngh-a là các m%u n i dung riêng c l u tr trong kho ch a có th c xác "nh b(ng cách s d ng các "nh danh tài nguyên ng b (Uniform

Resource Identifier - URI) S d ng HTTP ho c WebDAV, các URI t ng t cho phép truy c p t i d li u cái mà làm cho tính k t n i tr thành không v n

Coi d li u nh là các tài nguyên n l' c ng có các y u i m c a nó S chia tách tài li u làm cho vi c

t o quan h gi a các d li u mà b" chia nh kh,p các a li u tr nên khó kh n N u m t tài li u ch a các

d li u c quy n mà các tài li u khác tham chi u n, thì vi c duy trì tính tích h p tham chi u càng khó

kh n h n Các nhà s n xu t c s d li u XML l n cung c p các l a ch n t các ràng bu c trên các d

li u trong các a tài li u Tuy nhiên, i u này ch a c tiêu chu%n hóa nh các công ngh XML khác

pureXML

IBM l a ch n tránh thu t ng c s d li u XML nguyên g c (native) nh ng v#n mu n truy n t i b n

ch t nguyên g c c a XML c a gi i pháp c a h DB2 Express-C là m t i n hình cho NXD, nh ng nó l i chia s' m t s c tính T) m t góc , DB2 d $ng nh gi ng m t RDBMS v i các c t XML N u b n

mu n s d ng các tính n ng, )ng nh m l#n s tinh vi c a các c t XML v i s thi u kh n ng XML Tên pureXML c chính th ng hóa theo hai cách:

D li u XML c l u tr trong "nh d ng cây nguyên b n, tách bi t kh i d li u quan h

B n c phép truy c p t t c d li u — c quan h và XML — thông qua m t giao di n XML n

nh t

XQuery 1.0 không b" gi i h n b i vi c truy v n các tài li u XML IBM cung c p các hàm XQuery mà cho phép b n truy v n d li u quan h và tr n và i sánh các k t qu v i XML t) các c t XML K t c a c a

d li u k t h p có th c tr l i trong "nh d ng XML

DB2 là n n t ng c s d li u nguyên b n Nó không cung c p m t l p m ng các ch c n ng ch a tài li u

mà r t nhi u NXD khác cung c p &i u ó không có ngh-a là b n không th s d ng DB2 th c hi n

ch a tài li u — cho dù m ng hay dày Hi n nay, h u h t các kho ch a tài li u nh là Alfresco c cài t

Trang 4

m m d'o h n s d ng kh n ng l u tr XML

Nó có th là th$i i m tr c khi các s n ph%m nh là Alfresco có c các tính n ng ch.ng h n nh là pureXML Lý do là nh ng s n ph%m ó không mu n b" trói bu c vào m t s n ph%m c s d li u riêng

bi t nào B t ch p XQuery 1.0, cách mà ngôn ng XQuery c s d ng trong các s n ph%m c s d li u v#n thi u s tiêu chu%n hóa V i nh ng s n ph%m này, cách an toàn là ch$ i các kh n ng m i c a các

c s d li u XML, ch$ i ng d ng ng nh t h n c a XQuery và các giao th c k t n i, và bây gi$, t

gi i h n b n thân chúng n các tiêu chu%n v i các cài t ng nh t gi ng nh WebDAV ho c các b k t

n i c s d li u quan h

B n có th s d ng các kh n ng c a DB2 âu?

Câu tr l$i t ng i n gi n &a s các gi i pháp IT trên th gi i ã nghiên c u chi ti t các c s d li u quan h Th m chí khi các c s d li u quan h thi u tính m m d'o c yêu c u cho m t gi i pháp, chúng v#n phát tri n h n và phù h p h n cho các nhu c u l n so v i các thay th khác

Các công ty mu n tri n khai b c ti p theo và áp d ng các công ngh XML không mu n b i các k t qu

ã c phát tri n trong nhi u n m và thay th chúng v i m t NXD Và, m c dù h có l+ s d ng NXD thêm vào c s d li u quan h c a h , i u này có th t o ra các thách th c m i trong vi c tích h p các

d li u b" chia nh kh,p các a ngu n Hãy ngh- n tính toàn v/n tham chi u và qu n lý giao tác M c dù

là không th gi i quy t c, nh ng m t gi i pháp tích h p n l' mà quan tâm n nh ng i u này v#n

có nhi u u i m

S k t h p c a d li u quan h và d li u XML trong pureXML giúp cung c p s chuy n v" suôn s', ho c

g n nh th , s chuy n v" t)ng ph n sang công ngh XML

K t lu n

M c dù các tài li u XML có th mô t d li u có c u trúc, m t NXD ch a nhi u tài li u XML có l+ không

ph i là gi i pháp t i u mô t các quan h gi a d li u có c u trúc b" chia nh thành nhi u tài li u và duy trì tính toàn v/n tham chi u N u nó ã có th qu n lý nh ng m i quan h ó (có l+ s d ng

XPointer), thì vi c s d ng v#n ch a c chu%n hóa

L$i khuyên t t nh t là s d ng úng công c cho úng công vi c Tuy nhiên, s song hành c a m t NXD

v i m t RDBMS t o ra thách th c cho b o toàn d li u Các c tính c a pureXML c a DB2 k t h p

nh ng cái t t nh t c a hai bên và cho phép l u tr c d li u có c u trúc và d li u bán c u trúc & i v i

l u tr d li u không có c u trúc, c NXD và RDBMS u thích h p

N u b n th c s tìm ki m m t kho ch a tài li u h n là m t c s d li u, b n nên h i m t câu h i khác Các yêu c u c a b n t p trung vào kh n ng m t tr c (front-end) c a kho ch a tài li u hay chúng t p trung vào m t sau (back-end)? N u b n mu n nhi u ch c n ng cho ng $i dùng cu i nh là m t giao di n

qu n tr", dòng làm vi c, và tr c quan hóa, thì r t nhi u s n ph%m trên th" tr $ng, nh là Alfresco, cung c p

ki u h tr này N u b n quan tâm n các c ch truy v n m nh m+, nh là XQuery và tìm ki m v n b n

y , và l u tr hi u qu các tài li u bán c u trúc, thì các NXD nh là eXist ho c Mark Logic có l+ là

l a ch n c a b n

Th gi i c a các gi i pháp c s d li u b" chi ph i b i m t s ít các nhà cung c p l n IBM là m t trong

s ó Các NXD v#n là m t th" tr $ng nh Các câu h i th $ng là li u nh ng ng $i ch i nh bé có th

s ng sót qua s c nh tranh hay không, hay li u h s+ b" mua b i các t p oàn l n h n (nh là X-Hive b" mua b i EMC), ho c li u h s+ m t th" ph n cho các gi i pháp lai M t i u rõ ràng, các nhà cung c p RDBMS, s+ không b(ng lòng t) b th" ph n cho NXD, cung c p các gi i pháp XML tích h p tiêu chu%n xu t x ng nh ng c tích h p t t c a chính mình áp ng nhu c u c a các khách hàng

Trang 5

IBM, IBM logo, ibm.com, DB2, developerWorks, Lotus, Rational, Tivoli, và WebSphere là th ng hi u c a

t p oàn International Business Machines Corporation M và các n c khác Nh ng th ng hi u này và các thu t ng th ng hi u c a IBM c xác l p khi chúng xu t hi n l n u tiên v i các ký hi u t ng ng (®

ho c ™), xác "nh ã c ng ký M hay lu t th ng hi u chung s h u b i IBM t i th$i i m thông tin

c phát hành Nh ng th ng hi u ó c ng có th c ng ký ho c là th ng hi u c a lu t chung các

Tài nguyên

H c t p

XQuery 1.0: Tìm hi u v tiêu chu%n truy v n XML m nh m+ c s d ng trong t t c các c s d

li u XML

Th vi n k thu t XML: Truy c p developerWorks XML Zone xem các bài vi t, các th thu t, các h ng d#n, các tiêu chu%n và IBM Redbooks

Web qu ng bá và các s ki n k thu t c a developerWorks: C p nh t thông tin công ngh v i các

ph n này

developerWorks podcasts: Nghe các th o lu n và ph ng v n dành cho các nhà phát tri n ph n m m Kho sách công ngh : Tìm các sách v công ngh ây

L y s n ph m và công ngh

DB2 pureXML: Tìm hi u v các kh n ng c a n n t ng DB2 y bao g m các kh n ng

pureXML

DB2 Express-C v i pureXML: Dùng th công ngh pureXML b(ng cách s d ng phiên b n c ng

ng mi*n phí

eXist-DB: T i NXD mã m mà t)ng b c tham gia c nh tranh v i MySQL

Mark Logic: Khi các yêu c u c a b n v hi u su t và tính kh m v t quá kh n ng c a eXist, Mark Logic là l a ch n phù h p

Th o lu n

Di*n àn th o lu n XML: Tham gia vào các th o lu n liên quan n XML

developerWorks blogs: Xem xét nh ng blogs này và tham gia vào c ng ng developerWorks

ôi nét v tác gi

Adriaan de Jonge là chuyên gia phát tri n ph n m m hi n ang làm vi c cho chính ph Hà Lan, x lý m t vài d án v i các vai trò khác nhau Adriaan ã vi t các bài vi t liên quan n XML cho developerWorks

c a IBM và Amazon

Trang 6

Systems Incorporated M và các n c khác Microsoft, Windows, và bi u tr ng Windows là th ng hi u

c a Microsoft Corporation M và các n c khác Tên các d"ch v , s n ph%m, công ty, có th' là th ng hi u

ho c d"ch v ã ng ký Tên c a công ty, s n ph%m hay d"ch v có th là nhãn hi u ng ký ho c nhãn hi u d"ch v c a ng $i khác

Ngày đăng: 23/12/2013, 13:15

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w