You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@gora.apache.org by bu...@apache.org on 2014/10/15 18:11:42 UTC

svn commit: r925858 - in /websites/staging/gora/trunk/content: ./ current/gora-metamodule.html

Author: buildbot
Date: Wed Oct 15 16:11:42 2014
New Revision: 925858

Log:
Staging update by buildbot for gora

Modified:
    websites/staging/gora/trunk/content/   (props changed)
    websites/staging/gora/trunk/content/current/gora-metamodule.html

Propchange: websites/staging/gora/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Wed Oct 15 16:11:42 2014
@@ -1 +1 @@
-1632107
+1632108

Modified: websites/staging/gora/trunk/content/current/gora-metamodule.html
==============================================================================
--- websites/staging/gora/trunk/content/current/gora-metamodule.html (original)
+++ websites/staging/gora/trunk/content/current/gora-metamodule.html Wed Oct 15 16:11:42 2014
@@ -157,174 +157,23 @@ under the License. 
   <div class="container" id="Gora_Gora MongoDB Module">
 
 <h2 id="overview">Overview</h2>
-<p>This is the main documentation for the gora-mongodb module. gora-mongodb 
-module enables <a href="http://www.mongodb.org">MongoDB</a> backend support for Gora.</p>
-<p>This module has been tested with MongoDB Server <a href="http://docs.mongodb.org/master/release-notes/2.4/">2.4.x</a>
-and <a href="http://docs.mongodb.org/master/release-notes/2.6/">2.6.x</a> series.
-It will connect to remote MongoDB server(s) using standard <a href="http://docs.mongodb.org/ecosystem/drivers/java/">Java MongoDB Driver</a></p>
+<p>This is the main documentation for the gora-metamodule module. gora-metamodule 
+module enables <a href="http://metamodel.incubator.apache.org/">Apache Metamodule</a> backend support for Gora.</p>
+<p>Metamodule is a data access framework, providing a common interface for exploration 
+and querying of different types of datastores. This module aims to significantly 
+enhance Gora's query support and functionality in an attempt to query data regardless
+of it's location.</p>
 <div class="toc">
 <ul>
 <li><a href="#overview">Overview</a></li>
 <li><a href="#goraproperties">gora.properties</a></li>
-<li><a href="#gora-mongodb-mappings">Gora MongoDB mappings</a></li>
+<li><a href="#gora-metamodel-mappings">Gora MetaModel mappings</a></li>
 </ul>
 </div>
 <h2 id="goraproperties">gora.properties</h2>
