Đánh giá Parser

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu xây dựng mô hình chuyển đổi tri thức cho máy chủ web (Trang 96 - 105)

5. Ý nghĩa khoa học và thực tiễn

3.4.2. Đánh giá Parser

Đánh giá độ chính xác của quá trình chuyển đổi dữ liệu từ file log sang ontology

Thực hiện chuyển đổi dữ liệu từ 400 dữ liệu đến 100000 dữ liệu

Bảng 3.1 Số liệu chuyển đổi từ Log IIS sang Ontology

Số dữ liệu cần chuyển Dữ liệu tiếp nhận Tỷ lệ

400 400 100% 600 600 100% 1000 1000 100% 3000 3000 100% 4000 4000 100% 10000 10000 100% 15000 15000 100% 40000 40000 100% 75000 75000 100% 100000 100000 100%

Dữ liệu luôn đạt 100% trong quá trình chuyển đổi từ dữ liệu Log IIS sang Ontology.

quá trình chuyển đổi của Parser Log IIS luôn ổn định hơn so với các Parser khác. Do đó Parser Log IIS tối ƣu về độ chính xác.

Hình 3.23. So sánh độ chính xác trong việc thực hiện chuyển đổi của Parser Log IIS với các Parser khác

Đánh giá thời gian thực hiện

Tiến hành so sánh đánh giá Parser với các Parser khác, so sánh này chỉ mang tính chất khách quan dựa trên quan sát thời gian thực hiện chuyển đổi dữ liệu từ dữ liệu Log sang Ontology.

Thực nghiệm 1:

Bảng 3.2 Thời gian chuyển đổi dữ liệu trong thực nghiệm 1

Số lƣợng dữ liệu LogIIS SLCT IPLoM LogSix LKE

400 0,41 0,01 0,03 8,02 10,00 4000 3,50 0,07 0,1 100 1000 40000 55,00 0,5 0,3 800 X 400000 X 1 4 8000 X 4000000 X 7 20 10000 X Thực nghiệm 2:

Bảng 3.3 Thời gian chuyển đổi dữ liệu trong thực nghiệm 2

Số lƣợng dữ liệu LogIIS SLCT IPLoM LogSix LKE

600 0,52 0,03 0,05 8 50

3000 2,93 0,06 0,3 6 900

15000 20,69 0,25 0,9 100 10000

75000 104,61 1 3 900 X

375000 X 3 7 5000 X

Vậy số lƣợng sự kiện càng lớn thì thời gian chuyển đổi càng lâu. Với số lƣợng sự kiện từ 3000 trở đi thì thời gian chuyển đổi rất dài. Ngoài ra thời gian chuyển đổi còn bị phụ thuộc vào các yếu tố khách quan khác nhƣ: tốc độ, độ ổn định của internet, cấu hình máy tính sử dụng của ngƣời dùng.

Thời gian thực hiện chuyển đổi của Parser trong luận văn này chậm hơn so với các Parser khác. Do đó, Parser của Log IIS vẫn chƣa tối ƣu với thời gian chuyển đổi.

KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN

1. Kết luận chung

Trong nghiên cứu này, ngoài phần trình bày các khái niệm cơ bản về Ontology, máy chủ Web, nhật ký máy chủ Web, quản lý tri thức, tôi đã xây dựng mô hình Parser chuyển đổi dựa trên cấu trúc của một file IIS Log, kết hợp với phƣơng pháp rút trích từ file Log và truy vấn dữ liệu từ file OWL. Việc thử nghiệm đƣợc thực hiện trên file Log của máy chủ Web.

Kết quả đạt đƣợc của luận văn

- Hiểu các kiến thức về Ontology, máy chủ Web, nhật ký máy chủ Web, quản lý tri thức, cách thức truy xuất file Log.

- Xây dựng mô hình Ontology dành cho quản lý tri thức sự kiện máy chủ Web IIS.

- Xây dựng mô hình Parser rút trích dữ liệu từ các file Log máy chủ IIS vào mô hình Ontology.

Một số kết quả chƣa đạt đƣợc:

- Mô hình chuyển đổi hoạt động chậm khi dữ liệu quá lớn.

- Còn nhiều loại Log khác chƣa đƣợc đƣa vào mô hình.

- Chƣa đƣa giải pháp vào mô hình chuyển đổi.

- Chƣa triển khai thành 1 công cụ hoàn chỉnh cho ngƣời dùng.

2. Hƣớng phát triển đề tài

Trên cơ sở các kết quả đạt đƣợc trong nghiên cứu này, tôi nhận thấy còn một số vấn đề cần tiếp tục đƣợc nghiên cứu để có đƣợc kết quả tốt hơn nhƣ:

- Tiếp tục nghiên cứu thử nghiệm để tối ƣu mô hình Ontology.

- Tiếp tục nghiên cứu các loại Log khác nhƣ: Apache Log, Error Log, System Log, … đƣa vào Parser để tạo thành một mô hình tổng quát cho các loại Log.

DANH MỤC TÀI LIỆU THAM KHẢO

