1. Trang chủ
  2. » Luận Văn - Báo Cáo

Ứng dụng độ tương đồng chuỗi trong chống trùng lặp cho các tập dữ liệu văn bản có cấu trúc dạng bảng

12 134 0

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 12
Dung lượng 1,24 MB

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

Nội dung

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TRƯƠNG LÊ QUÂN ỨNG DỤNG ĐỘ TƯƠNG ĐỒNG CHUỖI TRONG CHỐNG TRÙNG LẶP CHO CÁC TẬP DỮ LIỆU VĂN BẢN CÓ CẤU TRÚC DẠNG BẢNG Ngành: Công nghệ T

Trang 1

ĐẠI HỌC QUỐC GIA HÀ NỘI

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

TRƯƠNG LÊ QUÂN

ỨNG DỤNG ĐỘ TƯƠNG ĐỒNG CHUỖI TRONG CHỐNG TRÙNG LẶP CHO CÁC TẬP DỮ LIỆU VĂN BẢN CÓ CẤU TRÚC DẠNG BẢNG

Ngành: Công nghệ Thông tin Chuyên ngành: Kỹ thuật phần mềm

Mã số: 60.48.01.03

LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN

NGƯỜI HƯỚNG DẪN KHOA HỌC: Tiến sĩ Hoàng Xuân Tùng

Trang 2

Lời cảm ơn

Tôi xin chân thành cảm ơn TS Hoàng Xuân Tùng, người đã tận tình hướng dẫn tôi trong suốt quá trình làm luận văn Những ý kiến đóng góp và sự chỉ bảo của thầy trong

quá trình này là kim chỉ nam giúp tôi hoàn thành mục tiêu nghiên cứu của mình

Tôi xin cảm ơn tập thể thầy cô giáo trường Đại học Công nghệ - Đại học Quốc gia

Hà Nội đã giảng dạy và tạo điều kiện tốt nhất cho tôi trong thời gian tôi học tập tại

trường cũng như khi nghiên cứu và làm luận văn

Tôi cũng xin được gửi lời cảm ơn tới những người đàn anh cùng thầy hướng dẫn những người đã cho tôi những lời khuyên cần thiết và sự động viên của mọi người trong

quá trình làm luận văn của mình

Cuối cùng tôi xin gửi lời cảm ơn tới gia đình và bạn bè những người luôn đứng sau cổ vũ cho tôi trong suốt quãng thời gian học tập và làm luận văn

Trang 3

Lời cam đoan

Tôi xin cam đoan những gì viết trong luận văn này là sản phẩm của cá nhân tôi, không sao chép từ người khác Trong toàn bộ luận văn những điều được trình bày hoặc

là của cá nhân tôi hoặc là được trích dẫn từ nhiều nguồn tài liệu Tất cả tài liệu tham

khảo đều có xuất xứ rõ ràng và được trích dẫn hợp pháp Tôi xin hoàn toàn chịu trách

nhiệm và mọi hình thức kỷ luật theo quy định cho lời cam đoan của mình

Trang 4

Mở đầu

Trong luận văn này tôi trình bày các phương pháp giải quyết khó khăn khi thực hiện các phương pháp chống trùng lặp thông thường trên các tập dữ liệu văn bản có cấu

trúc dạng bảng Khó khăn đó xuất hiện khi có lỗi nhập liệu, sự sai sót khi gõ máy dẫn

tới việc những phương pháp thông thường không thể tìm được những dữ liệu bị trùng

lặp Để giải quyết khó khăn trên tôi đề xuất một phương pháp chống trùng lặp dựa vào

cách tính độ tương đồng chuỗi nhằm đạt được kết quả cao nhất khi tìm ra các dữ liệu

trùng lặp trên các tập dữ liệu văn bản khi xảy ra lỗi nhập liệu Bằng phương pháp tính

độ tương đồng này những dữ liệu khi được nhập vào trong tập văn bản cho dù có xảy ra

lỗi nhập liệu vẫn có thể bị phát hiện và xử lý

Mặc dù môi trường thử nghiệm còn thiếu thốn, các tập dữ liệu đầu vào còn ít và

cả phương pháp thực nghiệm độ tương đồng nhưng kết quả thực nghiệm đã chỉ ra rằng:

