Skip to content

Instantly share code, notes, and snippets.

@markbirbeck
Created November 30, 2011 16:28
Show Gist options
  • Save markbirbeck/1409692 to your computer and use it in GitHub Desktop.
Save markbirbeck/1409692 to your computer and use it in GitHub Desktop.
Installing Virtuoso
h1. 4store
h1. Virtuoso OpenSource
h2. Check dependencies
A CentOS image from RightScale will have the following versions:
|autoconf|2.59|
|automake|1.9.6|
|libtoolize|1.5.22|
|flex|2.5.4|
|bison|2.3|
|gawk|3.1.5|
|m4|1.4.5|
|make|3.8.1|
|openssl|0.9.8e-fips-rhel5|
These are all equal to or better than the versions required by Virtuoso.
However, we also need gperf and openssl-devel, so do:
yum install gperf
yum install openssl-devel
h2. Download
mkdir /tmp/virtuoso
cd /tmp/virtuoso
Download "Virtuoso OpenSource edition version 6.1.2":http://sourceforge.net/projects/virtuoso/files/virtuoso/6.1.2/virtuoso-opensource-6.1.2.tar.gz/download and unpack:
wget http://sourceforge.net/projects/virtuoso/files/virtuoso/6.1.2/virtuoso-opensource-6.1.2.tar.gz/download
tar -xvf virtuoso-opensource-6.1.2.tar.gz
h2. Build
Change into the directory created by unpacking the source, and then:
CFLAGS="-O2 -m64"
export CFLAGS
./configure
make
make install
h2. Launching
(This first path is wrong...the build needs tweaking to get this right.)
cd /usr/local/virtuoso-opensource/var/lib/virtuoso/db
/usr/local/virtuoso-opensource/bin/virtuoso-t -f &
h2. Verify
Check that Virtuoso is running ok, with:
http://ec2-79-125-59-17.eu-west-1.compute.amazonaws.com:8890/
http://ec2-79-125-59-17.eu-west-1.compute.amazonaws.com:8890/sparql
h2. Stop the server
Either open a new window or ^C on the current window, and then:
/usr/local/virtuoso-opensource/bin/isql 1111 dba dba
shutdown();
h2. Uploading data
Run "the bulk loading script":http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtBulkRDFLoaderScript. (Just pasting it into an isql prompt works.)
Place the directory of files to be uploaded into the db directory.
Run isql and register a file to upload (assuming the directory is called 'data'):
ld_dir ('data', 'nic.rdf', 'http://datashuttle.nhs.nic.org/innovations/');
Upload the file:
rdf_loader_run ();
h2. Performance
See: http://www.openlinksw.com/dataspace/dav/wiki/Main/VirtConfigScale
h3. RAM
Use:
NumberOfBuffers = 450000
MaxCheckpointRemap = 250000
MaxDirtyBuffers = 300000
h3. Using EBS
http://www.openlinksw.com/dataspace/dav/wiki/Main/VirtEC2AMIElasticBlockStorageConfig
h3. Striping
http://neurocommons.org/page/2007_prototype_queries#Upgrading_hardware
(Don't follow the virtuoso-t -b example, though.)
h3. Indexes
http://docs.openlinksw.com/virtuoso/rdfperformancetuning.html
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment