You can access a cache created with DDL (CREATE TABLE) from Java API
including IgniteDataStreamer API by prepending "SQL_PUBLIC_" to the
capitalised table name. For example, if you created a table as "create
table person ... " then you can access if from Java API as
ignite.dataStreamer("SQL_PUBLIC_PERSON").

In Ignite 2.3 you can map table type to Java key and values type using
CREAT TABLE ... WITH KEY_TYPE=...,VALUE_TYPE=... . I copied documentation from
here
<https://apacheignite-sql.readme.io/docs/create-table#section-parameters>:


   - KEY_TYPE=<custom name of the key type> - sets the name of the custom
   key type that is used from the key-value APIs in Ignite. The name should
   correspond to a Java, .NET or C++ class, or it can be a random one if
   BinaryObjects <https://apacheignite.readme.io/docs/binary-marshaller> is
   used instead of a custom class. The number of fields and their types in the
   custom key type has to correspond to the PRIMARY KEY. Refer to the
   Description section below for more details.
   - VALUE_TYPE=<custom name of the value type of the new cache> - sets the
   name of a custom value type that is used from the key-value and other
   non-SQL APIs in Ignite. The name should correspond to a Java, .NET or C++
   class, or it can be a random one if BinaryObjects
   <https://apacheignite.readme.io/docs/binary-marshaller> is used instead
   of a custom class. The value type should include all the columns defined in
   the CREATE TABLE command except for those listed in the PRIMARY KEY
constraint.
   Refer to the Description section below for more details.

Reply via email to