Author: djkevincr
Date: Sun Nov 11 18:47:34 2018
New Revision: 1846356
URL: http://svn.apache.org/viewvc?rev=1846356&view=rev
Log:
Fix GORA-540 - adding doc for Ignite datastore
Added:
gora/site/trunk/content/current/gora-ignite.md
Modified:
gora/site/trunk/content/current/index.md
Added: gora/site/trunk/content/current/gora-ignite.md
URL:
http://svn.apache.org/viewvc/gora/site/trunk/content/current/gora-ignite.md?rev=1846356&view=auto
==============================================================================
--- gora/site/trunk/content/current/gora-ignite.md (added)
+++ gora/site/trunk/content/current/gora-ignite.md Sun Nov 11 18:47:34 2018
@@ -0,0 +1,68 @@
+Title: Gora Ignite Module
+
+##Overview
+This is the main documentation for the gora-ignite module. <b>gora-ignite</b>
module enables [Apache Ignite](https://ignite.apache.org/) backend support for
Gora.
+
+[TOC]
+
+##Gora Ignite Properties - gora.properties
+
+* <code>gora.datastore.default=org.apache.gora.ignite.store.IgniteStore</code>
- Implementation of the persistent Java storage class for Ignite
+* <code>gora.datastore.ignite.schema=PUBLIC</code> - Property pointing to the
Schema of the Ignite instance
+* <code>gora.datastore.ignite.host=localhost</code> - Property pointing to
the host where the server is running
+* <code>gora.datastore.ignite.port=10800</code> - Property pointing to the
port where the server is running
+* <code>gora.datastore.ignite.user=username</code> - An optional property
defining the username of the server if available
+* <code>gora.datastore.ignite.password=password</code> - An optional property
defining the password of the server if available
+* <code>gora.datastore.ignite.additionalConfigurations=</code> - An optional
property defining additional configurations for the Ignite connection, format
and available parameters: [Ignite JDBC
Parameters](https://apacheignite-sql.readme.io/docs/jdbc-driver#section-parameters)
+
+##Gora Ignite mappings - gora-ignite-mapping.xml
+You should then create a gora-ignite-mapping.xml which will describe how you
want to store each of your Gora persistent objects and which primary keys you
want to use:
+
+ <gora-otd>
+ <class name="org.apache.gora.examples.generated.Employee"
keyClass="java.lang.String" table="Employee">
+ <primarykey column="pkssn" type="VARCHAR" />
+ <field name="ssn" column="ssn" type="VARCHAR"/>
+ <field name="name" column="name" type="VARCHAR"/>
+ <field name="dateOfBirth" column="dateOfBirth" type="BIGINT"/>
+ <field name="salary" column="salary" type="INT"/>
+ <field name="boss" column="boss" type="BINARY"/>
+ <field name="webpage" column="webpage" type="BINARY"/>
+ </class>
+ </gora-otd>
+
+Here you can see that we require the definition of child elements within the
<code>gora-otd</code> mapping configuration.
+
+Each <b>class</b> element should contain the following elements;
+
+1. a parameter defining the Persistent class name e.g.
<b>org.apache.gora.examples.generated.Employee</b>,
+
+2. a parameter defining the keyClass e.g. <b>java.lang.String</b> which
specifies the key which maps to the field values,
+
+3. a parameter defining the table e.g. <b>Employee</b> which will be used to
persist each Gora object
+
+In addition, within the class element we should define two type of child
elements: a primary key (<b>primarykey</b> tag) and some fields (<b>field</b>
tag).
+
+The primary key element defines which column is used by Ignite to identify the
records stored in the DataStore. It has two costumizable parameters:
<b>column</b> which defines the column's name of the table to be used as
identifier for the records. And <b>type</b> which defines the data type of the
aforementioned column.
+
+The fields elements define the actual mapping between persistent object's
attributes and the table's columns. These mapping have three customizable
parameters: <b>name</b> which correspond to the object attribute's name.
<b>column</b> which defines the column's name of the table to be assosiated
with the attribute. And <b>type</b> which defines the data type of that column.
+
+Notice that complex structures such 3-union fields are mapped using Binary
fields through [Avro](https://avro.apache.org/) serialization.
+
+
+##Supported Data types
+Description of supported <b>type</b> values:
+
+| Type value | Description |
+|------------|---------------------------------|
+| BINARY | Store as Byte[] |
+| BOOLEAN | Store as Boolean |
+| INT | Store as Integer |
+| TINYINT | Store as Byte |
+| SMALLINT | Store as Short |
+| BIGINT | Store as Long |
+| DECIMAL | Store as BigDecimal |
+| DOUBLE | Store as Double |
+| REAL | Store as Float |
+| VARCHAR | Store as Unicode string |
+
+A more detailed list of data types supported by Ignite and its equivalents in
Java refer to [Ignite JDBC Data
types](https://apacheignite-sql.readme.io/docs/data-types)
Modified: gora/site/trunk/content/current/index.md
URL:
http://svn.apache.org/viewvc/gora/site/trunk/content/current/index.md?rev=1846356&r1=1846355&r2=1846356&view=diff
==============================================================================
--- gora/site/trunk/content/current/index.md (original)
+++ gora/site/trunk/content/current/index.md Sun Nov 11 18:47:34 2018
@@ -39,6 +39,7 @@ following modules are currently implemen
* [gora-mongodb](./gora-mongodb.html): Module for
[MongoDB](http://www.mongodb.org/) backend and MongoStore implementation;
* [gora-solr](./gora-solr.html): Module for [Apache
Solr](http://lucene.apache.org/solr) backend and SolrStore implementation;
* [gora-aerospike](./gora-aerospike.html): Module for
[Aerospike](http://www.aerospike.com/) backend and Aerospike implementation;
+* [gora-ignite](./gora-ignite.html): Module for [Apache
Ignite](https://ignite.apache.org/) backend and IgniteStore implementation;
* [gora-tutorial](./tutorial.html): The Gora LogManager tutorial;
* gora-sources-dist: Packaging module used to build and distribute Gora
sources during project releases;