Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 86 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
86
Dung lượng
2,8 MB
Nội dung
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI LUẬN VĂN THẠC SĨ Giải pháp lưu trữ số lượng lớn thực thể quan hệ trích xuất từ báo mạng ĐỖ MẠNH CƯỜNG Ngành Công nghệ thông tin Giảng viên hướng dẫn: TS Trịnh Tuấn Đạt Trường: Công nghệ thông tin truyền thông HÀ NỘI, 2022 TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI LUẬN VĂN THẠC SĨ Giải pháp lưu trữ số lượng lớn thực thể quan hệ trích xuất từ báo mạng ĐỖ MẠNH CƯỜNG Ngành Công nghệ thông tin Giảng viên hướng dẫn: TS Trịnh Tuấn Đạt Chữ ký GVHD Trường: Công nghệ thơng tin truyền thơng HÀ NỘI, 2022 CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh phúc BẢN XÁC NHẬN CHỈNH SỬA LUẬN VĂN THẠC SĨ Họ tên tác giả luận văn : Đỗ Mạnh Cường Đề tài luận văn: Giải pháp lưu trữ số lượng lớn thực thể quan hệ trích xuất từ báo mạng Chun ngành: Cơng nghệ thông tin Mã số HV: CB190152 Tác giả, Người hướng dẫn khoa học Hội đồng chấm luận văn xác nhận tác giả sửa chữa, bổ sung luận văn theo biên họp Hội đồng ngày 28/04/2022 với nội dung sau: - Về hình thức: sửa lỗi đánh máy trích dẫn tài liệu tham khảo đầy đủ Một số hình chưa việt hóa cần chỉnh sửa Về nội dung: sửa lại mục tiêu nêu rõ đóng góp Mơ tả làm rõ phần thực nghiệm chương Chương giảm phần trình bày neo4j thêm phần hạn chế Chương 1, thêm so sánh công nghệ Chỉnh sửa công cụ sinh liệu mô để sát với liệu thực tế Ngày tháng năm 2022 Giáo viên hướng dẫn Tác giả luận văn TS Trịnh Tuấn Đạt Đỗ Mạnh Cường CHỦ TỊCH HỘI ĐỒNG TS Vũ Thị Hương Giang Lời cam đoan Tôi xin cam đoan: Luận văn “Giải pháp lưu trữ số lượng lớn thực thể quan hệ trích xuất từ báo mạng” cơng trình nghiên cứu khoa học, độc lập tơi Kiến thức trình bày luận văn tổng hợp cá nhân, thông qua kiến thức từ thầy hướng dẫn, tài liệu tham khảo mạng internet báo khoa học khác Đây đề tài luận văn Thạc sĩ ngành Công nghệ Thông tin Kết nghiên cứu trình bày luận văn chưa cơng bố hình thức Hà Nội, ngày tháng năm 2022 Tác giả luận văn Đỗ Mạnh Cường Lời cảm ơn Trước tiên, xin chân thành cảm ơn thầy, cô trường Công nghệ thông tin Truyền thông - Trường Đại học Bách Khoa Hà Nội tận tình giảng dạy suốt thời gian học tập trường Để hồn thành Luận văn thạc sĩ, tơi nhận nhiều quan tâm, giúp đỡ từ q thầy cơ, gia đình bạn bè Đặc biệt tơi bày tỏ lịng biết ơn sâu sắc tới thầy TS Trịnh Tuấn Đạt tận tình bảo, hướng dẫn trực tiếp tơi để tìm hướng nghiên cứu hồn thiện luận văn tốt nghiệp Cuối cùng, tơi xin cảm ơn gia đình bạn bè tập thể lớp CNTT 2019B ủng hộ, giúp đỡ thời gian học tập, nghiên cứu thực luận văn tốt nghiệp Trong q trình làm luận văn tốt nghiệp chắn khơng tránh khỏi sai sót, tơi hoan nghênh chân thành cảm ơn ý kiến đóng góp quý thầy cô bạn đọc Hà Nội, ngày tháng năm Học Viên Đỗ Mạnh Cường Tóm tắt nội dung luận văn Các website ngày phát triển mạnh mẽ, mang đến nhiều nguồn thơng tin hữu ích cho phủ, tổ chức, xã hội, doanh nghiệp cá nhân, đóng vai trị quan trọng, ảnh hưởng tới lĩnh vực đời sống xã hội Thu thập nguồn tin tức trích xuất thực thể quan hệ chúng giúp hiểu xu hướng vận động, phát triển vật, tượng Cách làm hỗ trợ đắc lực cho hoạt động kinh doanh hoạt động lĩnh vực an ninh quốc phòng, quản lý điều hành dịch vụ công, quản lý giám sát báo chí truyền thơng, hỗ trợ q trình định, phòng ngừa bệnh tật, chống khủng bố, phòng chống tội phạm, bảo vệ thương hiệu, dự báo xu hướng thị trường, phát triển kinh doanh, đánh giá dư luận,… Đã có nhiều nghiên cứu phân tích viết trích xuất tự động thực thể quan hệ chúng Để sử dụng kết nghiên cứu này, đồng thời làm tiền đề cho nghiên cứu hướng tới phân tích, thống kê liệu thu thập được, cần phát triển hệ thống lưu trữ quản lý thơng tin trích xuất thu Do số lượng viết lớn, tổng số lượng thực thể quan hệ lưu trữ lên tới hàng tỷ Thách thức đặt cần phải đảm bảo hiệu lưu trữ truy vấn số lượng lớn thực thể quan hệ để phục vụ cho hoạt động thống kê, giúp theo dõi, giám sát, tổng hợp thơng tin mạng Vì giải pháp lưu trữ liệu truyền thống đáp ứng yêu cầu Nên chọn đề tài “Giải pháp lưu trữ số lượng lớn thực thể quan hệ trích xuất từ báo mạng” – tập trung giải lưu trữ mạng dạng báo tin tức, hướng tới xây dựng hệ thống lưu trữ, truy vấn thực thể quan hệ với kích thước lớn cách sử dụng đồ thị tri thức Hà Nội, ngày tháng Học viên năm 2022 Đỗ Mạnh Cường MỤC LỤC MỞ ĐẦU CHƯƠNG CƠ SỞ LÝ THUYẾT 1.1 Đồ thị tri thức 1.2 Neo4j - Nơi lưu trữ liệu 11 1.3 Cypher (query language) 21 1.4 NodeJs – Express 22 1.5 ReactJs 22 CHƯƠNG GIẢI PHÁP VÀ ĐÓNG GÓP NỔI BẬT 23 2.1 Thiết kế mơ hình lưu trữ liệu 23 2.1.1 Đặc tả thông tin liệu 23 2.1.2 Thiết kế mô hình liệu 24 2.2 Công cụ sinh liệu mô 29 2.3 Lựa chọn mơ hình liệu tối ưu 36 2.4 Hệ thống lưu trữ thực thể quan hệ 41 2.5 2.6 2.4.1 Kiến trúc hệ thống 41 2.4.2 Hệ thống REST API Service 43 Công cụ hướng dẫn sử dụng hệ thống 44 2.5.1 Service API 44 2.5.2 Xây dựng giao diện API Service 52 Xây dựng hướng dẫn sử dụng để vận hành, bảo trì triển khai cluster cho hệ thống CSDL 54 2.6.1 Triển khai cluster 54 2.6.2 Quản trị, vận hành bảo trì hệ thống 60 CHƯƠNG THỰC NGHIỆM 66 3.1 Môi trường thực nghiệm 66 3.2 Dữ liệu thực nghiệm 66 3.3 Đánh giá hiệu truy vấn thực nghiệm 67 3.3.1 Đánh giá mơ hình liệu 67 3.3.2 Đánh giá truy vấn hiệu hệ thống 69 CHƯƠNG KẾT LUẬN 71 TÀI LIỆU THAM KHẢO 73 DANH MỤC HÌNH VẼ Hình 1.1 Ví dụ đồ thị tri thức neo4j 17 Hình 1.2 Ví dụ nút neo4j 17 Hình 1.3 Ví dụ nhiều nhãn nút neo4j 18 Hình 1.4 Ví dụ relationship type neo4j 19 Hình 1.5 Ví dụ traversals neo4j 20 Hình 1.6 Ví dụ truy vấn Cypher traversals neo4j 22 Hình 2.1 Đồ thị sử dụng fact-node 26 Hình 2.2 Mơ hình lưu trữ liệu thứ 27 Hình 2.3 Mơ hình lưu trữ liệu thứ hai 27 Hình 2.4 Mơ hình lưu trữ liệu thứ ba 28 Hình 2.5 Mơ hình lưu trữ liệu thứ tư 28 Hình 2.6 File cấu hình cho việc sinh liệu mơ 29 Hình 2.7 Giải thuật sinh liệu 30 Hình 2.8 Đồ thị áp dụng giải thuật sinh liệu 31 Hình 2.9 Sinh node từ file cấu hình yêu cầu 32 Hình 2.10 Sinh hai node Fact (f), node News (n) 32 Hình 2.11 Lựa chọn mode thỏa mãn quan hệ cần sinh 33 Hình 2.12 Tạo liên kết node 33 Hình 2.13 Thơng tin file header biểu diễn node 34 Hình 2.14 Thơng tin file biểu diễn node 34 Hình 2.15 Thơng tin file header biểu diễn relationship 34 Hình 2.16 Thông tin file biểu diễn relationship 35 Hình 2.17 Thơng tin file script import 35 Hình 2.18 Thực truy vấn số lượng dbhits đồ thị tri thức 36 Hình 2.19 Mã lệnh truy vấn Cypher neo4j 36 Hình 2.20 Execution plan neo4j 37 Hình 2.21 Đồ thị tri thức gồm ba viết với thực thể quan hệ 40 Hình 2.22 Kiến trúc hệ thống 42 Hình 2.23 Truy vấn Cypher mối liên hệ viết 45 Hình 2.24 Dữ liệu thơng tin thực thể trả 45 Hình 2.25 Truy vấn Cypher mối liên hệ viết 46 Hình 2.26 Dữ liệu mối liên hệ viết 47 Hình 2.27 Truy vấn Cypher thống kê viết theo điều kiện 48 Hình 2.28 Dữ liệu trả thống kê viết theo điều kiện 48 Hình 2.29 Truy vấn Cypher thực thể thống kê viết 49 Hình 2.30 Dữ liệu trả thực thể thống kê viết 49 Hình 2.31 File thơng tin thực thể quan hệ viết cần lưu 51 Hình 2.32 Câu lệnh Cypher lưu trữ viết 51 Hình 2.33 Giao diện Service API lấy thơng tin thực thể 52 Hình 2.34 Giao diện Service API truy vấn viết 53 Hình 2.35 Giao diện Service API thống kê viết 53 Hình 2.36 Kiến trúc Causal Clustering 55 Hình 2.37 Cluster máy chủ SINGLE 57 Hình 2.38 Cluster máy chủ read_replica01 57 Hình 2.39 Cluster máy chủ read_replica02 57 Hình 2.40 Cluster máy chủ read_replica03 57 Hình 2.41 Cấu hình core01.example.com 59 Hình 2.42 Cấu hình core02.example.com 60 Hình 2.43 Cấu hình core03.example.com 60 Hình 2.44 Cú pháp câu lệnh thực backup online 61 Hình 2.45 Cài đặt câu lệnh thực backup 62 Hình 2.46 Nội dung file backup script 63 Hình 2.47 Cú pháp câu lệnh restore liệu neo4j 64 Hình 2.48 Mơ tả thao tác lệnh thực restore 64 Hình 2.49 Cú pháp câu lệnh unbind neo4j 65 Hình 2.50 Ví dụ cú pháp câu lệnh unbind neo4j 65 DANH MỤC BẢNG Bảng 1 Bảng so sánh loại sở liệu Bảng Bảng so sánh sở liệu đồ thị 12 Bảng Bảng loại thực thể quan hệ 23 Bảng 2 Bảng lưu trữ relationship type 24 Bảng Danh sách ý nghĩa operator 38 Bảng Thuộc tính node đánh index 40 Bảng Service truy vấn thông tin thực thể 45 Bảng Service truy vấn mối liên hệ 46 Bảng Truy vấn thực thể có nhãn cho trước 47 Bảng Truy vấn thực thể với nhãn cho 48 Bảng Cài đặt quan trọng cho Cluster có phiên SINGLE 56 Bảng 10 Cài đặt quan trọng cho Cluster có phiên CORE 58 Bảng 11 Tham số lưu liệu 61 Bảng 12 Một vài tham số điển hình câu lệnh backup 62 Bảng 13 Mô tả tham số câu lệnh restore 64 Bảng Bộ liệu thực nghiệm 67 Bảng Đánh giá bốn mơ hình 67 Bảng 3 Bảng hiệu truy vấn máy chủ 70 Hình 2.42 Cấu hình core02.example.com Hình 2.43 Cấu hình core03.example.com Các máy chủ CORE Neo4j sẵn sàng để khởi động Thứ tự khởi động không quan trọng Sau cluster khởi động, kết nối với phiên chạy lệnh CALL dbms.cluster.overview(); để kiểm tra trạng thái, thông tin cluster 2.6.2 Quản trị, vận hành bảo trì hệ thống Trong trình vận hành, việc lưu (backup) khôi phục (restore) yêu cầu bắt buộc, giúp hệ thống đảm bảo an tồn đề phịng trường hợp mát liệu Neo4j cung cấp hai giải pháp lưu liệu: offline online Do trình thực backup offline bắt buộc phải tắt toàn hệ thống trước nên cách không phù hợp cho hệ thống chạy liên tục 24/24 Cịn backup online khác, cho phép thực lưu toàn hệ thống hoạt động Với máy (Single Database/Core Server/Read Replica) trình thực backup online thực qua bước: • Bước 1: Thiết lập tham số backup cho máy cần backup - máy gọi backup-server Thiết lập tham số file neo4j.conf thư mục conf mã nguồn danh sách tham số cài đặt liệt kê Bảng 14 • Bước 2: Xuất phát từ máy có cài đặt bằng mã nguồn neo4j - máy gọi Neo4j-backup-client Từ thư mục mã nguồn Neo4j-backup-client mở terminal 60 chạy lệnh neo4j-admin backup Kết liệu backup lưu máy Neo4jbackup-client Bảng 11 Tham số lưu liệu Tên tham số Giá trị mặc định Mô tả dbms.backup.enabled true Bật chế độ cho phép thực backup online dbms.backup.address 127.0.0.1:6362 Địa lắng nghe cho việc thực backup dbms.backup.ssl_policy SSL policy sử dụng cho cổng (port) backup (Dùng trường hợp backup cho cluster) Câu lệnh neo4j-admin backup Neo4j có cú pháp Hình 2.44 Hình 2.44 Cú pháp câu lệnh thực backup online 61 Danh sách vài tham số điển hình thực backup 12 online backup Bảng 15 bên Bảng 12 Một vài tham số điển hình câu lệnh backup Tên tham số Giá trị mặc định Mô tả protocol any Giao thức thực backup backup-dir Thư mục chứa liệu backup name Tên backup from localhost:6362 Địa backup server Cài đặt câu lệnh sử dụng thực backup Hình 2.33 bên Hình 2.45 Cài đặt câu lệnh thực backup Các bước để thực backup Hình 2.45 sau • Bước 1: Máy cần backup neo01 (backup-server) thiết lập tham số dbms.backup.enabled=true dbms.backup.address=192.168.69.3 • Bước 2: Máy thực backup neo-client (Neo4j-backup-client) thực câu lệnh backup gọi tới backup-server Mỗi lần thực backup, người quản trị phải thực lại bước bằng cách gõ câu lệnh backup Việc thực nhiều gây nhàm chán, khó tự động hóa việc chạy backup theo định kỳ thời gian (hàng ngày/tuần/tháng) Do vậy, viết đóng gói đoạn shell script giúp cho việc thực backup đơn gian dễ 12 https://neo4j.com/docs/operations-manual/current/backup/performing/ 62 dàng Để thực backup, người quản trị cần chạy đoạn script với đầu vào địa IP server cần backup Dữ liệu backup lưu vào thư mục có tên thời gian thực backup Hình 2.46 mơ tả rõ nội dung file backup script Hình 2.46 Nội dung file backup script Để thực restore liệu Neo4j, người quản trị bật terminal từ thư mục mã nguồn Neo4j sau sử dụng câu lệnh có cú pháp Hình 2.47 63 Hình 2.47 Cú pháp câu lệnh restore liệu neo4j Các tham số câu lệnh restore mô tả Bảng 15 Bảng 13 Mô tả tham số câu lệnh restore Tên tham số Giá trị mặc định Mô tả Đường dẫn đến thư mục chứa liệu backup from database graph.db Tên database force false Xác định xem có ghi đè lên liệu cũ hay không Trong Neo4j restore liệu tách thành hai loại: (1) restore cho Causal Cluster (2) restore cho Single Database Trình tự bước thực với cách restore cho Single Database gồm Tắt hoạt động CSDL Thực chạy lệnh neo4j-admin restore Khởi động lại CSDL Ở Hình 2.48 sau biểu diễn câu lệnh để thực restore database Với database có tên graph.db từ thư mục 202204/graph.db-backup Hình 2.48 Mơ tả thao tác lệnh thực restore 64 Để thực restore cho Causal Cluster, server Core Server cần tách khỏi cụm Các server Core Server gắn kết với (bind) Cluster hình thành Một server tách (unbind) khỏi Core Server bằng cách chạy câu lệnh neo4j-admin unbind Câu lệnh unbind không sử dụng cho Read Replica server server khơng phải thành phần Core Server Để thực lệnh unbind, người quản trị bật terminal từ thư mục mã nguồn Neo4j sau sử dụng câu lệnh có cú pháp Hình 2.49 Hình 2.49 Cú pháp câu lệnh unbind neo4j Hình 2.50 biểu diễn câu lệnh thực unbind cho server Core Server Server có tên database graph.db Hình 2.50 Ví dụ cú pháp câu lệnh unbind neo4j Restore Causal Cluster thực theo trình tự bước sau Tắt tất CSDL chạy Cluster Chạy câu lệnh neo4-admin unbind cho Core Server Thực restore liệu Core Server bằng câu lệnh neo4j-admin restore Chạy lại CSDL Lúc server Core Server Cluster tự bind với 65 CHƯƠNG THỰC NGHIỆM Cần phải đánh giá hiệu hệ thống API Service bốn mơ hình lưu trữ bên với liệu lấy từ công cụ sinh liệu mô Giải vấn đề tơi triển khai theo ba ý chính: (1) môi trường thực nghiệm, (2) liệu thực nghiệm (3) đánh giá hiệu truy vấn thực nghiệm Kết thu phục vụ đánh giá mơ hình chọn khả đáp ứng máy chủ với nhóm câu hỏi 3.1 Mơi trường thực nghiệm Để thực đánh giá mơ hình hiệu hệ thống cung cấp API Service, lựa chọn máy chủ local máy chủ cloud với cấu hình cụ thể sau: ❖ Máy chủ local: • Hệ điều hành: Window 11 • Thơng tin phần cứng: - CPU: core i7 10700F CPU @ 2.90 GHz - RAM: 16GB - SSD: 512GB ❖ Máy chủ cloud: • Hệ điều hành: Linux • Thơng tin phần cứng: - CPU: 32CORE - RAM: 64GB - SSD: 2TB 3.2 Dữ liệu thực nghiệm Sau chuẩn bị môi trường thực nghiệm, cần có liệu đủ lớn Dữ liệu lấy từ công cụ sinh liệu mô mô tả chương phần 2; liệu lựa chọn 200M với 235.621.005 node, 728.000.060 relationship 524.863.033 property Bảng 16 mô tả thông tin liệu hai máy chủ sử dụng Trong thời gian thực nghiệm tính bằng giây ký hiệu s 66 Bảng Bộ liệu thực nghiệm Máy chủ Số lượng thực thể Số lượng relationship Thời gian sinh liệu Thời gian import Local 235.621.005 728.000.060 ~ 875s ~ 2409s 728.000.060 ~ 781s ~ 2116s node Cloud 235.621.005 node 3.3 Đánh giá hiệu truy vấn thực nghiệm Với mơ hình đề xuất cần lựa chọn mơ hình tối ưu bằng cách đánh giá dựa số lượng dbhits câu truy vấn kết trả Từ đánh giá hiệu hệ thống API service xây dựng bằng mơ hình liệu tối ưu 3.3.1 Đánh giá mơ hình liệu Bốn mơ hình lựa chọn Chương mục thực nghiệm đánh giá thơng qua hai nhóm câu hỏi với câu truy vấn điển hình; kết chi tiết Bảng 17 bên Bảng Đánh giá bốn mơ hình STT Câu hỏi truy vấn Mơ hình Thứ Thứ hai Thứ ba Thứ tư Truy vấn thông tin 208(dbhits) 208(dbhits) 208(dbhits) 208(dbhits) người có name “Donald Trump” (38 kết quả) (38 kết quả) (38 kết quả) (38 kết quả) Người có name “Donald Trump” nhắc đến báo 315(dbhits) 315(dbhits) 315(dbhits) 315(dbhits) Các thực thể quan hệ 198(dbhits) 198(dbhits) 198(dbhits) 198(dbhits) trích xuất từ viết có link: https://link-new-1 (104 kết quả) (60 kết quả) (60 kết quả) (104 kết quả) (60 kết quả) (104 kết quả) (60 kết quả) (104 kết quả) 67 Chỉ thực thể có quan hệ với tổng thống 883(dbhits) 883(dbhits) 883(dbhits) 883(dbhits) (58 kết (58 kết (58 kết (58 kết Donald Trump viết quả) quả) quả) quả) Số lần tổng thống 1072 1072 1072 1072 Donald Trump đề (dbhits) (dbhits) (dbhits) (dbhits) cập đến ba (281 kết (281 kết (281 kết (281 kết viết quả) quả) quả) quả) Sự kiện tổng thống Donald Trump 3685 3518 3601 2940 (dbhits) (dbhits) (dbhits) (dbhits) (9117 kết quả) (9117 kết quả) (9117 kết quả) (9117 kết quả) Tổng thống Donald 2834 2834 2773 2142 Trump gặp ai? (dbhits) (dbhits) (dbhits) (dbhits) (801 kết quả) (801 kết quả) (801 kết quả) (801 kết quả) 5127 4935 4892 4611 (dbhits) (dbhits) (dbhits) (dbhits) (46 kết (46 kết (46 kết (46 kết quả) quả) quả) quả) 1642 1651 1631 (dbhits) (dbhits) (dbhits) (9 kết quả) (9 kết quả) (9 kết quả) tịch Kim Jong-un tham gia giả vấn đề phi hạt nhân lấy từ báo nào? Những loại quan hệ mà Tổng thống Donald Trump có? Tổng thống Donald 1658 Trump tổng thống (dbhits) Vladimir Putin có (9 kết quả) quản hệ gì? Nhận xét chung: - Kết trả mơ hình câu truy vấn giống nhau; - Nhóm câu hỏi thứ - từ dịng đến dịng 5: số lượng dbhits bốn mơ hình liệu Vì q trình truy vấn khơng xét quan hệ thực thể mà lấy thông tin thực thể nên cho kết giống bốn mơ hình Hay q trình thực thi truy vấn lấy từ mơ hình Hình 2.1 68 - Nhóm câu hỏi thứ hai - từ dòng đến dòng 9: truy vấn model có số lượng dbhits sử dụng dễ dàng nhận thấy khác biệt Do trình truy vấn không lấy thông tin thực thể mà xét đến quan hệ thực thể Thứ tự số lượng dbhits câu truy vấn: mơ hình bốn nhất, theo sau mơ hình thứ ba, cịn lại mơ hình thứ hai thứ có số lượng dbhits với câu hỏi Hay hiểu cách khác số lượng dbhits mơ hình thứ tư tốt Bởi kiểu relationship factnode subject, object trực tiếp 3.3.2 Đánh giá truy vấn hiệu hệ thống Để kiểm tra khả đáp ứng hệ thống xây dựng từ mơ hình tối ưu, yêu cầu thực nghiệm liệu đủ lớn câu truy vấn điển hình Tiêu chí đánh giá dựa theo thời gian thực truy vấn Bảng 18 cho thấy thời gian thực thực câu truy vấn máy chủ Kết cho thấy máy chủ thời gian thực câu truy vấn khác Câu truy vấn phức tạp thời gian thực tốn nhiều thời gian – hay độ phức tạp tỉ lệ thuận với thời gian thực Cụ thể với cấu tìm thực thể dịng thứ đơn tìm thực thể cịn dịng thứ ba có thêm điều kiện báo định Ngoài câu truy vấn liên quan đến thực thể cho tốc độ nhanh so với câu truy vấn liên quan đến thực thể quan hệ Thời gian thực truy vấn không phụ thuộc vào độ phức tạp câu hỏi mà cịn phụ vào cấu hình máy chủ Với hai máy chủ thực nghiệm: máy chủ mạnh thời gian thực ngắn Từ nhận xét giúp người phát triển đưa giải pháp phù hợp, tập trung cho nhóm câu hỏi nhiều thời gian thực hay nâng cấp, mở rộng phần cứng máy chủ 69 Bảng 3 Bảng hiệu truy vấn máy chủ STT Câu truy vấn Máy chủ local Máy chủ cloud Truy vấn thực thể có thơng tin: node Person có property name Person 517ms 92ms (15 kết quả) (15 kết quả) Liệt kê thực thể mối quan hệ chúng viết: với property link - https://link-to-new-5 32.27s 17.80s (31 kết quả) (31 kết quả) Tìm thực thể xuất báo n với thông tin sau: node 40.18s 14.29s Person: name Person (45811 kết quả) (45811 kết quả) Thống kê quan hệ thực thể cho với thực thể khác: node – label: Person, name - Person 62.33s 15.21s (1462 kết quả) (1462 kết quả) Thống kê thực thể cho theo tháng có quan hệ với thực thể khác: node – label: Person, name - Person label: time 10-2019 54.50s 12.95s (130 kết quả) (130 kết quả) Thống kê quan hệ thực thể tham gia: node – label: Person, name - Person 70.59s 18.77s (23 kết quả) (23 kết quả) 70 CHƯƠNG KẾT LUẬN Với mục tiêu đặt ban đầu, tơi tìm hiểu, nghiên cứu cách thức lưu trữ liệu bằng sở liệu đồ thị cho thực thể quan hệ trích xuất từ viết tin tức Tiếng Việt Hệ thống local cloud lưu trữ khoảng 235 triệu thực thể 728 triệu quan hệ Số lượng liệu có khả quan khơng đáng kể so sánh với Knowledge Graph Google Tuy nhiên kết tồn cơng sức tìm hiểu, nghiên cứu học hỏi suốt trình thực luận văn Kết tiền đề, móng để phát triển cải thiện hệ thống tương lai Trong q trình thực luận văn, tơi có thêm nhiều học kinh nghiệm hữu ích như: kiến thức sở liệu đồ thị; cách thức biểu diễn liệu đồ thị tri thức tảng Neo4j; kĩ phân tích đánh giá trình thực câu truy vấn; kiến thức shell script Đây kiến thức quý báu giúp cho trình phát triển nghiệp tơi sau Đóng góp Thiết kế mơ hình liệu tối ưu cho việc lưu trữ viết thực thể quan hệ trích xuất tự động từ viết Triển khai cluster cho CSDL đồ thị Neo4j Chế độ cluster Neo4j đảm bảo hệ thống liệu có khả dung lỗi, đảm bảo an toàn cho liệu cung cấp khả mở rộng khối lượng công việc liên quan đến truy vấn liệu Xây dựng service REST API cho phép truy vấn, lưu trữ viết thực thể quan hệ Xây dựng giao diện hướng dẫn sử dụng API cho người phát triển Triển khai giải pháp quản trị hệ thống CSDL (sao lưu, khôi phục) Viết shell script tự động hóa thao tác lưu liệu Xây dựng cơng cụ sinh liệu mô dựa theo nguồn liệu trích xuất từ báo mạng, ngồi cơng cụ cịn tùy biến để sử dụng cho mơ hình khác 71 Các vấn đề mà luận văn đạt Giao diện hướng dẫn sử dụng API cho người phát triển chưa thực tối ưu So với nhiều hệ thống có thực tế triển khai hệ thống đề xuất tập trùng chưa giải việc triển khai tồn máy chủ, chưa kiểm sốt thông tin truy xuất người dùng Định hướng phát triển Do nguồn liệu sử dụng dạng liệu mô – dạng liệu có cấu trúc nên mong muốn xây dựng thêm cơng cụ lấy liệu thực tế Công cụ xử lý lấy liệu tự động từ dạng liệu thơ chưa có cấu trúc chuyển thành dạng có cấu trúc để lưu vào CSDL luận Có nhiều thơng tin trích rút từ nguồn liệu tổ chức thành đồ thị Trong luận văn này, thực trích rút thơng tin bằng cách thực truy vấn trực tiếp vào sở liệu Do đó, số lượng câu hỏi mang ý nghĩa không nhiều Vậy nên, tương lai, tơi tìm hiểu, cách áp dụng mơ hình học máy, học sâu để trả lời câu hỏi mang tính chất dự đốn như: Từ liệu viết du lịch, đưa địa điểm du lịch tiếng; xếp hạng địa điểm du lịch Hay từ liệu gặp gỡ nguyên thủ quốc gia, hiệp định, ký kết, đánh giá xếp hạng quốc gia Ngoài từ kiến thức nghiên cứu tơi cịn muốn áp dụng vào lĩnh vực trí tuệ nhân tạo, ví dụ như: nhận diện sinh trắc học, ngôn ngữ tự nhiên,… 72 TÀI LIỆU THAM KHẢO [1] Zeng, D., Liu, K., Chen, Y., & Zhao, J (2015) Distant supervision for relation extraction via piecewise convolutional neural networks In Proceedings of the 2015 conference on empirical methods in natural language processing (pp 1753–1762) https://ieeexplore.ieee.org/document/374370 [2] Knowledge_graph, https://en.wikipedia.org/wiki/Knowledge_graph [3] Cypher, https://en.wikipedia.org/wiki/Cypher_(query_language) [4] M Farber, B Ell, C Menne, A Rettinger, and F Bartscherer Linked Data Quality of DBpedia, Freebase, OpenCyc, Wikidata, and YAGO Semantic Web Journal, 2016 http://www.semantic-web-journal.net/content/linkeddata-quality-dbpedia-freebaseopencyc-wikidata-and-yago [5] Michael Färber ∗,∗∗, Basil Ell, Carsten Menne, Achim Rettinger ∗∗∗, Frederic Bartscherer , Linked Data Quality of DBpedia, Freebase, OpenCyc, Wikidata, and YAGO, Karlsruhe Institute of Technology (KIT), Institute AIFB, http:www.semantic-web-journal.net/system/files/swj1366.pdf [6] Named Entity Recognition and Normalization Applied to Large-Scale Information Extraction from the Materials Science Literature, L Weston, V Tshitoyan, J Dagdelen, O Kononova, A Trewartha, K A Persson, G Ceder, and A Jain* https://pubs.acs.org/doi/abs/10.1021/acs.jcim.9b00470 [7] Open Research Knowledge Graph: Towards Machine Actionability in Scholarly Communication, Mohamad Yaser Jaradeh,Sören Auer (Released date: January 2019), https://www.researchgate.net/publication/330751750_Open_Research_ Knowledge_Graph_Towards_Machine_Actionability_in_Scholarly_ Communication [8] Ehrlinger Wolfram Wưß, Towards a Definition of Knowledge Graphs, CERN, http://ceur-ws.org/Vol-1695/paper4.pdf 73 [9] Diego Ongaro John Ousterhout, In Search of an Understandable Consensus Algorithm (Extended Version), Stanford University, https://raft.github.io/raft.pdf 74