Download presentation
Presentation is loading. Please wait.
Published byKimberly Rogers Modified over 8 years ago
1
© 2009 OpenLink Software, All rights reserved. Mapping Relational Databases to RDF with OpenLink Virtuoso Orri Erling - Program Manager, Virtuoso
2
© 2009 OpenLink Software, All rights reserved. Who Wants to Map? Semantic Web Scalers ¡Expose whatever there is as RDF, the next guy will unify terms, make search and apps Data Warehouse Keepers ¡Data is spread out, has implicit semantics, complex schemas, heterogeneous sources, ambiguous terms but we must make it join and aggregate cleanly
3
© 2009 OpenLink Software, All rights reserved. Present State SPARQL to SQL exists but still, complex integrations are data warehouses We'd really like to map, but... Can it be otherwise?
4
© 2009 OpenLink Software, All rights reserved. Why RDF Data Warehouse? Pros Even query performance across all data Possibility of forward-chaining inference Some SPARQL features may be better supported, e.g. Unspecified predicates Cons Keeping data up-to-date Complex set up, needs dedicated servers: you don't build them on a whim
5
© 2009 OpenLink Software, All rights reserved. Why Map? No copying, no timeliness issues RDBMS outperforms RDF for analytics workloads Agile reconfiguration without reloading data
6
© 2009 OpenLink Software, All rights reserved. Virtuoso Mapping of SPARQL to SQL against any existing schema - whether stored in Virtuoso or elsewhere Physical Quad-store Federated/local RDBMS
7
© 2009 OpenLink Software, All rights reserved. For Mapping to Deliver... Tackle any SQL analytics workload in SPARQL without extra cost Deal with arbitrary SQL schemata Produce single SQL statements, for target RDBMS to optimize Have intelligence for cases where one RDF entity can come from many relational sources
8
© 2009 OpenLink Software, All rights reserved. The Cases of Integration Bring similar but heterogeneous schemas into a unified ontology - Union View Translate FKs of one schema to PKs in another - Distributed Join Hide differences in normalization - Views for hiding joins Unit/Terminology conversions
9
© 2009 OpenLink Software, All rights reserved. Defining a Mapping Define URI formats and their subclass relations Define which key-column-value combinations make a triple Arbitrary SQL is allowed for mapping values and filtering A single RDF node can be a composite of many columns, e.g. multipart key Use SPARQL/SQL to:
10
© 2009 OpenLink Software, All rights reserved. The TPC-H Case The 22 queries as extended SPARQL Each generates a single SQL statement, executable by Virtuoso, Oracle, others Next make several TPC-H databases on different servers and run the queries against the union http://demo.openlinksw.com/tpc-h/
11
© 2009 OpenLink Software, All rights reserved. Where Problems Begin In OpenLink Data Spaces - 6 Collaborative apps all mapped to SIOC: Trivially becomes a union of everything, 1000+ lines of SQL Intelligently Becomes a Union of : select * from where {?s ?p ?o. ?s has_comment ?c. ?c has_author } select post.* from post, comment, user where c_post = p_id and c_author = u_id and u_name = f ('xxx') Once per app
12
© 2009 OpenLink Software, All rights reserved. What One Must Know Mapping for integration is not trivial Be careful when mapping multiple tables/columns to one class/property Make URI schemes which encode type and source, so that senseless joins are not attempted if types not specified in query Understand what the mapping logic can and cannot optimize Understand what SQL can and cannot optimize View resulting SQL for sanity check
13
© 2009 OpenLink Software, All rights reserved. SQL Extensions in Virtuoso Mapping must work against any RDBMS/Schema, as is But there is Virtuoso SQL between the mapping and target RDBMS(s) Location and latency - conscious distributed cost model Breakup for making a wide result set into a row per property Inverse functions
14
© 2009 OpenLink Software, All rights reserved. Use Cases OpenLink Data Spaces - Blog, Wiki, News, Social Network, &c OpenLink's own MIS - “total information awareness”: URI for any CRM Object, Account, Product, Support Case, Email, &c Musicbrainz PHP BB, Drupal, MediaWiki, &c
15
© 2009 OpenLink Software, All rights reserved. OpenLink Software Thank You! http://virtuoso.openlinksw.com http://demo.openlinksw.com/tpc-h
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.