RDF Views of SQL Data

Download Report

Transcript RDF Views of SQL Data

OpenLink Virtuoso - SQL & RDF
RDF Views of SQL Data
(Exposing SQL Data as RDF)
Orri Erling
Program Manager - OpenLink Virtuoso
mailto:[email protected]
© 2007 OpenLink Software, All rights reserved
Virtuoso Universal Server
• Native SQL & XML DBMS
• Federated / Hybrid Data Server (Virtual Database Engine)
• Web Services Platform
• SQL to RDF Mapping
• Native RDF Quad Store (with SPARQL support)
• In-built RDF Middleware (“Sponger”)
• RDF Linked Data Deployment Platform
© 2007 OpenLink Software, All rights reserved
Situation Analysis
 Data Drives Everything
 Data Heterogeneity is a fact of life
 There is no Information without Data
 The Era of Information Overload is Neigh
 Information Processing drives Corporate &
Individual Agility
© 2007 OpenLink Software, All rights reserved
What We Hope
Write The
Final Chapter of the
Information Integration
Saga!
© 2007 OpenLink Software, All rights reserved
Yes, if...
 SPARQL to Match SQL for BI Queries
 Tools and Training for the Information
Architect
 Successful Migration of Domain Specific
XML Vocabularies to RDF
© 2007 OpenLink Software, All rights reserved
An Ideal Solution
© 2007 OpenLink Software, All rights reserved
Virtuoso’s
RDF Views of SQL Data
Functionality
© 2007 OpenLink Software, All rights reserved
What are RDF Views?
 Expose pre-existing relational data as virtual RDF
graphs
 Available for querying through SPARQL or
SPASQL (SPARQL embedded in SQL)
 No physical regeneration of relational data
© 2007 OpenLink Software, All rights reserved
Virtuoso RDF Views Implementation
 Quad Patterns Translate Relational Data to G, S, P,
O
 Map Local or Heterogeneous Remote Data To
RDF
 Map XML/Text/Web Services to RDF via Table
Valued Functions
 Sophisticated Query Transformations and
Optimization
© 2007 OpenLink Software, All rights reserved
Virtuoso SPARQL and SQL Extensions
 Aggregates, Grouping, Full Text for SPARQL
 SQL "Breakup" for Mapping Wide Rows to n-
Triples
 Freely Intermingle SQL and SPARQL