phương pháp chống trùng lặp ứng dụng độ tương đồng đã giải quyết được vấn đề nhập

liệu Tỉ lệ sai khi nhập liệu càng lớn thì hiệu suất của phương pháp này càng cao Ngay

cả khi không xảy ra lỗi nhập liệu thì hiệu suất của phương pháp mới cũng ngang bằng

với phương pháp cũ Điểm yếu là thời gian chạy, tôi chưa thể thực nghiệm những

phương pháp có thể giải quyết được vấn đề thời gian đã nêu trong lý thuyết

Để có thể đánh giá được một cách công bằng nhất cần những thử nghiệm lớn hơn với những phương pháp tối ưu hơn Tuy nhiên tôi vẫn có thể kết luận được trong luận

văn này chính là: Phương pháp chống trùng lặp ứng dụng độ tương đồng chuỗi đã phần

nào giải quyết được những khó khăn khi xử lý dữ liệu trên các tập văn bản có cấu trúc

Trang 5

Mục Lục

DANH MỤC CÁC TỪ VIẾT TẮT 7

DANH SÁCH HÌNH VẼ 8

DANH SÁCH BẢNG 9

Chương 1: Trùng lặp dữ liệu và các phương pháp chống trùng lặp 10

1.1 Các vấn đề trùng lặp dữ liệu 10

1.2 Chống trùng lặp dữ liệu 11

1.2.1 Khái niệm 11

1.2.2 Lợi ích của chống trùng lặp dữ liệu 12

1.3 Ứng dụng của chống trùng lặp dữ liệu 13

1.3.1 Backup dữ liệu 13

1.3.2 Nhân bản dữ liệu 14

1.3.3 Lưu trữ dữ liệu 14

Chương 2: Phân loại các phương pháp chống trùng lặp dữ liệu 17

2.1 Các phương pháp chống trùng lặp phân chia theo dữ liệu 17

2.1.1 File Base Compare 17

2.1.2 File Level Hashing 17

2.1.3 Block Level Hashing 18

2.1.4 Sub Block Level Hashing 19

2.1.5 Delta Versioning 20

2.1.6 So sánh các phương pháp chống trùng lặp 21

2.2 Các phương pháp chống trùng lặp theo cách thức thực hiện 23

2.2.1 Inline 23

2.2.2 Post-process 24

2.2.3 Client Base 25

2.2.4 Target-base 25

2.2.5 NAS-based 26

2.2.6 SAN-based 26

2.2.7 Global 27

2.3 Các đoạn có chiều dài cố định và các đoạn có chiều dài linh hoạt 28

Chương 3 Ứng dụng độ tương đồng chuỗi trong chống trùng lặp dữ liệu 31

Trang 6

3.1 Vấn đề của các phương pháp chống trùng lặp cho các tập dữ liệu văn bản

có cấu trúc dạng bảng 31

3.2 Ứng dụng của độ tương đồng chuỗi vào chống trùng lặp 32

3.2.1 Sử dụng khoảng cách chuỗi 32

3.2.2 Phương pháp sử dụng phân cụm k-means 36

3.2.3 Phương pháp sử dụng thuật toán LSH (locality sensitive hashing) 39

Chương 4 Thực nghiệm và đánh giá kết quả 42

4.1 Tổng quan về thử nghiệm 42

4.2 Thử nghiệm 1 43

4.3 Thử nghiệm 2 46

4.4 Đánh giá kết quả 48

4.5 Các thử nghiệm khác 49

4.5.1 Thử nghiệm chọn cận dưới bằng cách thống kê 49

4.5.2 Thử nghiệm đánh giá tác động của cận dưới 50

4.6 Thực nghiệm thực tế 52

4.7 Kết luận và hướng phát triển tương lai 53

4.7.1 Kết luận 53

4.7.2 Hướng phát triển tương lai 54

TÀI LIỆU THAM KHẢO 55

Tiếng Anh 55

Phụ lục 57

Trang 7

DANH MỤC CÁC TỪ VIẾT TẮT

Trang 8

DANH SÁCH HÌNH VẼ

Hình 1.1 Chống trùng lặp dữ liệu [3] 12

