blob: f5fbec6995f12ed7046fafde751e51a91042266f [file] [log] [blame]
<!--
~ Licensed to the Apache Software Foundation (ASF) under one
~ or more contributor license agreements. See the NOTICE file
~ distributed with this work for additional information
~ regarding copyright ownership. The ASF licenses this file
~ to you under the Apache License, Version 2.0 (the
~ "License"); you may not use this file except in compliance
~ with the License. You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
~
~
-->
<html>
<body>
<h2>Casssandra EntityStore.</h2>
<h3>Polygene's Cassandra Keyspace</h3>
<p>
The Cassandra EntityStore can either use an existing Cassandra Keyspace, which is the default, OR create its own
keyspace.
</p>
<p>
The {@code CassandraEntityStoreConfiguration#keyspaceName()} defines the name of the keyspace to use, or to be
created.
If not defined, then the default name is "polygene".
</p>
<p>
The {@code CassandraEntityStoreConfiguration#createIfMissing()} defines if new missing resources should
be created or an Exception should be thrown if missing.
</p>
<p>
If it is created, then the {@code CassandraEntityStoreConfiguration#replicationFactor()} will define the replication
factor, and the command to create the keyspace is;
</p>
<code>
<pre>
CREATE KEYSPACE &lt;keyspaceName&gt; WITH replication = {'class':'SimpleStrategy', 'replication_factor' : &lt;replicationFactor&gt; };
</pre>
</code>
<h3>Polygene's Cassandra Table</h3>
<p>
Polygene will store all entities in a single Cassandra TABLE
</p>
<code>
<pre>
CREATE TABLE &lt;tableName&gt; (
id text,
version text,
appversion text,
storeversion text,
usecase text,
modified timestamp,
properties map&lt;string,string&gt;
assocs map&lt;string,string&gt;
manyassocs map&lt;string,string&gt;
namedassocs map&lt;string,string&gt;
PRIMARY KEY ( id )
);
</pre>
</code>
</body>
</html>