The Virtuoso Universal Server is a middleware and database engine that combines the functionality of an RDBMS, ORDBMS, virtual database, RDF, XML, free-text, web application server and file server in a single system. A SPARQL end point is provided for accessing RDF data and an open source edition of the Virtuoso Universal Server is also available.

Virtuoso On the Amazon EC2 Cloud

Virtuoso Open-Source Edition

Download Virtuoso Open-Source Edition from github and build it locally.

The following command downloads using git;

$ git clone git://

  • When built on Mac OS X Virtuoso is installed to /usr/local/virtuoso-opensource
  • Virtuoso is started by running the command sudo virtuoso-t -f & from a command prompt in the directory var/lib/virtuoso/db (i.e. /usr/local/virtuoso-opensource/var/lib/virtuoso/db ). When Virtuoso has finished its start up sequence the ports the web app and the server use are displayed, e.g.
    22:18:57 HTTP/WebDAV server online at 8890
    22:18:57 Server online at 1111 (pid 207)
  • Using the port 8890 listed above open a web browser at http://localhost:8890/ to view the Virtuoso Universal Server welcome page
  • In a command window run the isql command in the bin directory ( i.e. /usr/local/virtuoso-opensource/bin)
    > isql 1111 dba dba
    to get an SQL> prompt.
  • RDF Data Access and Data Management outlines how to load RDF using SQL RDF_LOAD_RDFXML, for example load an online FOAF file with the command
    SQL>DB.DBA.RDF_LOAD_RDFXML (http_get (''), 'no', '');
  • Once loaded SPARQL queries can be run as follows
    SQL>SPARQL SELECT * FROM <> WHERE { ?s ?p ?o . FILTER (?o LIKE '%Richard%') };
  • Loading MEA RDF using SQL RDF_LOAD_RDFXML.
    SQL>DB.DBA.RDF_LOAD_RDFXML (http_get (''), 'no', '');
    SQL>SPARQL SELECT * FROM <> WHERE { ?s ?p ?o . FILTER (?o LIKE '%B2B%') };
  • The SPARQL endpoint is available at http://<host>:<port>/sparql
    The follow two examples query a local and a remote sparql end point
  • http://localhost:8890/sparql?