Skip to content

Loading Data Virtuoso

Dimitris Kontokostas edited this page Jul 9, 2014 · 21 revisions

Install Virtuoso

Option 1: Standard distributions (note that it might be an old version)

# Debian-based systems
$sudo apt-get install virtuoso-opensource

Option 2: LOD2 stack packages (usually latest version) (See this page for more options)

# download the repository package 
$ wget http://stack.lod2.eu/lod2stable-repository.deb
# install the repository package 
$ sudo dpkg -i lod2stable-repository.deb
# update the repository database 
$ sudo apt-get update
# install lod2-virtuoso-opensource
$ sudo apt-get install lod2-virtuoso-opensource

Option 3: Build from source

# Install necessary packages
$ sudo apt-get install autoconf automake libtool flex bison gperf gawk m4 make openssl
# download the code
$ git clone https://github.com/openlink/virtuoso-opensource.git
$ cd virtuoso-opensource
# Build 
$ ./autogen.sh
$ ./configure --with-readline # use --help for more installation options
$ make
$ make install
# If you don't override the path in ./configure VOS is installed in /usr/local/virtuoso-opensource/

Initial Setup

By default, the Virtuoso server listens for HTTP at TCP port 8890, and for SQL data access (via iSQL, ODBC, JDBC, OLE DB, ADO.NET, etc.) at TCP port 1111. These ports may be changed by editing the virtuoso.ini file.

The virtuoso.ini file is located in /etc/visrtuoso/ on a dpkg / rpm installation or in `{install-dir}/var/lib/virtuoso/db/' when build from source (unless configured otherwise).

Similarly, the database resides in /var/lib/virtuoso/db/virtuoso.db or {install-dir}/var/lib/virtuoso/db/virtuoso.db. If the server is terminated normally the virtuoso.db contains all the data and can be copied as a normal file to be opened by another server.

dpkg / rpm installation provide init.d scripts (that may not be enabled by default) and can be invoked by sudo service virtuoso-opensource {start|stop|force-stop|restart}. Compiled installations can reuse the existing script or start with {install-dir}/bin/virtuoso-t -f <virtuoso.ini file>

Loading data

Command Line Interface (more powerful / faster)

The easier way to load multiple files in Virtuoso is to use the Bulk Loader.

Put all the data you want to load in a folder and place a global.graph file containing the the graph you want to place them in (http://dbpedia.org in our case).

Open ISQL

# path to isql <isql port> <username> <password>
$ isql 1111 dba dba

Load the data

# Set the files to be loaded

# ld_dir() to load only from the specified directory, excluding any subdirectories -- 
# arguments '<source-filename-or-directory>', '<file name pattern>', 'default graph iri in case *.graph files are missing'
$ ld_dir ('/path/to/files', '*.ttl.gz', 'http://dbpedia.org');
# ld_dir_all() to load from the specified directory, including any and all subdirectories -- 
$ ld_dir_all ('/path/to/files', '*.ttl.gz', 'http://dbpedia.org');

# run the loading
$ rdf_loader_run();

Check the original article for more options / details

Web Interface (more user friendly / slower)

  • Open the Conductor interface: http://localhost:8890/conductor (port might differ in your installation)
  • Navigate to Linked Data -> Quad Store Upload
  • Upload a file or point to a remote URL
  • Remember to put the proper Named Graph IRI (usually http://dbpedia.org)

SPARQL Endpoint access

Clone this wiki locally