© 2007 OpenLink Software, All rights reserved
Northwind Demo Database
Tables include:
Demo.demo.Customers
Customer
ID
Company
Name
Contact
Name
Contact
Title
Address
City
Postal
Code
Country
Phone
Fax
varchar(5)
varchar(40)
varchar(30)
varchar(30)
varchar(60)
varchar(15)
varchar(10
)
varchar(15)
varchar(24)
varchar(24)
ALFKI
Alfreds
Futterkiste
Maria
Anders
Sales
Representative
Obere Str.
57
Berlin
12209
Germany
030 0074321
030 0076545
ANATR
Ana Trujillo
Emparedados
y helados
Ana Trujillo
Owner
Avda. de la
Constitucion
2222
Mexico
D.F.
05021
Mexico
(5) 555 4729
(5) 555 3745
ANTON
Antonio
Moreno
Taqueria
Antonio
Moreno
Owner
Avda. de la
Constitucion
2222
Mexico
D.F.
05023
Mexico
(171) 555 7788
(171) 555 6759
Demo.demo.Orders
Order ID
Customer
ID
Employee
ID
Order
Date
Required
Date
Shipped
Date
Ship Via
…
10643
ALFKI
6
1995-09-25
1995-10-23
1995-10-03
1
…
10692
ALFKI
4
1995-11-03
1995-12-01
1995-11-13
2
…
…
…
…
…
…
…
…
© 2007 OpenLink Software, All rights reserved
Northwind Demo Database:
RDF View Definition Extract
Demo.demo.Customers
Customer
ID
Company
Name
Contact
Name
Contact
Title
Address
City
Postal
Code
Northwind RDF View Definition
prefix northwind: <http://www.openlinksw.com/schemas/northwind#>
…
create iri class northwind:Customer
<http://^{URIQADefaultHost}^/Northwind/Customer/%U#this> (in customer_id varchar not null)
…
alter quad storage virtrdf:DefaultQuadStorage
…
from Demo.demo.Customers as customers
from Demo.demo.Orders as orders … {
create virtrdf:NorthwindDemo as graph iri (“http://^{URIQADefaultHost}^/Northwind”) {
…
northwind:Customer(customers.CustomerID) a foaf:Organization as virtrdf:Customer-CustomerID ;
northwind:companyName customers.CompanyName as … ;
…
northwind:fax customers.Fax as virtrdf:Customer-fax .
northwind:Customer(orders.CustomerID)
northwind:has_order northwind:Order(orders.OrderID) as virtrdf:Order-has_order .
…
}}
© 2007 OpenLink Software, All rights reserved
Country
Phone
Fax
Northwind Demo Database:
RDF View Definition Extract
Demo.demo.Orders
Order ID
Customer
ID
Employee
ID
Order
Date
Required
Date
Shipped
Date
Shipped
Via
Northwind RDF View Definition
prefix northwind: <http://www.openlinksw.com/schemas/northwind#>
…
create iri class northwind:Order
<http://^{URIQADefaultHost}^/Northwind/Order/%d#this> (in order_id integer not null) .
…
alter quad storage virtrdf:DefaultQuadStorage
…
from Demo.demo.Customers as customers
from Demo.demo.Orders as orders … {
create virtrdf:NorthwindDemo as graph iri (“http://^{URIQADefaultHost}^/Northwind”) {
…
northwind:Order (orders.OrderID) a northwind:Order as virtrdf:Order-Order ;
northwind:orderDate orders.OrderDate as virtrdf:Order-order_date ;
northwind:requiredDate orders.RequiredDate as virtrdf:Order-required_date ;
…
northwind:has_customer northwind:Customer (orders.CustomerID) as virtrdf:Order-order_has_customer
northwind:has_employee northwind:Employee (orders.EmployeeID) as virtrdf:Order-order_has_employee ;
…
}}
© 2007 OpenLink Software, All rights reserved
…
Northwind Demo Database:
Customer Table to RDF Entity Mapping
Customer
ID
Company
Name
Contact
Name
Contact
Title
Address
City
Postal
Code
Country
Phone
Fax
ALFKI
Alfreds
Futterkiste
Maria
Anders
Sales
Representative
Obere Str.
57
Berlin
12209
Germany
030 0074321
030 0076545
prefix <http://demo.openlinksw.com/Northwind/>
has_customer
has_order
Customer/ALFKI#this
Order/10643#this
has_order
companyName
Order/10692#this
has_customer
Alfreds
Futterkiste
…
contactName
Maria
Anders
fax
030-0076545
contactTitle
PostalCode
12209
address
030-0074321
city
country
Sales
Representative
Berlin
phone
Germany
Obere Str. 57
© 2007 OpenLink Software, All rights reserved
Orders Table
Order
ID
Customer
ID
…
10643
ALFKI
…
10692
ALFKI
…
Facilitate Information at Your Finger Tips
 Provide a Conceptual View of Logical Data
 Make the Conceptual Views concrete focal points
of Data Access
 Identify Data Entities using URIs (Data Links) e.g
http://demo.openlinksw.com/Northwind/Customer/ALFKI#this
 Identify Associations / Relationships with other
Entities using URIs e.g
http://www.openlinksw.com/schemas/northwind#has_order
© 2007 OpenLink Software, All rights reserved
SQL-RDF Mapping Experiences
 Mapping is Non-Trivial
 Problems Start When Many Tables Map to the
Same Thing
 Choice of URI Scheme Can Greatly Affect
Optimization Possibilities
© 2007 OpenLink Software, All rights reserved
What We Need
 Interop of Necessary SPARQL Extensions
 Visual Tools for SQL-RDF Mapping
 SQL-RDF Mapping Syntax Standardization
 Community Consensus on RDF Vocabularies
© 2007 OpenLink Software, All rights reserved
It is NOT about RDF vs. XML vs. SQL
 Web Services are for Transactions and App.
Integration
 RDF is for Disparate Data Meshing, Discovery,
and Drill Down/Analysis
 SQL is Forever
© 2007 OpenLink Software, All rights reserved
SQL-RDF Integration Value
 Enterprise: Alleviation of heterogeneous data
integration challenges
 Public: A Whole Economy of Discoverable
Linked Data and Data Mesh-ups
 Now: Full Text For All - Next: Analysis For All
© 2007 OpenLink Software, All rights reserved
OpenLink Futures
 Commercial Deployment of SQL to RDF
Mapping
 Towards Web-scale with Clustered
RDBMS/Triple Store
 OpenLink Data Spaces (ODS) for Bootstrapping
SemWeb Presence
© 2007 OpenLink Software, All rights reserved
Additional Information
 http://virtuoso.openlinksw.com (general site)
 http://virtuoso.openlinksw.com/wiki/main/ (Open
Source Edition Site)
 http://virtuoso.openlinksw.com/Whitepapers/inde
x.htm (OpenLink Data Spaces)
© 2007 OpenLink Software, All rights reserved
Thank You!
© 2007 OpenLink Software, All rights reserved