Virtuoso's SQL to RDF Technology (W3C RDF & DBMS )

Views:
 
     
 

Presentation Description

No description available

Comments

Presentation Transcript

OpenLink Virtuoso - SQL & RDF: 

OpenLink Virtuoso - SQL & RDF RDF Views of SQL Data (Exposing SQL Data as RDF) Orri Erling Program Manager - OpenLink Virtuoso mailto:oerling@openlinksw.com

Virtuoso Universal Server: 

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

Situation Analysis: 

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

What We Hope: 

What We Hope Write The Final Chapter of the Information Integration Saga!

Yes, if...: 

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

An Ideal Solution: 

An Ideal Solution

Slide7: 

Virtuoso’s RDF Views of SQL Data Functionality

What are RDF Views?: 

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

Virtuoso RDF Views Implementation: 

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

Virtuoso SPARQL and SQL Extensions: 

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

Northwind Demo Database: 

Northwind Demo Database Tables include: Demo.demo.Orders Demo.demo.Customers

Northwind Demo Database: RDF View Definition Extract: 

Northwind Demo Database: RDF View Definition Extract 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 … { Demo.demo.Customers Northwind RDF View Definition 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 .

Northwind Demo Database: RDF View Definition Extract: 

Northwind Demo Database: RDF View Definition Extract 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 … { Demo.demo.Orders Northwind RDF View Definition 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 ;

Northwind Demo Database: Customer Table to RDF Entity Mapping: 

Northwind Demo Database: Customer Table to RDF Entity Mapping Orders Table

Facilitate Information at Your Finger Tips: 

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

SQL-RDF Mapping Experiences: 

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

What We Need: 

What We Need Interop of Necessary SPARQL Extensions Visual Tools for SQL-RDF Mapping SQL-RDF Mapping Syntax Standardization Community Consensus on RDF Vocabularies

It is NOT about RDF vs. XML vs. SQL: 

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

SQL-RDF Integration Value: 

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

OpenLink Futures: 

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

Additional Information: 

Additional Information http://virtuoso.openlinksw.com (general site) http://virtuoso.openlinksw.com/wiki/main/ (Open Source Edition Site) http://virtuoso.openlinksw.com/Whitepapers/index.htm (OpenLink Data Spaces)

Slide22: 

Thank You!

authorStream Live Help