[1] John Wiley & Sons, Microsoft Official Academic Course, “Windows

Server Administration Fundamentals”, 2011.

[2] Daniil Mirylenka, Andrea Passerini, and Luciano Serafini -

Bootstrapping Domain Ontologies from Wikipedia: A Uniform Approach - of the Twenty-Fourth International Joint Conference on Artificial Intelligence, 2015.

[3] Patrick, Killelea, Web performance tuning (2nd ed.). Beijing: O'Reilly.

p. 264, 2012.

[4] Webdevelopersnotes, “What is web server?'”, 2010.

[5] Girard, John P.; Girard, JoAnn L. (2015). "Defining knowledge management: Toward an applied compendium" (PDF). Online Journal of Applied Knowledge Management. 3 (1): 14.

[6] University of North Carolina at Chapel Hill. Introduction to Knowledge

Management 2014.

[7] ThS. Trần Hùng Cƣờng, ThS. Ngô Đức Vĩnh - Khoa Công nghệ thông tin Trƣờng Đại học Công nghiệp Hà Nội, Tổng quan về phát hiện tri

thức và khai phá dữ liệu, 2011.

[8] Maier, Ronald, and Thomas Hadrich. Knowledge management systems. Encyclopedia of Knowledge Management, Second Edition.

IGI Global, 2011.

[9] Davies, John; Grobelnik, Marko; Mladenić, Dunja. Semantic Knowledge

Management: Integrating Ontology Management, Knowledge

Discovery, and Human Language Technologies, 2009.

[10] Retrieved 27 November 2010. "Parse". dictionary.reference.com [11] ThS. Vũ Ngọc Hiếu, Giáo Trình Hệ Thống Thông Tin Quản Lý, 2017

[12] Smith, Barry. Ontology. The furniture of the world. Brill Rodopi, 2012 [13] Gruber, Tom. Ontology. 2018.

[14] Jonathan Fulton. Web Architecture, 2017

[15] Tartir, Samir, I. Budak Arpinar, and Amit P. Sheth. "Ontological evaluation and validation." Theory and applications of ontology:

Computer applications. Springer, Dordrecht, 2010.

[16] He, Pinjia, et al. "An evaluation study on log parsing and its use in log

mining." 2016.

[17] J. Lou, Q. Fu, S. Yang, Y. Xu, and J. Li, Mining invariants from console

logs for system problem detection, 2010.

[18] Yu, Binbin. Research on information retrieval model based on ontology, 2019.

[19] Quách Xuân Hƣng, Một Số Phương Pháp Tích Hợp Ontology Dựa Vào

Logic Mô Tả Mờ. Trƣờng Đại học Khoa học – Đại học Huế, 2020.

[20] Deborah L. McGuinness, OWL Web Ontology Language, 2009 [21] Giuseppini, Gabriele. "Log parser." U.S. Patent Application, 2004.

PHỤ LỤC

Mô hình Parser chuyển đổi dữ liệu Log vào mô hình Ontology

import datetime import time

from owlready2 import * import csv

import time

start = time.time()

onto = get_ontology("http://test.org/onto.owl") onto.save("structure.owl")

with open('D:\Hoc Tap\Log\LogOnto.csv', newline='') as csvfile: reader = csv.DictReader(csvfile)

count = 0

for row in reader: count = count + 1 log = Log("Log_"+str(count)) log.hasLogFileName = row['LogFilename'] log.hasLogRow = row['LogRow'] date = Date("Date_"+str(count)) date.hasDate = row['date'] date.hasTime = row['time'] log.hasLogDate.append(date)

user = User("User_"+str(count)) user.hasUserIP = row['c-ip'] user.hasUserName = row['cs-username'] user.hasSitename = row['s-sitename'] log.hasLogUser.append(user) webServer = WebServer("WebServer_"+str(count)) webServer.hasServerName = row['s-computername'] webServer.hasServerIP = row['s-ip'] webServer.hasServerPort = row['s-port'] log.hasLogWebServer.append(webServer) type = Type("Type_"+str(count)) type.hasMethod = row['cs-method'] type.hasRequest = row['cs-uri-stem'] type.hasReferer = row['cs-uri-query'] log.hasLogType.append(type) status = Status("Status_"+str(count)) status.hasStatus = row['sc-status'] status.hasSubStatus = row['sc-substatus'] status.hasWin32 = row['sc-win32-status'] log.hasLogStatus.append(status) event = Event("Event_"+str(count)) event.hasSizeOfRequest = row['sc-bytes'] event.hasSizeOfReceive = row['cs-bytes']

event.hasTimeTaken = row['time-taken'] event.hasVersion = row['cs-version'] event.hasServerName = row['cs-host'] event.hasUserAgent = row['cs(User-Agent)'] event.hasRefererUser = row['cs(Referer)'] log.hasLogEvent.append(event) if (count>20000): break onto.save("LogOntology.owl")

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu xây dựng mô hình chuyển đổi tri thức cho máy chủ web (Trang 96 - 105)

Tải bản đầy đủ (PDF)

(105 trang)