You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@marmotta.apache.org by ss...@apache.org on 2013/11/08 15:25:15 UTC

svn commit: r1540050 - in /incubator/marmotta/site/trunk/content: markdown/kiwi/sparql.md.vm markdown/platform/backends.md.vm site.xml

Author: sschaffert
Date: Fri Nov  8 14:25:14 2013
New Revision: 1540050

URL: http://svn.apache.org/r1540050
Log:
added documentation for Marmotta backends

Added:
    incubator/marmotta/site/trunk/content/markdown/platform/backends.md.vm
      - copied, changed from r1539970, incubator/marmotta/site/trunk/content/markdown/platform/core-module.md.vm
Modified:
    incubator/marmotta/site/trunk/content/markdown/kiwi/sparql.md.vm
    incubator/marmotta/site/trunk/content/site.xml

Modified: incubator/marmotta/site/trunk/content/markdown/kiwi/sparql.md.vm
URL: http://svn.apache.org/viewvc/incubator/marmotta/site/trunk/content/markdown/kiwi/sparql.md.vm?rev=1540050&r1=1540049&r2=1540050&view=diff
==============================================================================
--- incubator/marmotta/site/trunk/content/markdown/kiwi/sparql.md.vm (original)
+++ incubator/marmotta/site/trunk/content/markdown/kiwi/sparql.md.vm Fri Nov  8 14:25:14 2013
@@ -1,6 +1,6 @@
 # KiWi Native SPARQL #
 
