=Paper=
{{Paper
|id=None
|storemode=property
|title=ONTOMS2: an Efficient and Scalable ONTOlogy Management System with an Incremental Reasoning
|pdfUrl=https://ceur-ws.org/Vol-1035/iswc2013_demo_39.pdf
|volume=Vol-1035
|dblpUrl=https://dblp.org/rec/conf/semweb/LeeLKPC13
}}
==ONTOMS2: an Efficient and Scalable ONTOlogy Management System with an Incremental Reasoning==
ONTOMS2: an Efficient and Scalable ONTOlogy Management System with an Incremental Reasoning Min-Joong Lee1 , Jong-Ryul Lee1 , Sangyeon Kim1 , Myung-Jae Park1 , and Chin-Wan Chung2 Department of Computer Science , KAIST, Daejeon, Republic of Korea {mjlee,jrlee,sangyeon,jpark}@islab.kaist.ac.kr1 chungcw@kaist.edu2 Abstract. We present ONTOMS2, an efficient and scalable ONTOlogy Management System with an incremental reasoning. ONTOMS2 stores an OWL document and processes OWL-QL and SPARQL queries. Espe- cially, ONTOMS2 supports SPARQL Update queries with an incremen- tal instance reasoning of inverseOf, symmetric and transitive properties. 1 Introduction In order to efficiently manage ontology data, various ontology data management systems [4–6] are proposed based on RDBMS. However, existing ontology data management systems do not support updates incrementally. To efficiently man- age such large sized ontology data, we need a way of incremental updating for ontology data. We propose an incremental update strategy to efficiently handle a large amount of ontology data and the frequent updates of such ontology data. Our incremental update strategy provides an insertion and deletion based on SPARQL Update with the support of some important semantics of ontologies such as inverseOf, symmetric, and transitive. We apply our incremental update strategy to ONTOMS which is an efficient and scalable ONTOlogy Management System proposed in [6]. ONTOMS efficiently manages large sized OWL data based on RDBMS and using OWL-QL. It stores OWL data into a class based relational schema to in- crease the query processing performance. Figure 1 describes an example of OWL data stored into relational tables in ONTOMS. Unlike other approaches, ON- TOMS generates a class based relational schema, where one relation is created for each class. Each class relation contains associated properties as its attributes. For more details of ONTOMS, please refer [6]. We denote the new version of ONTOMS where our incremental update strat- egy and SPARQL processor are applied as ONTOMS2. We designed the archi- tecture of ONTOMS2 as depicted in Figure 2. The core modules of ONTOMS2 are OWL Data Storage Module, Instance Inference Module, SPARQL Module, and OWL-QL Module. To apply our incremental update strategy to ONTOMS, we create SPARQL Module in Query Processing Module and modified Instance Inference Module for the incremental reasoning. OWL Data Storage Module ob- tains class and property hierarchy information from OWL Reasoner, Pellet, and OWL Reasoner GraduateStudent (Pellet) User UID degreeFrom degreeFrom_S degreeFrom_E Class, Property Class, Property OWL Data Query Query GS1 Hierarchies Definitions Result Professor ONTOMS2 Query Processing UID degreeFrom degreeFrom_S degreeFrom_E Module Prof1 Univ1 6 7 OWL Data Instance Incremental Storage Inference Reasoning SPARQL OWL-QL Course GraduateStudent_ Professor_ Module Module Module Module UID takesCourse teachesCourse C1 UID Value UID Value Tuples for New Properties, C2 GS1 C1 Prof1 C1 Class, Instances Instances Property, SQL Query GS1 C2 Prof1 C2 Instance Query Result RDBMS in Tuples Fig. 1. Relational Tables in ONTOMS Fig. 2. The Architecture of ONTOMS2 generates relationship information among classes and properties when parsing the given OWL data. Once OWL data is stored, Instance Inference Module per- forms instance reasoning with properties which are collected along with their values from RDBMS, and stores newly generated instances into RDBMS. The details of instance reasoning for initial OWL data can be found at Section 6 in [6]. The Query Processing Module processes OWL-QL query and SPARQL query. When a SPARQL update query is given, SPARQL Module processes it through Instance Inference Module for the incremental reasoning. 2 Ontology Data Update SPARQL Update There are several query languages for OWL such as OWL- QL and SQWRL . However, all of them support a read-only(select) query only. The previous version [6] of ONTOMS2 uses a OWL-QL to retrieve instances. We enhanced ONTOMS to have an ability to update ontology data by adding the SPARQL processor in addition to the OWL-QL processor. This is because OWL is developed as a vocabulary extension of RDF, SPARQL is a de facto query language for RDF, and recently W3C published a recommendation [2] for the SPARQL update. According to the SPARQL Update recommendation proposed by W3C, SPARQL Update provides three operations related to update : INSERT DATA, DELETE DATA, and DELETE/INSERT. The INSERT DATA operation is to add new triples into the ontology data while the DELETE DATA operation is to remove triples from the ontology data. Lastly, the DELETE/INSERT operation is to re- move triples and add new triples into the ontology data with the WHERE clause. ONTOMS2 supports all INSERT DATA, DELETE DATA, and DELETE/INSERT operations. Due to the space limitation, we omitted the detailed syntax. Please refer Chapter 3 SPARQL 1.1 Update Language in [2] for the detailed syntax. Incremental Reasoning Only some of existing ontology data management systems support the update for ontology data. Even though there are some existing systems with the update feature, the instance reasoning for the updates has to be conducted from the scratch due to the constraints of the system while ONTOMS supports an incremental reasoning. Thus, the instance reasoning of the existing systems for each update is performed by processing all the stored triples. Eventually, it degrades the update processing performance. OWL defines several types of properties. However, only inverseOf, symmet- ric and transitive properties may generate new facts(triples). The incremental reasoning for the inverseOf and symmetric properties can be done in a straight forward way. For the insertion and deletion of transitive property triples, we adapt the SQL-based transitive closure maintenance algorithm presented in [3] to effectively maintain the transitive properties. We cut down the step for finding truly new tuples among the generated tuples by unifying the transitive closure table and multi-value class property table. This reduces costly table join opera- tions and it also reduces a storage size. 3 Experiments 80000 90000 Inferred triples 80000 JENA insertion 70000 ONTOMS insertion 60000 70000 Inferred triples JENA deletion 60000 50000 ONTOMS deletion Time (s) 50000 40000 40000 30000 30000 20000 20000 10000 10000 0 0 0 2000 4000 6000 8000 10000 0 2000 4000 6000 8000 10000 Insert triples Insert / delete triples (a) The number of inferred triples (b) The update processing time Fig. 3. Experimental results The most important enhanced point of ONTOMS2 over ONTOMS is that ONTOMS2 supports an efficient ontology data update with an incremental rea- soning. Therefore, we focused on the incremental reasoning performance when ontology data is updated. We compare ONTOMS2 with JENA which is one of the most popular ontology data management systems. JENA provides the SPARQL update feature through ARQ. However, ARQ only supports the instance reason- ing with non-update(SELECT) queries1 . Therefore, we implemented a simple SPARQL update interface for JANA which uses OntModel. Among reasoners in JENA, OW L M EM M ICRO RU LE IN F is used. Note that, in JENA, the instance reasoning should be re-run from the scratch for each update query and the update processing time for JENA does not contain the time for storing the results of the instance reasoning into the relational tables while ONTOMS2 does the incremental reasoning and the update processing time for ONTOMS2 contains the storing time. Our experiments were performed on 2.27GHz Intel Xeon with 12GB of main memory. We implemented ONTOMS2 using MS SQL Server 2008 and Java. For JENA [1], Jena-2.6.4 version is used. Figure 3(a) shows the number of triples to be inferred for various sizes of insertion triples(facts). All fact triples have same transitive property. New triples to be inserted as a facts are generated such that their subjects and objects are randomly selected from subjects and objects of previously inserted fact triples. 1 ARQ supports a SPARQL update query on basic Model only, not on OntModel or InfModel. However, JENA uses OntModel or InfModel for the reasoning. In JENA, the instance reasoning for each insertion is conducted from the scratch while the instance reasoning of ONTOMS2 is incrementally conducted. As a result, ONTOMS2 outperforms JENA for the insertion and deletion due to the incremental update strategy. The results are as shown in Figure 3(b). 4 Demo Fig. 4. Query interface and Query wizard of ONTOMS2 During the demonstration, we will illustrate how our system handles SPARQL queries over ontology data such as retrieving instances of classes or proper- ties, inserting/removing instances which satisfy a specific condition with an incremental reasoning. Our system also contains a GUI-based wizard to help a user to create a SPARQL query easily. The screen shots of ONTOMS2 are depicted in Figure 4 and the recorded video can be found at our demo page (http://islab.kaist.ac.kr/ONTOMS2/). Acknowledgments This work was supported by the National Research Foun- dation of Korea grant funded by the Korean government (MSIP) (No. NRF- 2009-0081365). References 1. Jena - a semantic web framework for java. http://jena.sourceforge.net/index.html/. 2. Sparql 1.1 update, w3c recommendation 2013. http://www.w3.org/TR/sparql11- update/. 3. G. Dong, L. Libkin, J. Su, and L. Wong. Maintaining the transitive closure of graphs in sql. Int. J. Information Technology, 5:46–78, 1999. 4. S. Kang, J. Shim, and S. goo Lee. Tridex: A lightweight triple index for relational database-based semantic web data management. Expert Syst. Appl., 40(9):3421– 3431, 2013. 5. Z. Pan, X. Zhang, and J. Heflin. Dldb2: A scalable multi-perspective semantic web repository. In Web Intelligence and Intelligent Agent Technology, 2008. WI-IAT’08. IEEE/WIC/ACM International Conference on, volume 1, pages 489–495. IEEE, 2008. 6. M.-J. Park, J. Lee, C.-H. Lee, J. Lin, O. Serres, and C.-W. Chung. An efficient and scalable management of ontology. In Proceeding of DASFAA ’07, pages 975–980, 2007.