[ 
https://issues.apache.org/jira/browse/IGNITE-1371?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15071390#comment-15071390
 ] 

Alexey Kuznetsov commented on IGNITE-1371:
------------------------------------------

Igor,

Valentin Kulichenko reviewed your code and we have following points:

1) First of all please merge with latest master or ignite-1.5. In ignite-1.5 we 
introduced BinaryMarshaller that should be properly handled in store.
2) Please add more javadocs for Cassandra specific code (for example keyspace, 
tblOptions, keyspaceOptions) what for we need them, may be give a link to 
Cassandra docs.
3) KeyValuePersistenceSettings.keyspaceOptions - please describe why such 
default options were selected? And please move defaults to constant 
DFLT_propper_name.
4) CassandraCacheStoreFactory.persistenceSettings lets make these settings not 
transient, but serializable and also move all settings classes from util 
package to same package as store.
5) Also let's refactor persistence settings to be serializable and more simple 
(take a look at JdbsType of CacheJdbcPojoStorefactory) to be just a description 
of metadata. Move all serialization logic inside store.
6) Also persistence settings hierarchy looks a bit over engineered a lot of 
classes: KeyValuePersistenceSettings, KeyPersistenceSettings, 
ValuePersistenceSettings, PojoField, PojoKeyField, PojoValueField ... why we 
need such many classes? Is this cassandra specific? Why we need indexes in 
PojoValueField? Also may be we could rename classes to be looks like same 
classes in JdbcPojoStore? KeyValuePersistenceSettings -> CassandraTypes. 
KeyPersistenceSettings -> CassandraKeyType, and so on
7) What for we need PersistenceStrategy? now in Ignite-1.5 we have Binary 
marshaller as default marshaller and this marshaller already serialize objects 
as bytes, assuming this I think we could drop Serializers that were introduces 
(Java and Kryo).
8) Also what is the difference between PRIMITIVE and POJO modes in 
PersistenceStrategy?

> Key-Value store (like Cassandra) as CacheStore
> ----------------------------------------------
>
>                 Key: IGNITE-1371
>                 URL: https://issues.apache.org/jira/browse/IGNITE-1371
>             Project: Ignite
>          Issue Type: New Feature
>          Components: cache
>    Affects Versions: ignite-1.4
>            Reporter: Alexandre Boudnik
>            Assignee: Igor Rudyak
>         Attachments: master_02b59e4_ignite-1371.patch
>
>   Original Estimate: 504h
>  Remaining Estimate: 504h
>
> It will provide ability to map particular cache holding POJOs to Cassandra 
> table. Later it would be generalized to support eventually any any Key-Value 
> store.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to