Replace Mulgara with BlazeGraph

  • Count current triples

browse http://v2p2repos.to.cnr.it:8080/fedora/risearch

Language - itql
Response - CSV
Limit - Unlimited
Query:

select count(select $subject $predicate $object from <#ri> where $subject $predicate $object) from <#ri> where $subject $predicate $object;

"k0"
468981
  • Disable Tomcat7 start at boot
# sysv-rc-conf 
               disable tomcat7 at boot for each runlevel
# reboot
  • Install a second instance of Tomcat7 and BlazeGraph
# wget http://mirror.nohup.it/apache/tomcat/tomcat-7/v7.0.72/bin/apache-tomcat-7.0.72.tar.gz
# tar xf apache-tomcat-7.0.72.tar.gz
# mv apache-tomcat-7.0.72 /usr/share/tomcat-blzg

# useradd -m -d /var/bigdata -s /bin/false blazegraph
# nano -w /var/bigdata/.bash_profile

  export BLZG_CONF=/etc/bigdata
  export CATALINA_HOME=/usr/share/tomcat-blzg
  export CATALINA_PID="/usr/share/tomcat-blzg/catalina.pid"
  export JAVA_HOME=/usr/lib/jvm/java-8-oracle/jre
  export BLZG_USER=blazegraph
  export PATH=/usr/lib/jvm/java-8-oracle/jre/bin:/usr/share/tomcat-blzg/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
  export JAVA_OPTS="-server -Xmx2000m -Dcom.bigdata.rdf.sail.webapp.ConfigParams.propertyFile=/etc/bigdata/RWStore.properties -Dlog4j.configuration=/etc/bigdata/log4j.properties -Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8 -XX:+UseParallelOldGC"

NOTE: instead of "-XX:+UseParallelOldGC" may be better "-XX:+UseG1GC -XX:+DisableExplicitGC" [thanks Diego!]
NOTE: add initial mem size to, so "-Xmx2000m" change into "-Xms2000m -Xmx2000m" [thanks Diego!]

# nano -w /usr/share/tomcat-blzg/conf/server.xml

-    <Server port="8005" shutdown="SHUTDOWN">
+    <Server port="8006" shutdown="SHUTDOWN">

-    <Connector port="8080" protocol="HTTP/1.1"
+    <Connector port="8081" protocol="HTTP/1.1"
               connectionTimeout="20000"
-               redirectPort="8443" />
+               redirectPort="8444" />

-    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
+    <Connector port="8010" protocol="AJP/1.3" redirectPort="8444" />

# mkdir -p /var/bigdata/logs
# mkdir -p /etc/bigdata/

# git clone https://github.com/discoverygarden/blazegraph_conf
# cp blazegraph_conf/RWStore.properties /etc/bigdata
# cp blazegraph_conf/log4j.properties /etc/bigdata
# cp blazegraph_conf/blazegraph_init /etc/init.d/blazegraph


# cd /usr/share/tomcat-blzg/webapps
# wget https://sourceforge.net/projects/bigdata/files/bigdata/2.1.0/blazegraph.war/download -O blazegraph.war


# chowner -R blazegraph:blazegraph /usr/share/tomcat-blzg
# chowner -R blazegraph:blazegraph /var/bigdata
# chowner -R blazegraph:blazegraph /etc/bigdata
# chmoder +x /etc/init.d/blazegraph

# update-rc.d blazegraph start 64 2 3 4 5 . stop 36 0 1 6 .
# service blazegraph start
  • Install Trippi-sail
# apt-get install maven
	maven is already the newest version (3.3.9-3).

# git clone https://github.com/discoverygarden/trippi-sail.git
# cd trippi-sail
# mvn package -Dfedora.version=3.8.1
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] trippi-sail ........................................ SUCCESS [01:01 min]
[INFO] trippi-sail-base ................................... SUCCESS [ 45.640 s]
[INFO] trippi-sail-blazegraph-embedded .................... SUCCESS [ 50.659 s]
[INFO] trippi-sail-blazegraph-remote ...................... SUCCESS [ 14.731 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 02:52 min
[INFO] Finished at: 2016-10-17T15:32:29+02:00
[INFO] Final Memory: 69M/440M
[INFO] ------------------------------------------------------------------------

# cd trippi-sail-blazegraph-remote/target
# tar xf trippi-sail-blazegraph-remote-0.0.1-SNAPSHOT-bin.tar.gz
# mv trippi-sail-blazegraph-remote-0.0.1-SNAPSHOT /opt/trippi-sail
# chowner -R tomcat7:tomcat7 /opt/trippi-sail

# service tomcat7 stop
  • Configure Fedora
# cp /etc/tomcat7/Catalina/localhost/fedora.xml ~/backup/
# nano -w /etc/tomcat7/Catalina/localhost/fedora.xml

<?xml version="1.0" encoding="UTF-8"?>
<Context>
+ <Loader
+       className="org.apache.catalina.loader.VirtualWebappLoader"
+       virtualClasspath="/opt/trippi-sail/*.jar"
+       searchVirtualFirst="true"/>
  <Parameter name="fedora.home" value="/usr/local/fedora" />
</Context>
# cp ~/trippi-sail/trippi-sail-blazegraph-remote/src/main/resources/sample-bean-config-xml/remote-blazegraph.xml /usr/local/fedora/server/config/spring/
# nano -w /usr/local/fedora/server/config/spring/remote-blazegraph.xml

+               <constructor-arg type="java.lang.String" value="http://v2p2repos.to.cnr.it:8081/blazegraph"/>
+               <constructor-arg type="boolean" value="false"/>
               <constructor-arg ref="httpClient" />
               <constructor-arg ref="executorPool" />

       </bean>

-        <bean class="org.trippi.impl.sesame.SesameSession">
+        <bean class="org.trippi.impl.sesame.SesameSession" scope="prototype" >
                <constructor-arg ref="trippiSailRepository" />
                <constructor-arg ref="org.trippi.AliasManager" />
-                <constructor-arg value="test://model#" />
+                <constructor-arg value="fedora://model#"/>
                <constructor-arg value="ri" />
        </bean>
# chowner -R tomcat7:tomcat7 /usr/local/fedora

# cp /usr/local/fedora/server/config/fedora.fcfg ~/backup/
# nano -w /usr/local/fedora/server/config/fedora.fcfg

+<!--
    <param name="datastore" value="localMulgaraTriplestore">
      <comment>(required)
            Name of the triplestore to use. WARNING: changing the
            triplestore running the Resource Index Rebuilder.</comment>
    </param>
+-->

# cp /usr/local/fedora/server/bin/env-server.sh ~/backup/
# nano -w /usr/local/fedora/server/bin/env-server.sh

-	-cp \"$webinf\"/classes:\"$FEDORA_HOME\"/server/bin:\"$webinf\"/lib/* \
+	-cp \"$webinf\"/classes:/opt/trippi-sail/*:\"$FEDORA_HOME\"/server/bin:\"$webinf\"/lib/* \
  • Rebuild RI and Mysql DB
Check pigGen before and after
# mysql -u root -p

	mysql> use v2p2db
	mysql> select * from pidGen;

		+------------+-----------+
		| namespace  | highestID |
		+------------+-----------+
		| islandora  |        35 |
		| v2p2       |        14 |
		| v2p2text   |      1399 |
		| v2p2image  |       115 |
		| v2p2notext |      4930 |
		+------------+-----------+
		5 rows in set (0.00 sec)

	mysql> quit
# su - tomcat7 -s /bin/bash
$ cd /usr/local/fedora/server/bin/
$ export FEDORA_HOME=/usr/local/fedora
$ export PATH=$FEDORA_HOME/server/bin:$FEDORA_HOME/client/bin:$JAVA_HOME/bin:$PATH
$ export CATALINA_HOME=/usr/share/tomcat7
$ export FEDORA_WEBAPP_HOME=/var/lib/tomcat7/webapps/fedora
$ ./fedora-rebuild.sh [NOTE: use nohup]
	1) RI rebuild

[mysql rebuild???]

$ exit
Recheck pidGen

Check triple count

    Browse http://v2p2repos.to.cnr.it:8081/blazegraph/#query

       SELECT (COUNT(*) AS ?triples) WHERE {?s ?p ?o}

triples
468981
# service tomcat7 start

Browse [?http://drupalserver/admin/islandora/configure uncheck “Use iTQL for particular queries”.]
# service tomcat7 stop
# service blazegraph stop

# nano -w /etc/bigdata/log4j.properties

	log4j.rootCategory=ERROR, dest1
	...
	log4j.logger.com.bigdata=ERROR
	log4j.logger.com.bigdata.btree=ERROR

# service blazegraph start
# service tomcat7 start
 
 
repo381/blazeg.txt · Last modified: 2017/02/17 15:59 by giancarlo

Developers: CNR IRCrES IT Office and Library
Giancarlo Birello (giancarlo.birello _@_ ircres.cnr.it) and Anna Perin (anna.perin _@_ ircres.cnr.it)
V2P2@TO.CNR is licensed under: Creative Commons License
Recent changes RSS feed Creative Commons License Valid XHTML 1.0 Valid CSS Driven by DokuWiki
Drupal Garland Theme for Dokuwiki