Currently the amount of web data has 
increased excessively. Its metadata is widely used in 
order to fully exploit web information resources. The 
Semantic Web is a Web of data that the World Wide 
Web Consortium has the vision to provide a common 
framework that allows data to be shared and reused 
across applications and enterprises. Thus, there is 
the need for the definition of the relations among data
that allows a better and automatic interchange of data. 
Resource Description Framework (RDF), which is one 
of the fundamental building blocks of the Semantic 
Web, gives a formation definition for the interchange 
of data. It is a standard for describing web resources.
RDF data is in the form subject-predicate-
object which is called triples. The subject describes 
the resource while the predicate is the relation or 
property between the subject and the object. 
For example, one way to represent the notion
“The woman has the sweets” in RDF is as the triple: 
a subject denoting “the woman”, a predicate denoting 
“has”, and an object denoting “the sweets.”
Many types of storage engines are designed 
and evaluate for triples. One of those types is a 
triple store which is a purpose-built database for the 
storage and retrieval of triples. Queries on these 
triples are in SPARQL, which is a language designed 
specifically to query RDF databases. The efficiency 
of RDF data analysis depends on the performance of 
RDF storage and query engine. 
Traditional RDF database systems query 
data from native RDF stores or from relational 
database systems. The motivation for such native 
RDF-specific stores is that the relational model is not 
particularly suitable towards storage and retrieval of 
RDF data because RDF is a graph data model. 
However, relational database systems are equipped 
with mature optimization techniques for storing and 
querying data.
NoSQL database is another type of database 
that is not relational database and not use SQL to 
query the data. NoSQL database has the data model 
that can divide into four types which are document 
database using JSON data format, key-value 
database, column store database, and graph 
database. NoSQL database has different 
characteristics from relational databases, such as 
schema-free and replication support. The motivation 
for this approach includes the simplicity of design 
and the horizontal scaling for supporting big data.
Recently, NoSQL databases have been more 
successful than traditional relational database 
systems for the ability inprocessing big data on the 
cloud effectively [1]. In NoSQL databases,to gain 
performance, ACID (Atomic, Consistency, Isolation, 
and Duration), which is a set of properties that 
guarantee that database transactions are processed 
reliably, is sacrificed [2]. However, the advocates of
NoSQL databases argue that they should rather enforce
the triple of requirements including consistency (C), 
availability (A) and partitioning tolerance (P), shortly 
CAP [1].
of the question how to process web data quickly. 
Thus, we propose a method to exploit a NoSQL 
database, specifically MongoDB, to store and query 
RDF. MongoDB is chosen because it is one of widely 
used NoSQL databases. The system first invokes 
NoSQL API to retrieve MongoDB data in JSON format. 
Then, the JSON parser module converts JSON 
data to RDF data. We evaluate our design and 
implementation by using the Berlin SPARQL 
Benchmark, which is one of the most widely accepted 
benchmarks for comparing the performance of three 
RDF storage systems which include Apache Jena 
TDB (native RDF store), MySQL (relational database), 
and MongoDB (NoSQL database).
data management research. Bizer and Schultz [3] 
proposed the Berlin SPARQL Benchmark (BSBM) for 
comparing the performance of native RDF stores 
(Sesame, Virtuoso, Jena TDB, and Jena SDB), 
SPARQL-to-SQL rewriters (D2R Server and Virtuoso 
RDF Views), and relational database management 
systems (MySQL and Virtuoso RDBMS). The rewriting 
approach outperformed native RDF storage with the 
increasing dataset. The other important result was 
that relational database management systems were 
faster than the SPARQL-to-SQL rewriters. The authors 
of this related paper explained that RDF stores might 
not have a mature optimization technique as SQL 
query engines had. Our paper uses the BSBM 
benchmark to evaluate RDF storage systems but we 
also propose the approach to use and evaluate 
NoSQL database as a RDF data query processing 
system.
There has been some work on querying RDF 
data from NoSQL databases [4-6]. Cudre-Mauroux 
et al. [4] made the first attempt at characterizing and 
comparing NoSQL stores and native RDF stores for 
RDF processing. They used the Berlin SPARQL 
Benchmark and the DBpedia SPARQL Benchmark to 
evaluate and compare a native RDF store (4store) 
with four NoSQL databases which included Jena+H-
Base, Hive+HBase, CumulusRDF, and Counchbase. 
All experiments were performed on the Amazon EC2 
Elastic Compute Cloud infrastructure. Based on the 
experimental results, NoSQL systems, such as 
Jena+HBase, processed simple SPARQL queries 
more efficiently than native RDF stores, such as 4store. 
On the other hand, for more complex SPARQL queries 
requiring several many joins and filters, NoSQL 
systems took longer time than 4store. Although both 
this related work and our work compare NoSQL 
systems and native RDF systems, but our paper also 
evaluates the performance of a relational base 
database system as well. 
Angles and Gtierrez studied the RDF model 
from a database perspective and compared it with 
other database models [5]. However, they did not 
implement and evaluate a graph database for storying 
and querying RDF data like we do. Lately, Bendar et 
al. [6] performed the comparison of RDF databases, 
NoSQL databases, and relational databases for the 
Semantic Web applications with their own developed 
benchmark. However, they did not provide the 
analysis the types of queries for which each database 
was suitable.
Sequeda and Miranker [7] chose to execute 
SPARQL queries on RDF representation of the legacy 
relational data by implementing the system called 
Ultrawrap. Ultrawrap encoded a logical representation 
of the database as an RDF graph using SQL views 
and a translation of SPARQL queries to SQL queries. 
To improve query execution time, detection of
unsatisfiable conditions and self-join elimination could
be applied to the SQL from the translations of 
SPARQL queries. 
Alexaki et al. [8] presented the ICS-FORTH 
RDFSuite, a suite of tools for RDF validation, store,and 
querying. They proposed the design of a persistent 
RDF store (RSSDB) for loading resource descriptions 
in an Object Relational Database Management 
System (ORDBMS) by using RDF schema knowledge. 
They also presented RQL as a declarative language 
for querying both RDF descriptions and schemas. 
However, they did not compare their proposed system 
with other database systems and did not use a 
standard benchmark like BSBM. 
Several researchers have attempted to 
design and develop RDF storage and query engine 
using relational DBMSs [9-11]. Harris et al. [9] 
proposed 3store as a RDF storage and query engine 
and extended it to support SPARQL query interface 
[10]. However, 3store had not been evaluated and 
compared with other systems [9-10]. Jena1 [11] and 
Jena2 [12] are popular Semantic Web programmers’ 
toolkits that have been downloaded for several 
thousand times. Jena1 is an open-source project, 
implemented in Java, and available for download for 
free. Its core is the capability in manipulating RDF 
graphs. Jena2 was extended to support multiple and 
flexible presentations of RDF graphs and to provide 
a simple minimal list view of the RDF graph to the 
application programmers.
There are several works about scalable RDF 
engines for storing, indexing, and querying [13-16]. 
The main focus of Jena2 was to improve the 
performance and scalability due to these problems: 
too many joins, single statement table, reification 
storage bloat, and query optimization [13]. To address 
these issues, the Jena2 schema design supported a 
denormalized schema for storing resource URIs and 
simple literal values directly in the statement table. In
addition, to improve performance through locality and 
caching, Jena2 also supported the use of multiple 
statement tables. 
Sesame [14] was one of the first architectures 
which its aim was for efficient storing and querying a 
large amount of RDF data. However, there were some 
unsupported operations, such as aggregates [15]. 
Also, implementing triple store directly in PostgresSQL 
was faster than that of Sesame’s interfaces and 
SeRQL [15]. Abadi et al. [15] proposed the approach 
of vertically partitioning the RDF data. The results 
showed that vertical partitioning achieved similar 
performance to the property table technique 
proposed to reduce the number of self-joins. 
The RDF-3X (RDF Triple eXpress) [16], 
designed and implemented from scratch specifically 
for the management and querying of RDF data, 
outperformed the previously best alternative [15] by 
one or two orders of magnitude. 
The contributions of this paper are as 
following:1) applying MongoDB to store and query 
RDF data; 2) using the standard Berlin SPARQL 
benchmark to compare all three kinds of database 
systems: native RDF store, relational database, and 
NoSQL database. The analysis of the comparison can 
be a guideline for choosing an appropriate database 
system for different kinds of applications. For example, 
relational databases are suitable for applications with 
complex queries while NoSQL databases should be 
used for applications with simple queries.
 
