Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

Overview

A publicly-accessible SPARQL endpoint may be installed.  It takes the form of an additional repository which contains everything in the main repository which is public (i.e. not email-addresses, phone-numbers, etc.; not un-published resources).  It is affectionately known as the "sparqler" associated with this main repository.  It is synchronized with its main repository on a regular basis - typically every night.

Installation

The installation of a sparqler follows very much the same procedure as for the main repository, with one or two changes because it doesn't live at the same location.  The quick-start installation procedure is as follows - additional details are the same as for the main repository.

  1. In the existing eagle-i home directory (the parent of the repository home-directory, ${REPO_HOME}) create a directory "sparqler", and set an environmental variable ${SPARQLER_HOME}.   For example, if the repository home is /opt/eaglei/repo, then the sparqler home would be /opt/eaglei/sparqler.
  2. Copy the file ${REPO_HOME}/webapps/sparqler.war to Tomcat's webapps directory.
  3. Add an additional system property to catalina.properties:
    No Format
    org.eaglei.sparqler.home=/opt/eaglei/sparqler
    
  4. Run the script ${REPO_HOME}/etc/prepare-install.sh with an additional argument: "sparqler-users.derby" (note that the username and password for the user you create here - who administers the sparqler - these should be different from the main repository's admin-user credentials):
    No Format
     bash ${REPO_HOME}/etc/prepare-install.sh SPARQLER_USERNAME SPARQLER_PASSWORD ${REPO_HOME} sparqler-users.derby
    
  5. Create and edit the repository configuration file (${SPARQLER_HOME}/configuration.properties) - it should be identical to the main repository's config-file, with the following two exceptions - we set:
    No Format
    eaglei.repository.sesame.dir=${sys:org.eaglei.sparqler.home}/sesame
    eaglei.repository.log.dir=${sys:org.eaglei.sparqler.home}/logs
    
  6. Add some properties to the files eagle-i-apps.properties, eagle-i-apps-credentials.properties (found in directories ${EAGLE_I_HOME}/conf and possibly ${EAGLE_I_HOME}/.config):
    No Format
    eaglei.sparqler.source.URL=https://eagle-i.myInstitution.edu/
    eaglei.sparqler.target.URL=https://eagle-i.myInstitution.edu/sparqler/
    eaglei.sparqler.lastSynchronizedDateFile=/eagle-i/home/sparqlerSyncDate.properties
    # credentials to enable the Synchronizer to access the source and target:
    eaglei.sparqler.source.user=myRepositoryUser
    eaglei.sparqler.source.password=myRepositoryPassword
    eaglei.sparqler.target.user=mySparqlerUser
    eaglei.sparqler.target.password=mySparqlerPassword
    
  7. Start up Tomcat
  8. Run the script ${REPO_HOME}/etc/finish-install.sh, using the same sparqler-admin username and password that you set up in step 1, above, when you ran the "prepare-install.sh":
    No Format
     bash ${REPO_HOME}/etc/finish-install.sh SPARQLER_USERNAME SPARQLER_PASSWORD https://localhost:8443/sparqler
    

Synchronization

The sparqler repository keeps itself up-to-date with its source-repository by running a periodic synchronization process.  This is run automatically so long as the sparlqer and its source-repository are running - no intervention is required.

However, if for some reason the synchronization fails (look in sparqler/logs/repository.log), you can run the synchronizer manually by invoking the script ${REPO_HOME}/etc/synchronize-sparqler.sh as follows:

No Format
cd /opt/eaglei
bash repo/etc/synchronize-sparqler.sh

If you run on Windows (warning: this is explicitly unsupported), you should set up a Unix-like environment (e.g. Cygwin) in which to perform the installation and run the shell-scripts.