1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Xây dựng data lakehouse cho hệ thống search engine

76 76 2

Đ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

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH ĐỒ ÁN TỐT NGHIỆP NGÀNH KỸ THUẬT DỮ LIỆU XÂY DỰNG DATA LAKEHOUSE CHO HỆ THỐNG SEARCH ENGINE GVHD: Th.S HUỲNH XUÂN PHỤNG SVTH: PHẠM VĂN HÙNG TRỊNH CƠNG VIỄN SKL009615 KHĨA 2018 - 2022 TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH KHOA CƠNG NGHỆ THƠNG TIN PHẠM VĂN HÙNG - 18133018 TRỊNH CÔNG VIỄN - 18133061 Đề Tài: XÂY DỰNG DATA LAKEHOUSE CHO HỆ THỐNG SEARCH ENGINE KHÓA LUẬN TỐT NGHIỆP NGÀNH KỸ THUẬT DỮ LIỆU GIÁO VIÊN HƯỚNG DẪN TS HUỲNH XUÂN PHỤNG KHÓA 2018 – 2022 TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH KHOA CƠNG NGHỆ THƠNG TIN PHẠM VĂN HÙNG - 18133018 TRỊNH CÔNG VIỄN - 18133061 Đề Tài: XÂY DỰNG DATA LAKEHOUSE CHO HỆ THỐNG SEARCH ENGINE KHÓA LUẬN TỐT NGHIỆP NGÀNH KỸ THUẬT DỮ LIỆU GIÁO VIÊN HƯỚNG DẪN TS HUỲNH XUÂN PHỤNG KHÓA 2018 - 2022 ĐẠI HỌC SƯ PHẠM KỸ THUẬT CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM TP.HCM Độc lập – Tự – Hạnh Phúc PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN Họ tên Sinh viên 1: Phạm Văn Hùng MSSV: 18133018 Họ tên Sinh viên 2: Trịnh Công Viễn MSSV: 18133061 Ngành: Kỹ thuật liệu Tên đề tài: Xây dựng Data Lakehouse cho hệ thống Search Engine Họ tên giáo viên hướng dẫn: Huỳnh Xuân Phụng NHẬN XÉT Về nội dung đề tài khối lượng thực hiện: Ưu điểm: Khuyết điểm: Đề nghị cho bảo vệ hay không ? Đánh giá loại: Điểm: Tp Hồ Chí Minh, ngày tháng năm 2022 Giáo viên hướng dẫn (Ký & ghi rõ họ tên) ĐẠI HỌC SƯ PHẠM KỸ THUẬT CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM TP.HCM Độc lập – Tự – Hạnh Phúc PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN Họ tên Sinh viên 1: Phạm Văn Hùng MSSV: 18133018 Họ tên Sinh viên 2: Trịnh Công Viễn MSSV: 18133061 Ngành: Kỹ thuật liệu Tên đề tài: Xây dựng Data Lakehouse cho hệ thống Search Engine Họ tên giáo viên phản biện: Lê Thị Minh Châu NHẬN XÉT Về nội dung đề tài khối lượng thực hiện: Ưu điểm: Khuyết điểm: Đề nghị cho bảo vệ hay không ? Đánh giá loại: Điểm: Tp Hồ Chí Minh, ngày tháng năm 2022 Giáo viên phản biện (Ký & ghi rõ họ tên) LỜI CẢM ƠN Một khóa luận tốt nghiệp trơi qua ngắn ngủi để lại nhiều cảm xúc Chúng xin gửi lời cảm ơn chân thành đến thầy Huỳnh Xuân Phụng Thầy tận tình hướng dẫn cung cấp tài liệu cần thiết cho chúng tơi Trong suốt q trình thực khóa luận, Thầy theo dõi tiến độ, giải đáp thắc mắc chia sẻ giúp vượt qua khó khăn Chúng tơi vơ trân q tâm huyết trách nhiệm Thầy công việc giảng dạy truyền đạt kiến thức đến sinh viên Chúng xin gửi lời cảm ơn sâu sắc đến Thầy Cô khoa Công nghệ Thông tin - Đại học Sư phạm Kỹ thuật TP.HCM đồng hành hỗ trợ chúng tơi suốt q trình học tập thực khóa luận Chúng tơi xin cảm ơn trường Sư phạm Kỹ thuật tạo nhiều điều kiện thuận lợi cho hoạt động phục vụ học tập sinh viên chúng tôi, đặc biệt thư viện số với nguồn tri thức vô tận Chúng gửi lời cảm ơn chân thành đến bạn khóa 2018 ngành Kỹ thuật liệu, cảm ơn góp ý chia sẻ quý giá từ tất bạn Cảm ơn động viên từ bạn để nhóm chúng tơi giữ vững tinh thần thực khóa luận tiến độ Chúng tơi ln ghi nhớ giá trị cốt lõi nhà trường, Thầy cô bạn bè mang đến để làm động lực thúc đẩy thân phát triển hoàn thiện Cơng việc chắn có khó khăn khổ luyện thành nhân, rõ ràng thân có bước tiến kiến thức, tư duy, kỹ năng, cách làm việc mối quan hệ ứng xử với người Chúng nhận thấy thân có khuyết điểm thiếu sót cần cố gắng cải thiện để tốt hơn, hướng tới mục tiêu lớn tương lai Trường ĐH Sư Phạm Kỹ Thuật TP.HCM Khoa: Công nghệ thông tin ĐỀ CƯƠNG TIỂU LUẬN CHUYÊN NGÀNH Họ tên Sinh viên 1: Phạm Văn Hùng MSSV: 18133018 Họ tên Sinh viên 2: Trịnh Cơng Viễn MSSV: 18133061 Thời gian làm khóa luận: Từ: 23/2/2022 Đến: 06/2022 Chuyên ngành: Kỹ thuật liệu Tên luận văn: Xây dựng Data Lakehouse cho hệ thống search engine GV hướng dẫn: Ts Huỳnh Xuân Phụng Nhiệm vụ khóa luận: Tìm hiểu sở lý thuyết Data lakehouse, Apache Hadoop, Superset, Search Engine Tìm hiểu cách xây dựng Data lakehouse tảng Hadoop sử dụng công cụ cần thiết dựa sở lý thuyết tìm hiểu Thực xây dựng xây dựng Data Lakehouse cho hệ thống Search Engine: quản lý loại tài liệu: word, pdf, csv, liệu từ SQL server, MySQL, Mongodb, dựa kiến thức tìm hiểu Đề cương viết khóa luận: CHƯƠNG MỞ ĐẦU 1.1 TÍNH CẤP THIẾT CỦA ĐỀ TÀI 1.2 MỤC TIÊU CỦA ĐỀ TÀI 1.3 CÁCH TIẾP CẬN VÀ PHƯƠNG PHÁP NGHIÊN CỨU 1.4 KẾT QUẢ DỰ KIẾN ĐẠT ĐƯỢC 1.5 BỐ CỤC CỦA BÀI BÁO CÁO CHƯƠNG TỔNG QUAN VỀ SEARCH ENGINE 2.1 KHÁI NIỆM VỀ SEARCH ENGINE 2.2 CẤU TRÚC VÀ ĐẶC TÍNH CỦA SEARCH ENGINE 2.3 LỢI ÍCH CỦA SEARCH ENGINE 2.4 DATA LAKEHOUSE CHO HỆ THỐNG SEARCH ENGINE CHƯƠNG TỔNG QUAN VỀ DATA LAKEHOUSE 3.1 KHÁI NIỆM VỀ DATA LAKEHOUSE 3.2 CÔNG NGHỆ SỬ DUNG TRONG DATA LAKEHOUSE 3.3 CÁC ĐẶC ĐIỂM CỦA DATA LAKEHOUSE 3.4 LỢI ÍCH CỦA DATA LAKEHOUSE CHƯƠNG KHẢO SÁT HIỆN TRẠNG 4.1 DATA LAKEHOUSE – KIẾN TRÚC DỮ LIỆU HIỆN ĐẠI 4.2 NỀN TẢNG DATABRICKS LAKEHOUSE 4.3 VAI TRÒ CỦA SEARCH ENGINE TRONG THỜI ĐẠI HIỆN NAY 4.4 CÁC SEARCH ENGINE PHỔ BIẾN HIỆN NAY 4.5 HỆ THỐNG SEARCH ENGINE CỦA GOOGLE CHƯƠNG TỔNG QUAN VỀ APACHE HADOOP, APACHE SUPERSET 5.1 TỔNG QUAN VỀ APACHE HADOOP 5.1.1 Khái niệm Apache Hadoop 5.1.2 Cấu trúc Apache Hadoop 5.1.3 Ưu điểm Apache Hadoop 5.2 TỔNG QUAN VỀ APACHE SUPERSET 5.2.1 Khái niệm Apache Superset 5.2.2 Cấu trúc Apache Superset 5.2.3 Ưu điểm Apache Superset CHƯƠNG XÂY DỰNG DATA LAKE TRÊN NỀN TẢNG HADOOP 6.1 NHU CẦU SỬ DỤNG HADOOP CHO HỆ THỐNG DATA LAKE 6.2 KIẾN TRÚC TỔNG QUAN CỦA HỆ THỐNG DATALAKE TRÊN HADOOP CHƯƠNG XÂY DỰNG DATA LAKEHOUSE CHO HỆ THỐNG SEARCH ENGINE 7.1 XÂY DỰNG HỆ THỐNG 7.1.1 Kiến trúc tổng quan Data lakehouse cho hệ thống Search Engine 7.1.2 Tạo máy ảo Ubuntu AWS Cloud 7.1.3 Cài đặt công cụ hỗ trợ truy cập 7.1.4 Cài đặt Apache Hadoop 7.1.5 Cài đặt Apache Superset 7.1.6 Cài đặt MYSQL 7.2 KẾT NỐI MYSQL VỚI SUPERSET 7.3 KẾT QUẢ THỰC HIỆN 7.3.1 Hình thành HDFS nơi để load liệu lên 7.3.2 Tạo lớp MetaData cho liêu Data Lakes 7.3.3 Thiết kế sử dụng công cụ truy vấn cung cấp thực thi SQL, thực thi công cụ hỗ trợ BI (Business Intelligence) 7.3.4 Áp dụng Machine Learning liệu với thuật toán Recommendation 7.4 SO SÁNH VỚI NHỮNG DẠNG DATA WAREHOUSE TRUYỀN THỐNG 7.4.1 Ưu điểm 7.4.2 Hạn chế CHƯƠNG 8: KẾT LUẬN 8.1 KẾT QUẢ ĐẠT ĐƯỢC 8.2 HẠN CHẾ 8.3 HƯỚNG PHÁT TRIỂN TÀI LIỆU THAM KHẢO KẾ HOẠCH THỰC HIỆN STT Thời gian Công việc 19/3/2022 Lựa chọn xác định đề tài khóa Ghi luận 26/3/2022 Tìm hiểu vấn đề chung liên quan đến đề tài (tài liệu, tốn,…) 2/4/2022 Tìm hiểu lý thuyết Cloud 9/4/2022 Tìm hiểu lý thuyết Hadoop 12/4/2022 Tìm hiểu lý thuyết HDFS 19/4/2022 Tìm hiểu lý thuyết Superset 30/4/2022 Cài đặt cụm Hadoop máy ảo 5/5/2022 Cài đặt Apache Superset cụm Quay video demo máy cài Hadoop 10/5/2022 Cài đặt xây dựng DataLake cụm Hadoop 10 14/5/2022 Cài đặt Supertset máy Ubuntu 11 20/5/2022 Kết nối hệ thống lại với gồm: Apache Hadoop, Apache Superset 12 11/6/2022 Hình thành số metadata mẫu Quay video demo cho hệ thống 13 17/6/2022 Chuyển đổi MetaData để load vào sở liệu 14 19/6/2022 Thực thi cơng cụ BI 15 21/6/2022 Hồn thiện, rà sốt báo cáo hồn Hồn thành báo chỉnh phần ứng dụng Quay video demo cáo ứng dụng 7.2 KẾT NỐI MYSQL VỚI SUPERSET Tạo Database HÌNH 7.61 Tạo Database Khi thành cơng nhận thơng báo HÌNH 7.62 Thơng báo kết nối thành cơng với Database 7.3 KẾT QUẢ THỰC HIỆN 7.3.1 Hình thành HDFS nơi để load liệu lên để tạo thành Data Lake Một số thư mục lưu trữ liệu: 46 HÌNH 7.63 Nơi lưu trữ file HDFS HÌNH 7.64 Nơi lưu trữ file HDFS HÌNH 7.65 Nơi lưu trữ file HDFS 47 HÌNH 7.66 Nơi lưu trữ file HDFS 7.3.2 Tạo lớp MetaData cho liệu Data Lakes MetaData Fsimage với đầy đủ thơng tin cho file có hệ thống Từ file ta tiến hành phân tích sử dụng câu truy vấn SQL để tạo nhiều lớp MetaData khác phục vụ cho BI (Business Intelligence) ML (Machine Learning) HÌNH 7.67 File Metadata Fsimage 48 MetaData Name lưu trữ tên File thơng số cịn lại phục vụ cho việc tìm kiếm theo tên HÌNH 7.68 File Metadata Name MetaData Format_file lưu trữ định dạng File thông số cịn lại phục vụ cho việc tìm kiếm theo định dạng HÌNH 7.69 File Metadata Format_file MetaData ModificationTime lưu trữ thời gian sửa đổi File thông số cịn lại phục vụ cho việc tìm kiếm theo ngày cập nhật liệu HÌNH 7.70 File Metadata ModificationTime 49 MetaData Access Time lưu trữ thời gian truy cập File thơng số cịn lại để thực tìm kiếm theo ngày truy cập File phân tích File truy cập nhiều hay vào khoảng thời gian HÌNH 7.71 File Metadata Access Time MetaData File Size lưu trữ kích thước File thơng số cịn lại phục vụ cho việc tìm kiếm theo kích thước File liệu HÌNH 7.72 File Metadata File Size 7.3.3 Thiết kế sử dụng công cụ truy vấn cung cấp thực thi SQL, thực thi công cụ hỗ trợ BI (Business Intelligence) Hệ thống tự động dùng SQL chuyển đổi tệp fsimage Hadoop để hình thành lên lớp MetaData lưu trữ cho tệp hệ thống Ngồi cịn thực thi câu lệnh SQL để xây dựng Data Warehouse Nhóm thực truy vấn SQL Meta để minh hoạ 50 Thực thi truy vấn SQL MetaData Fsimage HÌNH 7.73 Truy vấn SQL MetaData Fsimage Thực thi câu lệnh GROUP BY MetaData Format_File để đưa tổng số lượng định dạng File HÌNH 7.74 GROUP BY MetaData Format_File 51 Thực thi câu lệnh GROUP BY MetaData Format_File để đưa kích thước nhỏ loại File HÌNH 7.75 GROUP BY MetaData Format_File Thực thi câu lệnh SELECT WHERE MetaData File_Name để đưa File có định dạng PDF HÌNH 7.76 SELECT WHERE MetaData File_Name 52 Thực thi câu lệnh SELECT WHERE MetaData File_Name để đưa File có chứa chuỗi “18133018” HÌNH 7.77 SELECT WHERE MetaData File_Name Thực thi BI liệu: Đưa số lượng File tải lên mốc thời gian HÌNH 7.78 Số lượng File tải lên mốc thời gian 53 Phân tích số lượng File loại định dạng để thấy tỉ trọng loại liệu đưa lên HÌNH 7.79 Số lượng File loại định dạng Biểu đồ phân tích tổng số lượng File tải lên khoảng thời gian HÌNH 7.80 Tổng số lượng File tải lên khoảng thời gian 54 Biểu đồ minh hoạ cho số lượng định dạng file HÌNH 7.81 Biểu đồ minh hoạ cho số lượng định dạng file Biểu đố thể tỉ trọng loại File tải lên HÌNH 7.82 Biểu đồ thể tỉ trọng loại File tải lên 7.3.4 Áp dụng Machine Learing liệu với thuật toán Recommendation Thuật toán Recommendation áp dụng cho liệu từ Data Lakehouse Search Engine cho hệ thống khuyến nghị đưa kết tương tự với đối tượng mà người dùng xem Lấy ví dụ Data lake liệu nhóm: hệ thống có lưu file tập sinh viên có mã số sinh viên 18133018 tên Phạm Văn Hùng, gợi ý đưa tìm kiếm từ khố “18133018” file chứa từ khoá “Phạm Văn Hùng”, tìm kiếm từ khố “Hình ảnh” file có jpg, png, gif, … Sẽ có cách để đưa gợi ý cho người dùng Search Engine: 55 Cách 1: Content-Based Recommendation System Cách dựa vào thuộc tính tệp tin tên, nội dung, định dạng, ngày cập nhật, kích thước, … để đưa các kết tương tự Ở quy mơ đề tài, dựa vào tên file, định dạng, ngày cập nhật, kích thước, … để đưa kết Thuật toán Recommendation áp dụng lớp MetaData liệu Data Lakehouse để phân tích Cách 2: Collaborative Filtering Recommendation System Cách dựa vào Behaviours users có xu hướng tương tự để đưa gợi ý, mục tiêu đề tài nhóm khơng nghiên cứu sâu Cách 3: Kết hợp Content-Based Recommendation System Collaborative Filtering Recommendation System HÌNH 7.83 Recommendation System 56 7.4 SO SÁNH VỚI NHỮNG DẠNG DATA WAREHOUSE TRUYỀN THỐNG 7.4.1 Ưu điểm Vượt trội Khả khai thác trí thơng minh từ liệu phi cấu trúc (văn bản, hình ảnh, video, âm thanh) Theo truyền thống, kho liệu không tối ưu cho kiểu liệu phi cấu trúc này, cần phải quản lý đồng thời nhiều hệ thống - Data Lake, số Data Warehouse hệ thống chuyên biệt khác Từ thấy ưu điểm Data Lakehouse - Ít thời gian cơng sức quản lý - Quản trị liệu lược đồ đơn giản hóa - Giảm di chuyển dư thừa liệu - Truy cập trực tiếp vào liệu cho cơng cụ phân tích Lưu trữ liệu hiệu chi phí 7.4.2 Hạn chế Bên cạnh đó, có số hạn chế kho chứa liệu Hadoop: - Vì độ phức tạp Hadoop với việc tích hợp nhiều cơng cụ hỗ trợ nên dẫn đến thách thức việc cài đặt, nâng cấp bảo mật - Không phù hợp liệu với quy mơ nhỏ phải nhiều thời gian để cài đặt khởi động phải khởi chạy nhiều máy lúc Ngoài ra, hạn chế kiến thức giới hạn liệu nên Data Lakehouse nhóm xây dựng với quy mô đơn giản, độ phức tạp liệu không cao 57 CHƯƠNG 8: KẾT LUẬN 8.1 KẾT QUẢ ĐẠT ĐƯỢC Nhóm thực nghiên cứu nội dung lý thuyết, hiểu cách vận hành, cài đặt sử dụng công cụ nêu nội dung báo cáo Xây dựng thành công Data Lakehouse cho hệ thống Search Engine: quản lý loại tài liệu: word, pdf, csv, liệu từ SQL server, MySQL, Mongodb, Hỗ trợ BI (Business Intelligence) ML (Machine Learning) 8.2 HẠN CHẾ Do giới hạn nguồn lực và thời gian, xây dựng Data Lakehouse máy ảo đơn giản với lượng liệu có kích thước nhỏ Quy mơ việc phân tích dừng lại mức độ tương đối Giới hạn kiến thức yếu tố cản trở đến việc nghiên cứu Các bảng xây dựng với số lượng tương đối Lượng liệu đưa vào hạn hẹp nên việc sử dụng phân tích chưa tối ưu 8.3 HƯỚNG PHÁT TRIỂN Thấy hạn chế cịn tồn tại, tương lai chúng tơi nghiên cứu biện pháp khắc phục thiếu sót Cụ thể, với thời gian khơng bị giới hạn, nhóm cập nhật thêm nhiều lớp MetaData cho Data Lakehouse, thêm nhiều liệu để thông tin đa dạng phục vụ cho việc xử lí sửa lỗi Ngồi ra, dựa kiến thức tìm hiểu, nhóm thực xây dựng thêm nhiều Data Lakehouse với nhiều công cụ khác nhau, nhiều nên tảng khác mà không riêng Hadoop 58 TÀI LIỆU THAM KHẢO [1] Justin Stoltzfus, “Search Engine”, 26/11/20, khả dụng tại: https://www.techopedia.com/definition/12708/search-engine-world-wide-web [2] Frantisek Vrab, “What are search engines and how they work?”, 23/01/2021, khả dụng tại: https://mangools.com/blog/search-engines/ [3] Databricks, “Data Lakehouse”, khả dụng tại: https://databricks.com/glossary/data-lakehouse [4] John Kutay, “Data Warehouse vs Data Lake vs Data Lakehouse: An Overview of Three Cloud Data Storage Patterns”, 06/24/2022, khả dụng tại: https://www.striim.com/blog/data-warehouse-vsdata-lake-vs-data-lakehouse-an-overview/ [5] Vũ Hữu Tiệp, “Tìm hiểu Hadoop”, 07/06/2018, khả dụng tại: https://viblo.asia/p/tim-hieuve-hadoop-bWrZn1XwKxw [6] “Hadoop gì? Kiến trúc Hadoop", khả dụng tại: https://topdev.vn/blog/hadoop-la-gi/ [7] “What is MapReduce?”, 2022, khả dụng tại: https://www.talend.com/resources/what-ismapreduce/ [8] “Apache Hadoop”, 2022, khả dụng tại: https://hadoop.apache.org/docs/current/index.html [9] Hoi Gia, “Superset: Công cụ mạnh miễn phí cho người làm liệu”, 07/12/2021, khả dụng tại: https://atekco.io/20211207-superset-cong-cu-manh-va-mien-phi-cho-nguoi-lam-du-lieu [10] Susana Santos, “Apache Superset Open Source BI: almost the alternative to Tableau”, 17/09/2018, khả dụng tại: https://www.xpand-it.com/blog/apache-superset-open-source-bi/ [11] Nguyen Van Dat, “Recommendation System: Từ số đến hồn chỉnh có gì?”, 31/03/2021, khả dụng tại: https://viblo.asia/p/recommendation-system-tu-con-so-0-den-hoan-chinh-co-gi- gDVK2640KLj [12] Rohit Dwivedi, “What Are Recommendation Systems in Machine Learning?”, 16/04/2020, khả dụng tại: https://www.analyticssteps.com/blogs/what-are-recommendation-systems-machine-learning [13] Ben Lorica, Michael Armbrust, Ali Ghodsi, Reynold Xin and Matei Zaharia, “What Is a Lakehouse?”, 30/01/2020, khả dụng tại: https://databricks.com/blog/2020/01/30/what-is-a-datalakehouse.html?itm_data=lakehouse-link-lakehouseblog 59 S K L 0

Ngày đăng: 11/05/2023, 14:30

Xem thêm:

TỪ KHÓA LIÊN QUAN

w