ปัจจุบันมีจำนวนเว็บข้อมูล เพิ่มขึ้นมากเกินไป Metadata จะใช้ใน สั่งทั้งหมดของการกดขี่ขูดรีดทรัพยากรข้อมูลบนเว็บ ที่ เว็บเชิงความหมายเป็นเว็บข้อมูลที่เวิลด์ไวด์ เว็บ Consortium มีวิสัยทัศน์ให้เป็นทั่วไป กรอบงานที่ช่วยให้ข้อมูลที่จะใช้ร่วมกัน และนำกลับมาใช้ โปรแกรมประยุกต์และวิสาหกิจ ดังนั้น มี ต้องการคำจำกัดความของความสัมพันธ์ระหว่างข้อมูลที่แลกเปลี่ยนที่ดีกว่า และอัตโนมัติของข้อมูลได้ ทรัพยากรอธิบายกรอบ (RDF), ซึ่งเป็นหนึ่ง ของการสร้างบล็อกพื้นฐานของ Semantic เว็บ ให้กำเนิดคำนิยามสำหรับการแลกเปลี่ยน ของข้อมูล มันเป็นมาตรฐานสำหรับการอธิบายทรัพยากรบนเว็บข้อมูล RDF เป็นเรื่องแบบฟอร์ม-เพรดิเคต -วัตถุที่เรียกว่า triples อธิบายเรื่อง ทรัพยากรในขณะที่เพรดิเคตการความสัมพันธ์ หรือ คุณสมบัติระหว่างชื่อเรื่องและวัตถุ ตัวอย่าง วิธีหนึ่งในการแสดงความ"ผู้หญิงมีขนม" RDF เป็นทริ: เรื่อง "ผู้หญิง" กำหนดเรียกค่าบทที่กำหนดเรียกค่า "มี" และวัตถุกำหนดเรียกค่า "ขนมขึ้น"ออกแบบเครื่องมือเก็บข้อมูลหลายชนิด และประเมินหา triples ชนิดที่หนึ่งเป็นการ ร้านที่สามซึ่งเป็นฐานรองสำหรับการ จัดเก็บและการเรียกของ triples สอบถามเกี่ยวกับเหล่านี้ มี triples SPARQL ซึ่งเป็นภาษาออกแบบมา โดยเฉพาะกับฐานข้อมูล RDF สอบถาม ประสิทธิภาพ ของ RDF วิเคราะห์ข้อมูลขึ้นอยู่กับประสิทธิภาพของ RDF และเก็บแบบสอบถามโปรแกรม สอบถามระบบฐานข้อมูล RDF ดั้งเดิม ข้อมูล จากร้านค้าภาษา RDF หรือเชิง ระบบฐานข้อมูล แรงจูงใจสำหรับพื้นเมืองดังกล่าว ร้านค้าเฉพาะของ RDF คือแบบจำลองเชิงสัมพันธ์ไม่ เหมาะอย่างยิ่งต่อการจัดเก็บและการรับของ ข้อมูล RDF เนื่องจาก RDF เป็นแบบกราฟ อย่างไรก็ตาม การติดตั้งระบบฐานข้อมูลเชิงสัมพันธ์ กับทีมเทคนิคเพิ่มประสิทธิภาพสำหรับการจัดเก็บ และ สอบถามข้อมูลฐานข้อมูล NoSQL เป็นฐานข้อมูลชนิดอื่น ที่ไม่ใช่ฐานข้อมูลเชิงสัมพันธ์ และไม่ใช้ SQL การ สอบถามข้อมูล NoSQL ฐานข้อมูลมีรูปแบบข้อมูล ซึ่งสามารถแบ่งออกเป็น 4 ประเภทได้แก่เอกสาร ฐานข้อมูลโดยใช้รูปแบบข้อมูลเจซัน ค่าคีย์ ฐานข้อมูล คอลัมน์ฐานข้อมูล และกราฟ ฐานข้อมูล ฐานข้อมูล NoSQL มีแตกต่างกัน ลักษณะจากเชิงสัมพันธ์ฐานข้อมูล เช่น ฟรีแผน และสนับสนุนการจำลองแบบ แรงจูงใจ สำหรับวิธีการนี้มีความเรียบง่ายของการออกแบบ และปรับแนวเพื่อสนับสนุนข้อมูลขนาดใหญ่ล่าสุด NoSQL ฐานข้อมูลได้มากขึ้น ประสบความสำเร็จกว่าฐานข้อมูลเชิงสัมพันธ์แบบดั้งเดิม ระบบสามารถ inprocessing ข้อมูลขนาดใหญ่ในการ เมฆได้อย่างมีประสิทธิภาพ [1] ในฐานข้อมูล NoSQL ได้รับ ประสิทธิภาพ กรด (อะตอม สอดคล้อง แยก และระยะเวลา), ซึ่งเป็นชุดของคุณสมบัติที่ รับประกันว่า ธุรกรรมฐานข้อมูลประมวลผล ได้ ได้เสียสละ [2] อย่างไรก็ตาม การสนับสนุนของฐานข้อมูล NoSQL โต้เถียงว่า พวกเขาควรจะบังคับใช้ทริปเปิ้ลความต้องการรวมทั้งความสอดคล้อง (C), ห้องว่าง (A) และพาร์ทิชันการยอมรับ (P), ในไม่ช้า หมวก [1]คำถามของวิธีการประมวลผลข้อมูลบนเว็บได้อย่างรวดเร็ว ดังนั้น เราเสนอวิธีการกดขี่ขูดรีดเป็น NoSQL ฐานข้อมูล โดยเฉพาะ MongoDB การสอบถาม และเก็บ RDF เลือก MongoDB เนื่องจากเป็นหนึ่งอย่างกว้างขวาง ใช้ฐานข้อมูล NoSQL ระบบเรียกใช้ครั้งแรก NoSQL API เพื่อเรียกข้อมูล MongoDB ในรูปแบบเจซัน แล้ว โมตัวแบ่งเจซันแปลงเจซัน ข้อมูลข้อมูล RDF เราประเมินการออกแบบของเรา และ ดำเนินงาน โดยใช้ SPARQL เบอร์ลิน เกณฑ์มาตรฐาน เป็นที่ยอมรับกันอย่างแพร่หลาย เกณฑ์มาตรฐานสำหรับเปรียบเทียบประสิทธิภาพของสาม ระบบเก็บข้อมูล RDF ซึ่งรวม Apache Jena TDB (ภาษา RDF ค้า MySQL (ฐานข้อมูลเชิงสัมพันธ์), และ MongoDB (ฐานข้อมูล NoSQL)การวิจัยการจัดการข้อมูล Bizer และ Schultz [3] เบอร์ลิน SPARQL Benchmark (BSBM) สำหรับการนำเสนอ เปรียบเทียบประสิทธิภาพของร้านค้าภาษา RDF (Jena งา Virtuoso TDB และ Jena SDB), Rewriters SPARQL SQL (D2R เซิร์ฟเวอร์และ Virtuoso RDF วิว), และการจัดการฐานข้อมูลเชิงสัมพันธ์ ระบบ (MySQL และ Virtuoso RDBMS) การเขียน วิธี outperformed ภาษา RDF เก็บด้วยการ เพิ่มชุดข้อมูล ผลสำคัญอื่น ๆ ระบบการจัดการฐานข้อมูลเชิงสัมพันธ์ได้ เร็วกว่า rewriters SPARQL SQL ผู้เขียน กระดาษที่เกี่ยวข้องนี้อธิบาย RDF ที่เก็บอาจ ไม่มีเทคนิคเพิ่มประสิทธิภาพผู้ใหญ่เป็น SQL สอบถามเครื่องยนต์ได้ BSBM ใช้กระดาษของเรา เปรียบการประเมินระบบจัดเก็บข้อมูลของ RDF แต่เรา นอกจากนี้ยัง เสนอวิธีการใช้ และประเมิน ฐานข้อมูลประมวลผลแบบสอบถามข้อมูล RDF NoSQL ระบบได้มีการทำงานบางอย่างสอบถาม RDF ข้อมูลจากฐานข้อมูล NoSQL [4-6] Cudre-Mauroux ร้อยเอ็ด al. [4] ทำครั้งแรกที่กำหนดลักษณะ และ เปรียบเทียบร้านค้า NoSQL และ RDF เป็นจัดเก็บใน การประมวลผลของ RDF พวกเขาใช้ SPARQL เบอร์ลิน เกณฑ์มาตรฐานและเกณฑ์มาตรฐาน DBpedia SPARQL เพื่อ ประเมิน และเปรียบเทียบภาษา RDF ร้าน (4store) ด้วยฐานข้อมูล NoSQL สี่ซึ่งรวม Jena + H-พื้นฐาน กลุ่ม + HBase, CumulusRDF และ Counchbase ดำเนินการทดลองทั้งหมดบน EC2 อเมซอน โครงสร้างพื้นฐานคลาวด์คำนวณยืดหยุ่น ตาม ผลการทดลอง NoSQL ระบบ เช่น Jena + HBase ประมวลผลสอบถาม SPARQL มีประสิทธิภาพมากขึ้นกว่าร้าน RDF เป็น เช่น 4store บนมืออื่น ๆ สำหรับ SPARQL สอบถามที่ซับซ้อนมากขึ้น ต้องหลายหลายรวมและตัวกรอง NoSQL ระบบใช้เวลานานกว่า 4store แม้ว่าทั้งสอง นี้ที่เกี่ยวข้องกับการทำงานและการทำงานของเราเปรียบเทียบ NoSQL ระบบ และระบบ RDF ดั้งเดิม แต่กระดาษของเรายัง ประเมินประสิทธิภาพของฐานเชิง ระบบฐานข้อมูลเช่น มุมและ Gtierrez ศึกษารูปแบบ RDF จากมุมมองฐานข้อมูลเปรียบเทียบด้วย ฐานข้อมูลรูปแบบอื่น ๆ [5] อย่างไรก็ตาม พวกเขาไม่ได้ ดำเนินการ และประเมินฐานข้อมูลกราฟ storying และสอบถามข้อมูล RDF เราไม่ เมื่อเร็ว ๆ นี้ Bendar ร้อยเอ็ด al. [6] ทำการเปรียบเทียบฐานข้อมูล RDF NoSQL ฐานข้อมูล และฐานข้อมูลเชิงสัมพันธ์สำหรับการ พัฒนาโปรแกรมประยุกต์เว็บความหมายกับตนเอง เกณฑ์มาตรฐานการ อย่างไรก็ตาม พวกเขาไม่ได้ให้การ วิเคราะห์แบบสอบถามสำหรับฐานข้อมูลแต่ละที่ เหมาะสมเลือกการดำเนินการ Sequeda และ Miranker [7] SPARQL แบบสอบถามบน RDF แทนมรดก ข้อมูลเชิงสัมพันธ์ โดยใช้ระบบที่เรียกว่า Ultrawrap การแสดงทางตรรกะของการเข้ารหัส Ultrawrap การใช้มุมมอง SQL ของฐานข้อมูลเป็นกราฟ RDF และแปลภาษา SPARQL แบบสอบถาม SQL แบบสอบถามแบบ การปรับปรุงเวลาดำเนินการแบบสอบถาม ตรวจสอบสามารถ unsatisfiable เงื่อนไขและตัดออกรวมกับตัวเองใช้ SQL จากการแปล SPARQL สอบถาม Alexaki et al. [8] นำเสนอออก ICS RDFSuite ชุดเครื่องมือสำหรับการตรวจสอบของ RDF จัดเก็บ และ สอบถาม พวกเขานำเสนอการออกแบบของตัวแบบ ร้านค้าของ RDF (RSSDB) สำหรับการโหลดคำอธิบายทรัพยากร ในการจัดการฐานข้อมูลเชิงวัตถุ ระบบ (ORDBMS) โดยการใช้ RDF schema knowledge พวกเขายังแสดง RQL เป็นภาษา declarative สำหรับการสอบถามคำอธิบาย RDF และแบบแผน อย่างไรก็ตาม พวกเขาได้ไม่เปรียบเทียบระบบของพวกเขานำเสนอ มีระบบฐานข้อมูลอื่น ๆ และไม่ได้ใช้เป็น เกณฑ์มาตรฐานมาตรฐานเช่น BSBM นักวิจัยต่าง ๆ ได้พยายามที่จะ ออกแบบ และพัฒนาโปรแกรมจัดเก็บและสอบถาม RDF ใช้ DBMSs เชิง [9-11] Al. เอ็ดแฮร์ริส [9] 3store เสนอเป็น RDF และเก็บแบบสอบถามเครื่องยนต์ 
and extended it to support SPARQL query interface 
[10]. However, 3store had not been evaluated and 
compared with other systems [9-10]. Jena1 [11] and 
Jena2 [12] are popular Semantic Web programmers’ 
toolkits that have been downloaded for several 
thousand times. Jena1 is an open-source project, 
implemented in Java, and available for download for 
free. Its core is the capability in manipulating RDF 
graphs. Jena2 was extended to support multiple and 
flexible presentations of RDF graphs and to provide 
a simple minimal list view of the RDF graph to the 
application programmers.
There are several works about scalable RDF 
engines for storing, indexing, and querying [13-16]. 
The main focus of Jena2 was to improve the 
performance and scalability due to these problems: 
too many joins, single statement table, reification 
storage bloat, and query optimization [13]. To address 
these issues, the Jena2 schema design supported a 
denormalized schema for storing resource URIs and 
simple literal values directly in the statement table. In
addition, to improve performance through locality and 
caching, Jena2 also supported the use of multiple 
statement tables. 
Sesame [14] was one of the first architectures 
which its aim was for efficient storing and querying a 
large amount of RDF data. However, there were some 
unsupported operations, such as aggregates [15]. 
Also, implementing triple store directly in PostgresSQL 
was faster than that of Sesame’s interfaces and 
SeRQL [15]. Abadi et al. [15] proposed the approach 
of vertically partitioning the RDF data. The results 
showed that vertical partitioning achieved similar 
performance to the property table technique 
proposed to reduce the number of self-joins. 
The RDF-3X (RDF Triple eXpress) [16], 
designed and implemented from scratch specifically 
for the management and querying of RDF data, 
outperformed the previously best alternative [15] by 
one or two orders of magnitude. 
The contributions of this paper are as 
following:1) applying MongoDB to store and query 
RDF data; 2) using the standard Berlin SPARQL 
benchmark to compare all three kinds of database 
systems: native RDF store, relational database, and 
NoSQL database. The analysis of the comparison can 
be a guideline for choosing an appropriate database 
system for different kinds of applications. For example, 
relational databases are suitable for applications with 
complex queries while NoSQL databases should be 
used for applications with simple queries.
การแปล กรุณารอสักครู่..