-The KiWi SPARQL module offers optimized [SPARQL 1.1][http://www.w3.org/TR/sparql11-query/] query support for typical
+The KiWi SPARQL module offers optimized [SPARQL 1.1](http://www.w3.org/TR/sparql11-query/) query support for typical
 cases by translating parts of a SPARQL query directly into SQL. Currently, the following SPARQL constructs are translated:
 
 * JOIN between statement patterns: in case a part of a SPARQL query is a join between statement patterns, this part
@@ -58,7 +58,7 @@ boolean values (found or not found):
   boolean connectors; words are AND connected, i.e. all words have to be found in the text for a successful match
 * `fulltext-query(text, query, [language])`: searches "text" using the boolean query string passed in "query", optionally
   applying language-specific processing for the given language; query is a boolean query string following the
-  [syntax used by PostgreSQL][http://www.postgresql.org/docs/9.3/static/textsearch-controls.html#TEXTSEARCH-PARSING-QUERIES]
+  [syntax used by PostgreSQL]()http://www.postgresql.org/docs/9.3/static/textsearch-controls.html#TEXTSEARCH-PARSING-QUERIES)
 
 Note that full-text search is only available when using backend databases that support this functionality (currently only
 PostgreSQL and MySQL). Only PostgreSQL has real support for language specific processing. Also note that performance

Copied: incubator/marmotta/site/trunk/content/markdown/platform/backends.md.vm (from r1539970, incubator/marmotta/site/trunk/content/markdown/platform/core-module.md.vm)
URL: http://svn.apache.org/viewvc/incubator/marmotta/site/trunk/content/markdown/platform/backends.md.vm?p2=incubator/marmotta/site/trunk/content/markdown/platform/backends.md.vm&p1=incubator/marmotta/site/trunk/content/markdown/platform/core-module.md.vm&r1=1539970&r2=1540050&rev=1540050&view=diff
==============================================================================
--- incubator/marmotta/site/trunk/content/markdown/platform/core-module.md.vm (original)
+++ incubator/marmotta/site/trunk/content/markdown/platform/backends.md.vm Fri Nov  8 14:25:14 2013
@@ -1,3 +1,145 @@
-# Apache Marmotta Platform: Core
+# Apache Marmotta Platform: Backends
 
-@TODO@
\ No newline at end of file
+Introduction
+------------
+
+Starting with version 3.2, Apache Marmotta supports exchangeable triple store backends. This allows users of existing
+triple stores to simply connect to these and offer the data as Linked Data and it allows the use of special purpose
+triple stores like [BigData](http://www.bigdata.com). Currently, the following backends are available for Marmotta:
+
+* KiWi Triple Store: this is still the default backend for Apache Marmotta, as it is the most flexible and with most
+  features; the KiWi triple store stores all data in a relational database
+* Sesame Native: allows to use a Sesame NativeStore as backend for Apache Marmotta; the Sesame NativeStore is a
+  lightweight triple store that stores all data in a directory in the file system
+* BigData (experimental): allows to use a BigData triple store as backend; BigData is a high-performance triple store
+  implementation for huge datasets; note that BigData is published under GPL license and thus not compatible with the
+  Apache Software License; the BigData backend is therefore not built by default and needs to be compiled manually from
+  the Marmotta source code;
+
+Note that not all triple stores support all Marmotta functionalities. At the moment, reasoning and versioning are only
+supported by the KiWi backend.
+
+Configuration
+-------------
+
+Changing backends is currently only possible when assembling the web application .war file, because only one backend
+can be on the classpath for any installation. The easiest way to change the Marmotta backend is to copy over the
+configuration from the default webapp launcher in launchers/webapp and change the Maven build file (pom.xml) by adding
+dependencies to the appropriate backend.
+
+<h3>KiWi Backend</h3>
+
+For using the KiWi Backend, you should add the following dependencies to your pom.xml file:
+
+        <dependency>
+            <groupId>org.apache.marmotta</groupId>
+            <artifactId>marmotta-backend-kiwi</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.marmotta</groupId>
+            <artifactId>marmotta-ldcache-common</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.marmotta</groupId>
+            <artifactId>marmotta-ldcache-kiwi</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.marmotta</groupId>
+            <artifactId>marmotta-reasoner-kiwi</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.marmotta</groupId>
+            <artifactId>marmotta-sparql</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.marmotta</groupId>
+            <artifactId>marmotta-security</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.marmotta</groupId>
+            <artifactId>marmotta-versioning-common</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.marmotta</groupId>
+            <artifactId>marmotta-versioning-kiwi</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+
+
+The administration interface will then also include an appropriate configuration screen for the KiWi backend (e.g. for
+configuring a different database backend than the default H2).
+
+<h3>Sesame Native Backend</h3>
+
+For using the Sesame Native backend, add the following dependencies to your pom.xml file (or replace the KiWi dependencies
+described above):
+
+
+        <dependency>
+            <groupId>org.apache.marmotta</groupId>
+            <artifactId>marmotta-backend-native</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.marmotta</groupId>
+            <artifactId>marmotta-ldcache-common</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.marmotta</groupId>
+            <artifactId>marmotta-ldcache-file</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.marmotta</groupId>
+            <artifactId>marmotta-sparql</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+
+Note that the Sesame Native backend currently does not support versioning and reasoning, therefore these modules
+are not configured here. The administration interface will then again include an appropriate configuration screen
+for configuring the backend.
+
+<h3>BigData Backend</h3>
+
+The BigData library is unfortunately only available with GPL license, which is not fully compatible with the more liberal
+Apache License used by Apache Marmotta. For this reason, we do not distribute binary versions of the BigData backend.
+Instead, you need to manually check out the source code of Marmotta from the GIT repository and build the whole source
+tree with the following command:
+
+        mvn clean install -Pnon-free
+
+After this, for using the Sesame Native backend, add the following dependencies to your pom.xml file (or replace the
+KiWi dependencies described above):
+
+        <dependency>
+            <groupId>org.apache.marmotta</groupId>
+            <artifactId>marmotta-backend-bigdata</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.marmotta</groupId>
+            <artifactId>marmotta-ldcache-common</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.marmotta</groupId>
+            <artifactId>marmotta-ldcache-file</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.marmotta</groupId>
+            <artifactId>marmotta-sparql</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+
+Note that the BigData library still uses the Sesame 2.6 API while Marmotta uses Sesame 2.7. Also, BigData bypasses the
+normal SPARQL query evaluation of Sesame, so we cannot easily integrate our transaction functionalities. For this reason,
+the BigData integration is still experimental and we do not recommend it for production use yet.
\ No newline at end of file

Modified: incubator/marmotta/site/trunk/content/site.xml
URL: http://svn.apache.org/viewvc/incubator/marmotta/site/trunk/content/site.xml?rev=1540050&r1=1540049&r2=1540050&view=diff
==============================================================================
--- incubator/marmotta/site/trunk/content/site.xml (original)
+++ incubator/marmotta/site/trunk/content/site.xml Fri Nov  8 14:25:14 2013
@@ -78,6 +78,7 @@
         <menu name="Platform">
             <item name="Introduction" href="platform/index.html" />
             <item name="Core Module" href="platform/core-module.html" />
+            <item name="Backends" href="platform/backends.html" />
             <item name="LDCache Module" href="platform/ldcache-module.html" />
             <item name="LDPath Module" href="platform/ldpath-module.html" />
             <item name="Reasoner Module" href="platform/reasoner-module.html" />