Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 23 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
23
Dung lượng
802,27 KB
Nội dung
1 B GIÁO D C VÀ ĐÀO T O Đ I H C ĐÀ N NG Đ NG TH ÁNH PHƯ NG NGHIÊN C U NG D NG C U TRÚC D LI U TRIE CHO TÌM KI M CHU I KÝ T Chuyên ngành : KHOA H C MÁY TÍNH Mã s : 60.48.01 TĨM T T LU N VĂN TH C SĨ K THU T Đà N ng - Năm 2012 Cơng trình đư c hồn thành t i Đ I H C ĐÀ N NG Ngư i hư ng d n khoa h c: PGS.TS VÕ TRUNG HÙNG Ph n bi n 1: TS NGUY N THANH BÌNH Ph n bi n 2: TS NGUY N M U HÂN Lu n văn ñư c b o v t i H i ñ ng ch m Lu n văn t t nghi p th c sĩ k thu t h p t i Đ i h c Đà N ng vào ngày 03 tháng 03 năm 2012 Có th tìm hi u lu n văn t i: • Trung tâm Thông tin - H c li u, Đ i h c Đà N ng • Trung tâm H c li u, Đ i h c Đà N ng M Đ U Lý ch n ñ tài G n ñây, h th ng kho d li u ngày ñư c m r ng đóng vai trị quan tr ng đ i v i ngư i quy t ñ nh; h u h t truy v n ñ i v i m t kho d li u l n r t ph c t p l p ñi l p l i; kh tr l i nh ng truy v n hi u qu m t v n ñ mà nhi u h th ng ñang hư ng ñ n Làm th ñ tăng t c ñ , c i thi n hi u su t truy v n câu h i l n khơng ng ng tìm ki m l i gi i ñáp t i ưu Hi n có r t nhi u k thu t ñư c áp d ng nh m tăng hi u qu truy v n, m i k thu t đ u có nh ng th m nh riêng, TRIE m t c u trúc d li u ñang ñư c tri n khai s d ng h th ng tìm ki m l n hi n t i b i nhi u tính ưu vi t giúp đ y nhanh t c đ hi u qu c a q trình truy v n Trư c th c tr ng đó, ch n nghiên c u th c hi n ñ tài “Nghiên c u ng d ng c u trúc d li u TRIE cho tìm ki m chu i ký t ” dư i s hư ng d n c a PGS TS Võ Trung Hùng Đ tài phát tri n s giúp cho sinh viên nói riêng nh ng ngư i nghiên c u v Cơng ngh thơng tin nói chung có thêm tài li u h tr tri n khai c u trúc d li u ph c v cho cơng tác tìm ki m chu i ký t bên c nh c u trúc d li u ñang s d ng hi n m t s h qu n tr s d li u l n, ñ c bi t h qu n tr s d li u mã ngu n m M c tiêu nhi m v nghiên c u M c tiêu c a ñ tài c u trúc d li u Trie đư c tìm hi u trình bày c th kèm theo vi c ng d ng MariaDB Nhi m v nghiên c u bao g m ph n nghiên c u lý thuy t v phương pháp t o ch m c tìm ki m; tìm hi u phương pháp Hash index, Bitmap Index, Btree Index nghiên c u c u trúc d li u Trie, bi n th c a Trie, thao tác b n c u trúc d li u D a nghiên c u lý thuy t đó, đ tài ñưa ñư c tài li u Ti ng vi t v c u trúc d li u Trie ph c v cho vi c h c t p nghiên c u 2 Đ i tư ng ph m vi nghiên c u Đ i tư ng nghiên c u c a ñ tài g m: Cơ s lý thuy t v phương pháp tìm ki m, truy xu t d li u, ch m c k thu t l p ch m c ph c v tìm ki m, gi i thu t liên quan ñ n c u trúc d li u TRIE Ph m vi nghiên c u v h th ng tìm ki m thơng tin nói chung k thu t l p ch m c ph c v cơng tác tìm ki m thơng tin (Hash Index, Bitmap Index, Btree Index), tr ng tâm ñi sâu tìm hi u c u trúc d li u TRIE, bi n th Trie nén thao tác b n Trie, Trie nén Phương pháp nghiên c u Đ tài ñư c tri n khai b ng phương pháp nghiên c u sau: Phương pháp tài li u nh m thu th p, phân tích t ng h p tài li u liên quan ñ n v n ñ lý thuy t, phương pháp mơ hình hóa phương pháp th c nghi m Ý nghĩa khoa h c th c ti n c a ñ tài K t qu nghiên c u có th làm tài li u tham kh o cho vi c tìm hi u phương pháp l p ch m c ph c v tìm ki m so sánh hi u qu gi a chúng, ñ c bi t tài li u v c u trúc d li u Trie ph c v tìm ki m Ngoài ra, ph n nghiên c u lý thuy t s cung c p m t cách nhìn t ng quát v h th ng tìm ki m, phương pháp tìm ki m B c c lu n văn Lu n văn đư c trình bày b n bao g m chương CHƯƠNG 1: T NG QUAN V TÌM KI M THƠNG TIN TRÊN VĂN B N CHƯƠNG 2: TRIE - C U TRÚC D LI U TÌM KI M CHU I KÝ T CHƯƠNG 3: TRIE TÌM KI M TRÊN CƠ S D LI U MARIADB CHƯƠNG 1: T NG QUAN V TÌM KI M THƠNG TIN TRÊN VĂN B N Trong chương chúng tơi s trình bày khái qt v tìm ki m thơng tin (Retrieval Information) c u trúc phương th c ho t ñ ng c a h th ng tìm ki m Bên c nh chúng tơi s gi i thi u m t s h th ng tìm ki m Internet Desktop ñang ph bi n hi n Cu i chương, chúng tơi s trình bày m t s ñánh giá ñ nh hư ng cho vi c ng d ng mã ngu n m 1.1 TÌM KI M THƠNG TIN 1.1.1 Khái qt v tìm ki m thơng tin [1],[2],[3] 1.1.2 Mơ hình tìm ki m [2] Hình 1.1 Mơ hình tìm ki m [2] Hình 1.1 mơ t m t mơ hình tìm ki m thơng tin “front-end process” bư c x lý liên quan ñ n ph n chương trình tương tác tr c ti p v i ngư i s d ng, ñi u n vi c giao ti p v i ngư i s d ng; “back-end process” x lý liên quan ñ n ph n chương trình ph tr phía sau, thư ng ñư c ñ t máy ch Query parser phân tích cú pháp truy v n Search engine interface giao di n c a máy tìm ki m Hình v miêu t nhi m v tương ng v i nhi m v c a B thu th p thông tin, B l p ch m c B tìm ki m thơng tin đư c nêu phía 4 1.2 M T S T PHƯƠNG PHÁP L P CH M C CHO TÌM KI M CHU I KÝ - VĂN B N [3], [4] 1.2.1 Hash Index 1.2.2 Btree Index 1.2.3 Bitmap Index 1.3 M T S H TH NG TÌM KI M HI N CĨ 1.3.1 Cơng c tìm ki m m ng internet 1.3.2 Cơng c tìm ki m máy tính cá nhân 1.4 K T LU N VÀ ĐÁNH GIÁ Trong chương tìm hi u nh ng m b n c a thơng tin hình th c lưu tr c a chúng máy tính Chương nghiên c u b n phương pháp tìm ki m thơng tin ñã ñang ñư c ng d ng lĩnh v c tài li u ñi n t Đ c bi t, nghiên c u phương pháp l p ch m c ph c v cho tìm ki m chu i ký t - văn b n, ñi n hình phương pháp Hash Index, Btree Index Bitmap Index Thơng qua vi c tìm hi u phương pháp l p ch m c này, ñ tìm đư c nh ng h n ch thao tác phương pháp đó, đ xu t tìm hi u phương pháp m i kh c ph c ñư c h n ch y v n ñ m b o k th a ñư c đ c tính tích c c có C u trúc m i ñư c ñ xu t Trie, đư c trình bày c th chương sau Bên c nh cịn tìm hi u c u trúc c a h th ng tìm ki m tìm hi u m t s cơng c tìm ki m Internet Desktop ñang phát tri n ng d ng hi n Qua nh ng ki n th c đó, b n ñã n m ñư c nh ng lý thuy t v lĩnh v c tra c u tìm ki m thơng tin, n m đư c m t s đ c m c a ng d ng tìm ki m mà hãng s n xu t l n phát tri n T đó, t ng h p ñư c nh ng lý thuy t c n thi t nh t cho vi c xây d ng m t ng d ng tương t hay k th a thư vi n mã ngu n m ñ phát tri n theo ñúng quy chu n 5 CHƯƠNG 2: TRIE - C U TRÚC D LI U TÌM KI M CHU I KÝ T Trong chương 1, ñã tìm hi u nh ng ki n th c t ng qt liên quan đ n tìm ki m thông tin văn b n phương pháp l p ch m c ñã ñư c s d ng, m i phương pháp có m t s ưu ñi m h n ch nh t ñ nh; Trong chương này, s tìm hi u v m t c u trúc d li u m i: Trie C u trúc ñư c s d ng k t h p v i c u trúc ñã ñư c l p ch m c trư c ñây nh m kh c ph c nh ng h n ch ñã nêu 2.1 C U TRÚC D LI U TRIE [5], [6] TRIE, phát âm “try”, t xu t phát t ch retrieval, ngư i phát minh Edward Fredkin; m t c u trúc d li u s d ng ký s khóa đ t ch c tìm ki m M c dù th c t có th s d ng r t nhi u h s đ phân tích khóa bên ký s , ví d có th ch n s t nhiên (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) ho c ký t b ng ch Ti ng Anh (a – z, A – Z) Gi s ph n t t n c n tìm ki m h sơ Sinh viên có ch a trư ng như: Tên SV, chuyên ngành h c, ngày sinh, Mã s Trong đó, trư ng khóa “Mã s ”, ñư c bi u di n b ng chín ký s th p phân t ñ n Đ th hi n ví d này, gi s r ng t n ch có năm ph n t Trư ng Tên Mã s c a m i năm ph n t ñư c hi n th hình bên dư i: TÊN MÃ S Hoa 951-94-1654 Thanh 562-44-2169 Anh 271-16-3624 Vy 278-49-1515 Phong 951-23-7625 Hình 2.1 Năm ph n t t ñi n [6] Chúng ta phân chia thành nhóm, nh ng ph n t có Mã s b t đ u b ng ký s “2”; nh ng ph n t b t ñ u b ng ký s “5” nhóm cu i g m ph n t b t ñ u b ng ký s Nh ng nhóm có nhi u m t ph n t s đư c phân chia s d ng ký s ti p theo khóa đ phân bi t Vi c phân chia s ñư c ti p t c cho đ n m i nhóm ch nh t m t ph n t K t qu q trình phân chia đư c mơ t m t Tree có 10 đư ng nhánh hình dư i Hình 2.2: Trie cho ph n t hình 2.1 [7] 2.2 TÌM KI M TRONG TRIE 2.2.1 Khóa có chi u dài gi ng Đ tìm ki m m t Trie cho m t ph n t v i khóa c a nó, b t đ u t g c t d n xu ng phía dư i cho ñ n h t Trie ho c cho ñ n nút ñang t m t nút 2.2.2 Khóa có chi u dài khác Trong ví d trên, t t c phím có s ký s , ký s Trong ng d ng th c t , có th s g p m t s trư ng h p mà khóa khác có s ký s khác nhau, thông thư ng, s thêm ký s ñ c bi t (thư ng #) vào cu i m i khóa 2.3 CHI U CAO C A TRIE [6], [7] Trong trư ng h p x u nh t, t nút g c ñ n nút lá, m i ký s khóa ph i t qua m t nút nhánh Khi chi u cao c a Trie t i ña, s ký s c a khóa c ng Trong trư ng h p này, Trie mã s ñư c minh h a ví d có chi u cao 10 2.4 YÊU C U KHÔNG GIAN VÀ C U TRÚC NÚT [6] 2.5 CHÈN M T PH N T VÀO TRIE Đ chèn m t ph n t A v i khóa K vào m t Trie vi c đ u tiên ta ph i ti n hành tìm ki m Trie xem có t n t i ph n t v i khóa K chưa N u trie ch a ph n t v i khóa đó, ta ti n hành thay th ph n t hi n hành v i ph n t A N u Trie không ch a ph n t A v i khóa K, ph n t A s ñư c ñưa vào Trie b ng cách s d ng th t c sau: Trư ng h p 1, th t c chèn n u k t qu tìm ki m cho khóa K k t thúc t i m t nút X b t kỳ, sau đó, khóa c a ph n t t i X khóa K s ñư c s d ng ñ xây d ng m t nhánh m i thay th cho ph n t X 8 Trong trư ng h p 2, th t c chèn k t qu tìm ki m ph n t A v i khóa K Trie k t thúc b i vi c t h t trie t i m t nút nhánh X b t kỳ khơng tìm th y k t qu Lúc ch th c hi n m t thao tác ñơn gi n thêm vào m t nút (là m t nút lá) t i v trí nút X Nút đư c thêm vào ph n t A v i khóa K 2.6 LO I B M T PH N T KH I TRIE Đ lo i b m t ph n t A v i khóa K, vi c đ u tiên ph i tìm ki m ph n t v i khóa K Trie N u khơng có ph n t v i khóa K Trie m i vi c khơng có đ th c hi n Vì th , ta gi ñ nh r ng Trie ñang thao tác có ch a ph n t A v i khóa K Các nút X đư c tìm th y ch a ph n t A s b lo i b xét t l i nút nhánh ñư ng d n t nút X quay v nút g c c a Trie S có m t s nút nhánh b lo i b n u chúng ch ch a nh t m t ph n t Vi c ñư c l p l i cho ñ n g p m t nút nhánh không b lo i b ho c cho ñ n ñã ti n hành lo i b c nút g c c a Trie Chúng ta xem ví d minh h a t i hình 2.4 2.7 TRIE NÉN VÀ CÁC BI N TH Chúng ta quan sát trie c a hình 2.2 Trong Trie này, có m t vài nút nhánh (đó B, D, F), nút ch có m t nhánh nh t Chúng ta có th c i thi n th i gian không gian lưu tr c a Trie b ng cách lo i b t t c nút nhánh mà ch có nh t m t nhánh Trie k t qu thu ñư c t thao tác ñư c g i Trie nén Khi nút nhánh ch có m t chúng s đư c di chuy n kh i Trie Ta c n lưu tr l i t t c nh ng thơng tin đ đ m b o vi c t ch c t ñi n ñư c xác Các thơng tin đư c lưu tr ba lo i c u trúc trie nén ñư c mô t dư i ñây 9 2.7.1 Trie nén ki u s 2.7.2 Trie nén lư t b 2.7.3 Trie nén v i thông tin c nh 2.7.4 Yêu c u không gian c a Trie nén 2.8 TÌM KI M TI N T VÀ M T S NG D NG 2.9 K T LU N Trong chương này, tơi nghiên c u tìm hi u v n ñ lý thuy t liên quan ñ n c u trúc d li u Trie c th bao g m nh ng ki n th c chung t ng quát v c u trúc Trie nh ng thao tác b n c u trúc d li u Qua vi c ñánh giá so sánh v i c u trúc d li u trư c, phương pháp l p ch m c ñã ñư c s d ng, lu n văn tìm đư c m t s m h n ch c a c u trúc ñ xu t bi n th nén c a trie Qua chương này, ngư i đ c có th có đư c ki n th c b n nh t v Trie, hư ng d n t ng bư c vi c th c hi n thao tác s d ng c u trúc này, ñánh giá hi u su t c a c u trúc nói chung thao tác nói riêng 10 CHƯƠNG 3: NG D NG TRIE TÌM KI M TRONG MARIADB Trong n i dung chương 2, tìm hi u sơ lư c v c u trúc Trie nh ng thao tác b n Trie C u trúc hi n ñang ñư c ng d ng ngày nhi u toàn th gi i, ñ c bi t vi c lưu tr x lý v i kho d li u l n H qu n tr s d li u mã ngu n m ngày ñư c nhi u ngư i l a ch n nh “tính m ” cho ngư i dùng Trong s đó, khơng th khơng k đ n MySQL v i c ng ñ ng ngư i s d ng r ng kh p nh ng tính h tr ưu vi t T ngư i sáng l p MySQL r i b Sun, c ng ñ ng ngư i s d ng MySQL toàn th gi i b t ñ u ti p c n v i MariaDB, m t nhánh r c a MySQL v i nh ng tính k th a hồn tồn c a MySQL đư c tích h p thêm nhi u tính m i nh m kh c ph c nh ng h n ch c a phiên b n MySQL trư c MariaDB m t h s d li u mã ngu n m hồn tồn mi n phí cho ngư i dùng, ngồi nh ng c u trúc d li u ñư c b trí v i MySQL, MariaDB cịn k t h p thêm nhi u c u trúc m i nh m t i ưu hóa q trình truy v n d li u ñ phù h p v i nh ng kho d li u l n M t c u trúc ñư c s d ng Trie (đã trình bày chương 2) 3.1 MƠ T NG D NG Đ làm rõ cho nh ng n i dung liên quan ñ n Trie ñã ñư c trình bày chương trư c, chương này, s ti n hành nghiên c u ng d ng c u trúc m i này(c u trúc Trie) truy v n c a h s d li u MariaDB Ch n MariaDB cho vi c ng d ng Trie m t h s d li u mã ngu n m hồn tồn mi n phí, đư c s d ng r ng rãi d n thay cho MySQL v n ñã chi m ñư c r t nhi u tình c m c a c ng đ ng ngư i s d ng toàn th gi i Ngồi ra, đ kh c ph c m t s l i h n ch trình s d ng MySQL MariaDB có r t nhi u c i ti n 11 m i tính h tr , t c ñ kh truy v n d li u mà m t nh ng phát tri n ghi nh n s d ng tích h p c u trúc d li u Trie h tr full-text-search Theo đó, n i dung sau ñây s trình bày nh ng ki n th c b n v h s d li u MariaDB, cách cài ñ t l y mã ngu n t MariaDB môi trư ng Ubuntu Đ làm rõ cho c u trúc Trie ñã minh h a chương 2, sau cài ñ t thành công, d a vi c nghiên c u mã ngu n c a MariaDB, s xác ñ nh c u trúc Trie ñư c ng d ng MariaDB th cài ñ t đ ti n hành t i ưu hóa thao tác truy v n h s d li u Qua đó, s bi t ñư c c u trúc Trie ñư c cài ñ t th th c ti n 3.2 MARIADB [7] 3.2.1 Gi i thi u chung [7] MariaDB, m t nhánh r c a MySQL, m t máy ch s d li u cung c p ch c thay th cho MySQL MariaDB ñư c xây d ng b i m t s tác gi ban ñ u c a MySQL v i s h tr t c ng ñ ng nhà phát tri n ph n m m mi n phí mã ngu n m Ngồi ch c c t lõi c a MySQL, MariaDB cung c p m t t p h p phong phú tính c i ti n bao g m công c lưu tr thay th , t i ưu hóa máy ch b n vá l i Phiên b n MariaDB ñư c tung h i tháng 11/2008 b i Monty Widenius, ngư i ñ ng sáng l p MySQL Widenius cơng b s phát tri n c a r nhánh MariaDB sau r i b ch c v ngư i trì cho MySQL c a Sun Cùng lúc nhà l p trình sáng l p Monty Program AB, m t cơng ty m i đ đưa r nhánh th trư ng 12 Hình 3.1 Trang ch MariaDB MariaDB m t nhánh c a MySQL, m t nh ng h qu n tr s d li u ph bi n nh t th gi i T d án nh phát tri n Web cho m t s trang Web n i ti ng uy tín, MySQL t ch ng minh b n thân m t cách v ng ch c, tin c y, nhanh chóng th t s m t gi i pháp h u hi u cho vi c s p x p lưu tr d li u 3.2.2 Các phiên b n phát tri n 3.3 TRIE TÌM KI M TRONG MARIADB 3.4 CÀI Đ T TH NGHI M 3.4.1 Cài ñ t 3.4.1.1 Thu th p mã ngu n Như ñã gi i thi u, MariaDB m t phiên b n ñư c r nhánh t MySQL, ñư c sáng l p b i nh ng ngư i m t th i tác gi c a MySQL Ngư i sáng l p hàng ñ u Monty Widenius_ngư i ñã sáng l p MySQL Monty Program AB Ngư i dùng kh p m i nơi th gi i có th truy c p vào đ a ch http://mariadb.org/ đ tìm hi u, h c h i t i v b cài ñ t mã ngu n c a MariaDB v i t t c phiên b n ñư c phát hành 13 Ngoài ch c h tr download gói cài đ t khác mơi trư ng khác nhau, http://mariadb.org/ cịn có nhi u h tr khác cho ngư i dùng q trình cài đ t ti p c n v i vi c s d ng, khai thác mã ngu n MariaDB Hình 3.7 Trang download mariadb đây, ngư i dùng có th l a ch n phiên b n phát tri n phù h p v i yêu c u c a h , h ñi u hành h tr Generic Linux, Linux Package, Solaris, Source code, Windows Các gói h tr g m source tar.gz file, gzipped tar file, MSI Package, Zip file RPM Package; CPU 64-bit ho c 32-bit Khi l a ch n gói download v i h ñi u hành phù h p, ti n hành cài đ t MariaDB, có th tham kh o mã ngu n ñ phát tri n Các phiên b n t ñư c phát tri n t 5.1 đ n 5.3 có s h tr tương ng Cách cài ñ t tương t s d ng MySQL, ngư i dùng có th tham kh o t i file Install-source ho c install-winsource gói đư c l a ch n t i v Hình 3.8 File Install-Source Install-Win-Source 14 3.4.1.2 Cài ñ t th c thi Phiên b n MariaDB m i nh t 5.3 hi n ñã có b n beta phát hành vào tháng 7/2011, nhiên ch y n đ nh nhi u tính ưu vi t, ngư i dùng có th t i b n m i nh t t i http://downloads.askmonty.org/mariadb/5.3/ ho c t i phiên b n cũ MariaDB 5.2 t i http://downloads.askmonty.org/mariadb/5.2/ hay phiên b n ñ u tiên 5.1 t i http://downloads.askmonty.org/mariadb/5.1/ Hình 3.9 Các gói cài đ t c a phiên b n MariaDB 5.2 Trong m i phiên b n đ u có nhi u gói đ cài đ t, b n c n ch n l a gói cài đ t phù h p v i yêu c u c a MariaDB ch y u đư c khai thác h ñi u hành mã ngu n m , b n thân mã ngu n m nên khơng đư c cài đ t theo ki u Wizard Cài Mariadb Ubuntu có th dùng nhóm l nh sau: shell> groupadd mysql shell> useradd -g mysql mysql shell> cd /usr/local shell> gunzip < /path/to/mysql-VERSION-OS.tar.gz | tar xvf shell> ln -s full-path-to-mysql-VERSION-OS mysql shell> cd mysql 15 shell> chown -R mysql shell> chgrp -R mysql shell> scripts/mysql_install_db user=mysql shell> chown -R root shell> chown -R mysql data shell> bin/mysqld_safe user=mysql & Và ti n hành thay th phiên b n Mariadb b n ñang s d ng câu l nh cho phù h p Sau hoàn t t vi c cài ñ t, có th can thi p vào mã ngu n đê nghiên c u, trích l c phát tri n chương trình riêng V i c u trúc d li u ñư c t ch c s d ng, ngư i dùng s ñ c trích l c đ l a ch n nh ng đo n mã c n cho q trình làm vi c c a Chúng ta s ti n hành vi c download cài ñ t th ngi m ñ i v i phiên b n MariaDB 5.2 S d ng máy o ch y h ñi u hành Ubuntu phiên b n 10.10 ñ download cài ñ t sau: - Dùng l nh ch y l y khóa c n thi t (apt –key) - Thêm l nh yêu c u c a h th ng vào file Source.list - C p nh p gói - Ti n hành cài đ t MariaDB ubuntu - Cài gói h tr khai thác 16 Hình 3.10 Mã ngu n đư c m b ng Dev-C 3.4.2 Th nghi m Đ th ngh m, ti n hành cài ñ t h ñi u hành Ubuntu 10.10, mariaDB 5.2 C u trúc d li u Trie ñây ñư c s d ng m t Trie index tích h p ch c Full-Text-Search Sau cài ñ t, kh i đ ng: sudo /etc/init.d/mysql restart, Màn hình thành cơng n u có l nh báo Hình 3.11 Kh i ñ ng MariaDB Trong ph m vi lu n văn, ch d ng l i th nghi m tìm ki m m t chu i Trie MariaDB, c u trúc Trie ñư c xây d ng lưu tr b ng m t danh sách nút liên k t v i nhau, ti n hành tìm ki m m t chu i danh sách nút 17 Hình 3.12 Mã ngu n MariaDB đư c s d ng sau cài ñ t thành cơng Sau cài đ t thành cơng can thi p vào mã ngu n c a MariaDB, ta ti n hành tìm hi u vi c ng d ng c u trúc d li u Trie MariaDB Trong h qu n tr s d li u MariaDB, c u trúc d li u Trie ñư c s d ng tích h p ch c full-text-search Vi c ng d ng Trie b n mô t sau: C u trúc c a node Kh i t o Trie Phân b m t m ng tr s s d ng 18 Phân b nút m i đánh d u nút g c c a Trie So sánh, ñ i chi u chu i ñang truy v n chu i t i nút, tr v n u tìm th y, ngư c l i tr v V i c u trúc ñư c xây d ng b n trình bày trên, Trie h tr ch c fulltext-search MariaDB, phát huy tên tu i MySQL đư c đơng đ o ngư i s d ng th gi i s d ng K t qu th nghi m MariaDB, v i d li u c th T o s d li u “vidu” v i b ng “staff” Staff bao g m trư ng: pk_id, firstname, lastname, age, details Hình 3.13 T o s d li u b ng d li u 19 Đánh ch m c, nh p d li u cho b ng D li u s đư c dùng làm m u tìm ki m Hình 3.14 Nh p d li u cho b ng Sau hoàn t t vi c nh p d li u ta ti n hành thao tác truy v n b ng d li u v a nh p Hình 3.15 K t qu truy v n 3.5 ĐÁNH GIÁ 3.5.1 K t qu ñ t ñư c MariaDB m t h qu n tr s d li u mã ngu n m có nhi u phiên b n, h tr nhi u h ñi u hành v i nhi u gói cài đ t khác nên phù h p cho nhi u ñ i tư ng s d ng 20 MariaDB có hi u su t cao s d ng, v n đ ngư i đ c có th tham kh o ý ki n c a c ng ñ ng MySQL MariaDB toàn th gi i Chương ñã hư ng d n sơ lư c cách t i cài ñ t MariaDB ñ nghiên c u ng d ng c a c u trúc d li u Trie h qu n tr s d li u Ngư i đ c có th d a vào thơng tin t i đ l y môi trư ng, công c phát tri n làm n n nghiên c u cho ng d ng th c t c a c u trúc d li u Trie 3.5.2 Ưu ñi m h n ch MariaDB m t h qu n tr mã ngu n m nên t t c phiên b n cài đ t mã c a đ u mi n phí, v i MySQL, MariaDB có nh hư ng l n th gi i Vi c MariaDB ñưa vào s d ng k t h p c u trúc d li u Trie v i c u trúc d li u khác dùng phương pháp l p ch m c cũ m i k t h p m t d u hi u ñánh d u vi c kh ng ñ nh c u trúc d li u th i gian s p t i th trư ng cơng ngh Tuy nhiên, s m i l mà c MariaDB c u trúc d li u Trie đ u có nh ng h n ch nh t ñ nh MariaDb Trie h u xa l tài li u h tr nh ng công c , c u trúc khác Trong MariaDB ch m i đưa Trie vào s d ng s d ng k t h p v i c u trúc khác nên ngư i dùng mu n nghiên c u c u trúc Trie d a MariaDB ph i trích l c xây d ng l i h u ph n l n 3.5.3 K t lu n N i dung chương ñã cài ñ t ñư c MariaDB ño n chương trình đư c rút trích hồn thi n đ mơ t c th cho c u trúc Trie ñư c s d ng MariaDB M t c u trúc d li u cịn m i chưa đư c s d ng ñ i trà hi n nay; Ngồi vi c ch n MariaDB đ minh h a cho vi c s d ng câu trúc m i MariaDB m t l a ch n ti p theo cho MySQL tr tu i (phiên b n beta m i nh t v a ñư c phát hành vào tháng 7/2011) V i s m i m th i gian ph m vi h n ch , hy v ng th i gian t i tác gi s phát tri n nghiên c u sâu v c u trúc Trie phát tri n ng d ng th c t cho c u trúc 21 K T LU N VÀ KI N NGH Trong lu n văn, tơi tìm hi u nghiên c u ñư c c u trúc d li u Trie, m t s thao tác b n Trie ñ c bi t cách nén Trie nh m tăng hi u qu s d ng c u trúc v i thao tác Trie đư c nén như: tìm ki m, chèn, xóa, s a,…Bên c nh đó, lu n văn cịn tìm hi u v ki n th c liên quan đ n tìm ki m thơng tin văn b n, phương pháp l p ch m c c u trúc d li u ñã t ng ñư c s d ng trư c ñây, so sánh c u trúc v i nhau, tìm nh ng m t tích c c nh ng h n ch Trong trình th c hi n, tơi hi u b n v c u trúc d li u này; hi n nay, c u trúc chưa ñư c ph bi n Vi t nam có m t s tính th t s hi u qu không th ph nh n, th , lu n văn s tài li u b ích cho b n sinh viên nói riêng nh ng ngư i nghiên c u v cơng ngh thơng tin nói chung có thêm tài li u ñ tham kh o bư c ban ñ u ti n hành nghiên c u, h c t p tri n khai xây d ng ng d ng th c t trư ng h p mu n ti p c n ñi sâu khai thác Trie Do th i gian, ph m vi c a lu n văn ki n th c cá nhân gi i h n c ng thêm c u trúc d li u m i tu i c a MariaDB tr nên lu n văn ch d ng l i m c tìm hi u k v m t lý thuy t liên quan ñ n c u trúc TRIE thao tác Trie; Tìm hi u cách s d ng TRIE h qu n tr s d li u mã ngu n m MariaDB ñ ch ng minh r ng c u trúc hi n ñang ñư c s d ng ngày ph bi n nhi u qu c gia th gi i Tuy nhiên, lu n văn chưa th th c nghi m tr c ti p ñ so sánh Trie v i câu trúc khác MariaDB, ñây m t ñi m h n ch hư ng phát tri n th i gian s p ñ n v i mong mu n có ñư c m t tài li u hoàn ch nh v Trie ñ cung c p cho ngư i s d ng T nh ng h n ch thi u sót trên, ñ lu n văn ñư c ti p t c phát tri n theo ñ nh hư ng r t mong nh n đư c s đóng góp c a nhà phát tri n lĩnh v c tìm ki m thơng tin, s tr giúp v ngu n thơng tin đ hồn thi n ph n ng d ng h th ng vào th c t s d ng ph c v cho nhu c u hàng tri u ngư i s d ng nư c ... tri n nghiên c u sâu v c u trúc Trie phát tri n ng d ng th c t cho c u trúc 21 K T LU N VÀ KI N NGH Trong lu n văn, tơi tìm hi u nghiên c u đư c c u trúc d li u Trie, m t s thao tác b n Trie. .. Btree Index nghiên c u c u trúc d li u Trie, bi n th c a Trie, thao tác b n c u trúc d li u D a nghiên c u lý thuy t đó, đ tài đưa đư c tài li u Ti ng vi t v c u trúc d li u Trie ph c v cho vi c... này, s tìm hi u v m t c u trúc d li u m i: Trie C u trúc ñư c s d ng k t h p v i c u trúc ñã ñư c l p ch m c trư c ñây nh m kh c ph c nh ng h n ch ñã nêu 2.1 C U TRÚC D LI U TRIE [5], [6] TRIE,