Download presentation
Presentation is loading. Please wait.
1
陶承恺 Chengkai Tao tck@live.cn
RDF Stores S. Sakr and G. A. Naymat. Relational Processing of RDF Queries: A Survey. SIGMOD Record, 38:23-28, June 2010. 11/21/2018 1:08:05 PM
2
Classification Based on relational databases Native RDF stores
User RDF Database File systems (In-memory) Relational database management systems (RDBMSs) have repeatedly shown that they are very efficient, scalable and successful in hosting types of data which have formerly not been anticipated to be stored inside relational databases Native: Sesame, Jena TDB 11/21/2018 1:08:05 PM Classification
3
Relational RDF Stores • Vertical (triple) table stores
• Horizontal (binary) table stores • Property (n-ary) table stores 11/21/2018 1:08:05 PM Relational RDF Stores
4
Each RDF triple is stored directly in a three-column table (s, p, o)
11/21/2018 1:08:05 PM Vertical table stores
5
Advantage: Simple 11/21/2018 1:08:05 PM Vertical table stores
6
Vertical table stores Disadvantage: Join Example:
retrieve the web page of the author of a survey paper with the title ”Querying RDF Data” join cost is a major portion of the total processing time 11/21/2018 1:08:05 PM Vertical table stores
7
Vertical table stores Improvement B-tree Index: CREATE INDEX
Plan generation: RDF-specific statistical synopses Select T3.Object From Triples as T1, Triples as T2, Triples as T3, Triples as T4 Where T1.Predicate=“publicationType” and T1.Object=“Survey Paper” and T2.predicate=“hasTitle” and T2.Object=“Querying RDF Data” and T3.Predicate=“webPage” and T1.subject=T2.subject and T4.subject=T1.subject and T4.Predicate=“authoredBy” and T4.Object = T3.Subject Materialized index: storage increase Exhaustive or as needed a standard problem in database systems selectivity estimation has a huge impact on plan generation 11/21/2018 1:08:05 PM Vertical table stores
8
Horizontal table stores
RDF triples are modeled as one horizontal table or into a set of vertically partitioned binary tables (one table for each RDF property) 11/21/2018 1:08:05 PM Horizontal table stores
9
Horizontal table stores
Advantage Straightforward table creation Efficient when predicate is specified 11/21/2018 1:08:05 PM Horizontal table stores
10
Horizontal table stores
Disadvantage: dependent Number of properties Query type 11/21/2018 1:08:05 PM Horizontal table stores
11
Horizontal table stores
Improvement Column-store: Improved bandwidth utilization and data compression 11/21/2018 1:08:05 PM Horizontal table stores
12
Horizontal table stores
Lefteris Sidirourgos , Romulo Goncalves , Martin Kersten , Niels Nes , Stefan Manegold, Column-store support for RDF data management: not all swans are white, Proceedings of the VLDB Endowment, v.1 n.2, August 2008 This paper reports on the results of an independent evalu- ation of the techniques presented in the VLDB 2007 paper “Scalable Semantic Web Data Management Using Vertical Partitioning”, authored by D. Abadi, A. Marcus, S. R. Mad- den, and K. Hollenbach [1]. 11/21/2018 1:08:05 PM Horizontal table stores
13
multiple RDF properties are modeled as n-ary table columns for the same subject
applications typically have access patterns in which certain subjects and/or properties are accessed together 11/21/2018 1:08:05 PM Property table stores
14
Property table stores Advantage Similar to relational database
Best performance 11/21/2018 1:08:05 PM Property table stores
15
Property table stores Disadvantage Complex algorithm
Highly dependent on algorithm, data… 11/21/2018 1:08:05 PM Property table stores
16
Performance Comparison
A comparison between the alternative relational RDF storage techniques in terms of their query performance (in milliseconds) TS=Triple Store, BS=Binary Store, RS=Relational Store, PS=Property Store Dataset=DBLP, Queries=SP2Bench, RDB=DB2 Hooran MahmoudiNasab , Sherif Sakr, An experimental evaluation of relational RDF storage and querying techniques, Proceedings of the 15th international conference on Database systems for advanced applications, April 01-04, 2010, Tsukuba, Japan 11/21/2018 1:08:05 PM Performance Comparison
17
Property table stores How to create the tables? Specified by user
Subject-Property Matrix Materialized Join Views an auxiliary structure exploited by an RDBMS optimizer n-way join = m-properties + (n – m) joins. Eugene Inseok Chong , Souripriya Das , George Eadon , Jagannathan Srinivasan, An efficient SQL-based RDF querying scheme, Proceedings of the 31st international conference on Very large data bases, August 30-September 02, 2005, Trondheim, Norway 11/21/2018 1:08:05 PM Property table stores
18
Property table stores How to create the tables? Data mining
RDF graph or query log Subject-property co-occurrence pattern discovery or query pattern discovery Applied to schema design or caching strategies to improve performance L. Ding, K. Wilkinson, C. Sayers, H. Kuno, Application-Specific Schema Design for Storing Large RDF Datasets, Proc. of the 1st International Workshop on Practical and Scalable Semantic Systems, pp , 2003. 11/21/2018 1:08:05 PM Property table stores
19
Property table stores Apriori 7 subjects, 4 properties
{1,2,3,4}, {1,2}, {2,3,4}, {2,3}, {1,2,4}, {3,4}, and {2,4} min support=3 Property Support 1 3 2 6 4 5 Property Support {1,2} 3 {1,3} 1 {1,4} 2 {2,3} 6 {2,4} 4 {3,4} 5 Property Support {1,2,3} 1 {1,2,4} 2 {1,3,4} {2,3,4} 11/21/2018 1:08:05 PM Property table stores
20
Property table stores How to create the tables? Vertical Partitioning
A set of properties P = {P1,P2, ...,Pn} to a set of fragments F = {F1, F2, ..., Fx} Exploit the affinity matrix Cluster using Bond Energy Algorithm 11/21/2018 1:08:05 PM Property table stores
21
Property table stores How to create the tables? Vertical Partitioning
select the top K attributes with the highest total access number 11/21/2018 1:08:05 PM Property table stores
22
Property table stores How to create the tables? Vertical Partitioning
11/21/2018 1:08:05 PM Property table stores
23
Property table stores How to create the tables? Vertical Partitioning
11/21/2018 1:08:05 PM Property table stores
24
Property table stores How to create the tables? Vertical Partitioning
11/21/2018 1:08:05 PM Property table stores
25
Property table stores How to create the tables? Vertical Partitioning
Partitioning: Z = (QU ∗ QL) − QI2 11/21/2018 1:08:05 PM Property table stores
26
Property table stores How to create the tables?
Exploit RDF Schema data … 11/21/2018 1:08:05 PM Property table stores
27
Thanks! 11/21/2018 1:08:05 PM
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.