Hình 1.2 Lưu trữ dữ liệu khi không sử dụng chống trùng lặp [3] 15

Hình 1.3 Lưu trữ dữ liệu khi sử dụng chống trùng lặp [3] 15

Hình 2.1 File Base Compare 17

Hình 2.2 Quy trình hoạt động của File Level Hashing 18

Hình 2.3 Quy trình làm việc của Block Level Hashing 19

Hình 2.4 Chia nhỏ File 19

Hình 2.5 Dữ liệu sau khi xóa block/sub-block 20

Hình 2.6 Inline 24

Hình 2.7 Post-process 25

Hình 2.8 Client Base 25

Hình 2.9 Target-base 26

Hình 2.10 NAS-Based 26

Hình 2.11 SAN-based 27

Hình 2.12 Global 28

Hình 2 13 Chia các đoạn có chiều dài cố định [1] 29

Hình 2 14 Chia các đoạn có độ dài linh hoạt [1] 29

Hình 3.1 Sử dụng phương pháp chống trùng lặp bình thường 31

Hình 3.2 Quy trình chống trùng lặp sử dụng độ tương đồng chuỗi 33

Hình 3.3 Quy trình đánh giá độ tương đồng chuỗi 33

Hình 3 4 Lưu đồ của phương pháp tương đồng chuỗi 35

Hình 3.5 Thuật toán K-means 36

Hình 3.6 Lưu đồ của thuật toán K-means 37

Hình 3.7 Lưu đồ mới của phương pháp sử dụng K-means 38

Hình 3 8 Mô hình thuật toán LSH [10] 40

Hình 3 9 Lưu đồ của phương pháp ứng dụng LSH 41

Hình 4.1 Kết quả thu được sau thực nghiệm 1 44

Hình 4.2 Kết quả thu được sau thực nghiệm 2 47

Hình 4.3 Biểu đồ két quả thực nghiệm 51

Trang 9

DANH SÁCH BẢNG

Bảng 2.1 So sánh các phương pháp 23

Bảng 4.1 Sự thay đổi trong file đầu vào thử nghiệm 1 44

Bảng 4.2 Kết quả của thực nghiệm 1 45

Bảng 4.3 Sự thay đổi trong file gốc thử nghiệm 2 46

Bảng 4.4 Kết quả của thực nghiệm 2 48

Bảng 4.5 File đầu vào thực nghiệm và sự thay đổi của cận dưới 50

Bảng 4.6 Bảng kết quả của thực nghiệm tác động của cận dưới 52

Trang 10

Chương 1: Trùng lặp dữ liệu và các phương pháp chống trùng lặp

1.1 Các vấn đề trùng lặp dữ liệu

Thông tin là một phần quan trọng trong công nghệ thông tin, bất cứ công ty hay tổ chức nào muốn hoạt động tốt nhất thì cần phải có cách sử dụng thông tin một cách hợp

lý Chính vì thế mà dữ liệu – thứ tạo nên những thông tin cần phải được quản lý một

cách tốt nhất và được bảo vệ một cách hiệu quả, tuy nhiên khi lượng dữ liệu càng lớn

thì yêu cầu của nó về không gian lưu trữ và việc quản lý nó cũng ngày một gia tăng Sự

gia tăng của dữ liệu dẫn tới một vấn đề hết sức nghiêm trọng khác, đó chính là sự trùng

lặp dữ liệu

Trùng lặp dữ liệu là việc những dữ liệu có nội dung giống nhau nhưng vì nhiều nguyên nhân khác nhau mà bị lưu lại nhiều lần Một trong những hậu quả mà trùng lặp

dữ liệu gây ra chính là hao phí cho không gian lưu trữ Dữ liệu trùng lặp càng lớn thì

hao phí càng nhiều Ví dụ như một người bán hàng gửi 1 bản giới thiệu sản phẩm khoảng

10mb cho khoảng 500 người mỗi bản báo cáo phải chứa trong 1 file khác nhau cho dù

nội dung của chúng phần lớn là giống nhau, lúc này dung lượng phải lưu trữ chỉ khoảng

5gb, đương nhiên đó không phải một con số lớn thế nhưng nếu phải gửi 10 bản giới