-<p>Here is a following sample <code>gora.properties</code> file to enable MongoStore:</p>
-<div class="codehilite"><pre><span class="c"># MongoDBStore properties</span>
-<span class="n">gora</span><span class="p">.</span><span class="n">datastore</span><span class="p">.</span><span class="n">default</span><span class="p">=</span><span class="n">org</span><span class="p">.</span><span class="n">apache</span><span class="p">.</span><span class="n">gora</span><span class="p">.</span><span class="n">mongodb</span><span class="p">.</span><span class="n">store</span><span class="p">.</span><span class="n">MongoStore</span>
-<span class="n">gora</span><span class="p">.</span><span class="n">mongodb</span><span class="p">.</span><span class="n">override_hadoop_configuration</span><span class="p">=</span><span class="nb">false</span>
-<span class="n">gora</span><span class="p">.</span><span class="n">mongodb</span><span class="p">.</span><span class="n">mapping</span><span class="p">.</span><span class="n">file</span><span class="p">=</span><span class="o">/</span><span class="n">gora</span><span class="o">-</span><span class="n">mongodb</span><span class="o">-</span><span class="n">mapping</span><span class="p">.</span><span class="n">xml</span>
-<span class="n">gora</span><span class="p">.</span><span class="n">mongodb</span><span class="p">.</span><span class="n">servers</span><span class="p">=</span><span class="n">localhost</span>
-<span class="n">gora</span><span class="p">.</span><span class="n">mongodb</span><span class="p">.</span><span class="n">db</span><span class="p">=</span><span class="n">sample</span>
-</pre></div>
-
-
-<p>Description of supported properties:</p>
-<table>
-<thead>
-<tr>
-<th>Property</th>
-<th>Example value</th>
-<th>Required ?</th>
-<th>Description</th>
-</tr>
-</thead>
-<tbody>
-<tr>
-<td>gora.datastore.default</td>
-<td>org.apache.gora.mongodb.store.MongoStore</td>
-<td>Yes</td>
-<td>Implementation of the persistent Java storage class for MongoDB</td>
-</tr>
-<tr>
-<td>gora.mongodb.override_hadoop_configuration</td>
-<td>false</td>
-<td>No</td>
-<td>If true, it will allow properties to be overriden by configuration coming from Hadoop</td>
-</tr>
-<tr>
-<td>gora.mongodb.mapping.file</td>
-<td>/gora-mongodb-mapping.xml</td>
-<td>No</td>
-<td>The XML mapping file to be used. If no value is used this defaults to gora-mongodb-mapping.xml</td>
-</tr>
-<tr>
-<td>gora.mongodb.servers</td>
-<td>localhost:27017</td>
-<td>Yes</td>
-<td>This value should specify the host:port for a running MongoDB node. Multiple values have to be separated by a coma character.</td>
-</tr>
-<tr>
-<td>gora.mongodb.db</td>
-<td>mytestdatabase</td>
-<td>Yes</td>
-<td>This value should specify the database for storage of documents.</td>
-</tr>
-<tr>
-<td>gora.mongodb.login</td>
-<td>login</td>
-<td>No</td>
-<td>Login that will be used to authenticate against MongoDB server. If blank, driver won't try authentication.</td>
-</tr>
-<tr>
-<td>gora.mongodb.secret</td>
-<td>password</td>
-<td>No</td>
-<td>Secret that will be used to authenticate against MongoDB server.</td>
-</tr>
-</tbody>
-</table>
-<h2 id="gora-mongodb-mappings">Gora MongoDB mappings</h2>
-<p>You should then create a <code>gora-mongodb-mapping.xml</code> which will describe <b>how</b> you want to
-store each of your Gora persistent objects:</p>
-<div class="codehilite"><pre><span class="nt">&lt;gora-otd&gt;</span>
-
-    <span class="nt">&lt;class</span> <span class="na">name=</span><span class="s">&quot;org.apache.gora.examples.generated.Employee&quot;</span> <span class="na">keyClass=</span><span class="s">&quot;java.lang.String&quot;</span> <span class="na">document=</span><span class="s">&quot;employees&quot;</span><span class="nt">&gt;</span>
-        <span class="nt">&lt;field</span> <span class="na">name=</span><span class="s">&quot;name&quot;</span> <span class="na">docfield=</span><span class="s">&quot;name&quot;</span> <span class="na">type=</span><span class="s">&quot;string&quot;</span><span class="nt">/&gt;</span>
-        <span class="nt">&lt;field</span> <span class="na">name=</span><span class="s">&quot;dateOfBirth&quot;</span> <span class="na">docfield=</span><span class="s">&quot;dateOfBirth&quot;</span> <span class="na">type=</span><span class="s">&quot;int64&quot;</span><span class="nt">/&gt;</span>
-        <span class="nt">&lt;field</span> <span class="na">name=</span><span class="s">&quot;ssn&quot;</span> <span class="na">docfield=</span><span class="s">&quot;ssn&quot;</span> <span class="na">type=</span><span class="s">&quot;string&quot;</span><span class="nt">/&gt;</span>
-        <span class="nt">&lt;field</span> <span class="na">name=</span><span class="s">&quot;salary&quot;</span> <span class="na">docfield=</span><span class="s">&quot;salary&quot;</span> <span class="na">type=</span><span class="s">&quot;int32&quot;</span><span class="nt">/&gt;</span>
-        <span class="nt">&lt;field</span> <span class="na">name=</span><span class="s">&quot;boss&quot;</span> <span class="na">docfield=</span><span class="s">&quot;boss&quot;</span> <span class="na">type=</span><span class="s">&quot;document&quot;</span><span class="nt">/&gt;</span>
-        <span class="nt">&lt;field</span> <span class="na">name=</span><span class="s">&quot;webpage&quot;</span> <span class="na">docfield=</span><span class="s">&quot;webpage&quot;</span> <span class="na">type=</span><span class="s">&quot;document&quot;</span><span class="nt">/&gt;</span>
-    <span class="nt">&lt;/class&gt;</span>
-
-<span class="nt">&lt;/gora-otd&gt;</span>
-</pre></div>
-
-
-<p>Each <b>class</b> element specifying persistent fields which values should map to. This element contains; </p>
-<ol>
-<li>
-<p>a parameter containing the Persistent class name e.g. <b>org.apache.gora.examples.generated.Employee</b>, </p>
-</li>
-<li>
-<p>a parameter containing the keyClass e.g. <b>java.lang.String</b> which specifies the keys which map to the field values, </p>
-</li>
-<li>
-<p>a parameter containing the MongoDB collection e.g. <b>employees</b> which will be used to persist each Gora object,</p>
-</li>
-<li>
-<p>finally a child element(s) <b>field</b> which represent all fields which are to be persisted into MongoDB.
-   These need to be configured such that they receive the following;</p>
-<p>a <b>name</b> attribute e.g. (name, dateOfBirth, ssn and salary respectively) which map to Gora field name, </p>
-<p>a <b>docfield</b> attribute containing the field's name in mapped Mongo document, </p>
-<p>a <b>type</b> attribute which allow transformation of Gora types into native MongoDB types.
-MongoDB use <a href="bsonspec.org">BSON</a> is a binary serialization format to store documents
-and make remote procedure calls. </p>
-<p>Description of supported <b>type</b> values:</p>
-</li>
-</ol>
-<table>
-<thead>
-<tr>
-<th>Type value</th>
-<th>Description</th>
-</tr>
-</thead>
-<tbody>
-<tr>
-<td>BINARY</td>
-<td>Store as binary data</td>
-</tr>
-<tr>
-<td>BOOLEAN</td>
-<td>Store as boolean value</td>
-</tr>
-<tr>
-<td>INT32</td>
-<td>Store as signed 32-bit integer</td>
-</tr>
-<tr>
-<td>INT64</td>
-<td>Store as signed 64-bit integer</td>
-</tr>
-<tr>
-<td>DOUBLE</td>
-<td>Store as floating point</td>
-</tr>
-<tr>
-<td>STRING</td>
-<td>Store as UTF-8 string</td>
-</tr>
-<tr>
-<td>DATE</td>
-<td>Store as UTC datetime (ISODate)</td>
-</tr>
-<tr>
-<td>LIST</td>
-<td>Store as Array</td>
-</tr>
-<tr>
-<td>DOCUMENT</td>
-<td>Store as embedded document</td>
-</tr>
-<tr>
-<td>OBJECTID</td>
-<td>Store as ObjectId (12-byte)</td>
-</tr>
-</tbody>
-</table>
+<p>TODO</p>
+<h2 id="gora-metamodel-mappings">Gora MetaModel mappings</h2>
+<p>TODO</p>
 
   </div> <!-- /container (main block) -->