170 likes | 678 Views
Phân tích thực thi SPARQL trong Semantic Web sử dụng một số công cụ nguồn mở. Trần Ngô Như Khánh. Nội dung. Giới thiệu Mô hình thực thi SPARQL Quá trình xử lý truy vấn So sánh SQL và SPARQL Minh họa một số công cụ thực thi truy vấn SPARQL. Giới thiệu. RDF
E N D
Phân tích thực thi SPARQL trong Semantic Web sử dụng một số công cụ nguồn mở Trần Ngô Như Khánh
Nội dung • Giới thiệu • Mô hình thực thi SPARQL • Quá trình xử lý truy vấn • So sánh SQL và SPARQL • Minh họa một số công cụ thực thi truy vấn SPARQL
Giới thiệu • RDF • Ngôn ngữ mô tả tài nguyên cho Semantic web • Biểu diễn các mối quan hệ giữa các tài nguyên Subject Object Predicate <foaf:Person> <foaf:name>Tran Ngo Nhu Khanh</foaf:name> <foaf:age>29</foaf:age> </foaf:Person>
SPARQL • SPARQL - Simple Protocol and RDF Query Language • Giao thức & Ngôn ngữ truy vấn RDF • SPARQL cho phép: • Rút trích, truy vấn giá trị lưu trữ bởi định dạng RDF • Khai thác RDF thông qua truy vấn các quan hệ chưa biết • Thực hiện các phép kết hợp trên nhiều nguồn RDF trong một truy vấn. • Xây dựng từ vựng RDF từ các nguồn dữ liệu.
Ví dụ một truy vấn: PREFIX foaf: <http://xmlns.com/foaf/0.1/> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> SELECT ?name ?email WHERE { ?person rdf:type foaf:Person ; ?person foaf:name ?name . OPTIONAL { ?person foaf:mbox ?email . } } ------------------------------------------------ | name | email | ================================================ | "Le Gia Cong" | | | "Phan Thi Thanh Nga" | | | "Tran Thong" | | | "Tran Ngo Nhu Khanh" | "khanhtnn@dlu.edu.vn" | ------------------------------------------------
Kiến trúc thực thi SPARQL RDF Triple Store User Interface SPARQL Request Data / Error Xử lý truy vấn (Scanning, Parsing, Validating) Lưu trữ kết quả Lưu trữ Truy vấn
Qui trình xử lý và tối ưu truy vấn (*) (*)Olaf Hartig and Ralf Heese, “The SPARQL Query Graph Model for Query Optimization”, Humboldt-University zu Berlin, 2007
Một số công cụ thực thi truy vấn SPARQL • JENA with ARQ processor C:>sparql.bat --data < RDF file path> -- query <SPARQL query file path>
Một số công cụ thực thi truy vấn SPARQLTwinkle PREFIX foaf: <http://xmlns.com/foaf/0.1/> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> SELECT ?name ?email WHERE { ?person rdf:type foaf:Person ; foaf:name ?name . OPTIONAL { ?person foaf:mbox ?email . } } ORDER BY ?name
Twinkle PREFIX foaf: <http://xmlns.com/foaf/0.1/> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> SELECT ?name ?email WHERE { ?person rdf:type foaf:Person ; foaf:name ?name . OPTIONAL { ?person foaf:mbox ?email . } FILTER regex (?name, "Tran") } ORDER BY ?name
Một số công cụ thực thi truy vấn SPARQL • Các ưu điểm của Twinkle so với Jena: • Graphic User Interface • Hiển thị kết quả dạng Text và Table (bảng) • Hỗ trợ truy vấn kho dữ liệu cục bộ và từ xa • Hỗ trợ SPARQL mở rộng • …
Tài liệu tham khảo [1] Rupal Gupta, Sanjay Kumar Malik, “SPARQL Semantics And Execution Analysis In Semantic Web Using Various Tools”, International Conference on Communication Systems and Network Technologies, 2011 [2] Olaf Hartig and Ralf Heese, “The SPARQL Query Graph Model for Query Optimization”, Humboldt-University zu Berlin, 2007. [3] Allemang, D., & Hendler, “Semantic Web for the Working Ontologist”, Second Edition, 2011 [4] Jena sparql tutorial: http://jena.sourceforge.net/ARQ/Tutorial [5] ARQ- A SPARQL Processor for Jena http://jena.sourceforge.net/ARQ