thiệu, 100 bản giới thiệu thì sao, đó chắc chắn không phải là con số nhỏ nữa Hơn nữa

phần lớn dữ liệu là giống nhau khiến cho việc lưu trữ dữ liệu trở nên hoang phí, những

block giống nhau lại được lưu trữ nhiều lần không những khiến chi phí cho không gian

lưu trữ tăng lên nhanh chóng mà còn khiến cho chi phí khi backup dữ liệu tăng lên tới

mức chóng mặt (Chi tiết có thể xem trong [1])

Theo [2] thì không chỉ trong những công ty lớn xảy ra việc trùng lặp dữ liệu mà trên cả những đám mây Đám mây là những hồ dữ liệu lớn nơi các dữ liệu được lưu trữ

Thay vì việc phải sử dụng một hay nhiều máy chủ thì tất cả dữ liệu trong đám mây đều

được ảo hóa thông qua internet Điểm mạnh của việc lưu trữ đám mây chính là ở tính

mềm dẻo, khả năng tính toán, tính đàn hồi và co giãn tài nguyên, người sử dụng không

cần phải tính toán dung lượng lưu trữ mà chỉ cần trả tiền là sẽ có dung lượng cần thiết

Chính vì thế mà việc trùng lặp dữ liệu xảy ra trong đám mây lại càng nhiều Lấy ví dụ

đơn giản một ông A yêu thích nhạc cổ điển, ông ta đưa một file X lên đám mây, ta lại

có thêm một ông B cũng rất yêu thích nhạc cổ điển trùng hợp là ông ta cũng yêu thích

bài X và cũng đưa nó lên đám mây Hiện giờ trong đám mây sẽ có 2 bài X và cùng phải

lưu trữ hai bài này Như vậy chi phí cho cùng một file, cùng một dữ liệu sẽ tốn gấp đôi,

Trang 11

TÀI LIỆU THAM KHẢO

Tiếng Anh

[1] S W Mark R.Coppock, Data Deduplication For Dummies, 2011

[2] D S S Deepak Mishra, Comprehensive study of data de-duplication, 2013

[3] A N Christopher Poelker, Storage Area Network for Dummies, 2011

[4] W J B Dutch T Meyer, A Study of Practical Deduplication, 2011

[5] C Poelker, "computerworld.com," [Online] Available:

http://www.computerworld.com/article/2475300/cloud-security/data- deduplication-in-the-cloud-explained part-three implementation-methods.html

[6] D Lin, An Information-Theoretic Definition of Similarity

[7] G Navarro, A guided tour to approximate string matching, 2001

[8] N S N D M M C D P R S A Y W Tapas Kanungo, "An Efficientk-Means Cụming Algorithm:Analysis and Implementation"

[9] M Bilenko, "Learnable Similarity Functions and Their Applications to Record Linkage and Cụming," 2003

[10] J Leskovec [Online] Available:

http://web.stanford.edu/class/cs246/slides/03-lsh.pdf

[11] J Z J Z Xinran Jiang, Enhance Data De-Duplication Performance With Multi-Thread Chunking, 2014

[12] J M S J G L C Y Y W K Ider Lkhagvasuren, Byte-index Chunking Algorithm for Data Deduplication System, 2013

[13] S Y P J G L Y W K Ho Min Jung, Efficient Data Deduplication System Considering File, 2012

[14] A B A N P G Vandana Dixit Kaushik, An Efficient Algorithm for De-duplication of, 2012

[15] R K A K A O J L S S Ahmed El-Shimi, Primary Data Deduplication – Large Scale Study and System Design, 2012

Trang 12

[16] K E D B Mark Lillibridge, Improving Restore Speed for Backup Systems that Use Inline, 2013

[17] Y J D H D Guanlin Lu, Frequency Based Chunking for Data De-Duplication, 2010

[18] L Whitehouse, HP StoreOnce Deduplication Software, 2010

[19] S S J L Biplob Debnath, ChunkStash: Speeding up Inline Storage Deduplication using Flash Memory, 2010

[20] L D R Amatruda, Back up and recovery: accelerating efficiency and driving down IT cost using data deduplication, 2010

[21] P Bille, Asurvey on tree edit distance and related problems, 2004

Ngày đăng: 07/04/2018, 23:36

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

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

w