Hi, please share the whole config file

пн, 16 мар. 2020 г. в 15:38, narges saleh <snarges...@gmail.com>:

> Thanks Evgenii for the reply.
> How do I do that in XML configuration file if my query entities are
> defined solely in the xml file? What does ClassNameOfKey and
> fieldNameinThatClass represent? I assume I will have one bean for each
> cache.
> <bean class="...CacheConfiguration">
> <property name="keyConfiguration">
>     <list>
>         <bean class="org.apache.ignite.cache.CacheKeyConfiguration">
>             <property name="typeName" value="ClassNameOfKey"/>
>             <property name="affinityKeyFieldName"
>
> value="fieldNameInThatClass"/>
>         </bean>
>     </list>
> </property>
> </bean>
> And the bean for the query entity is:have
>                       <bean class="org.apache.ignite.cache.QueryEntity">
>                                 <property name="keyType"
> value="java.lang.Integer"/>
>                                 <property name="valueType" value="PERSON"/>
>                                 <property name="tableName" value="PERSON"/>
>                                 <!-- Set fields for value object. -->
>                                 <property name="fields">
>                                     <map>
>                                         <entry key="CompanyId"
> value="java.lang.Integer"/>
>                                        <entry key="EmployeeId"
> value="java.lang.Integer"/>
>                                         <entry key="firstName"
> value="java.lang.String"/>
>                                         <entry key="lastName"
> value="java.lang.String"/>
>                                     </map>
>                                 </property>
>                                 <property name="keyFields">
>                                     <set>
>                                         <!-- These are fields stored in
> the key. -->
>                                         <value>CompanyId</value>
>                                         <value>EmployeeId</value>
>                                     </set>
>                                 </property>
>                             </bean>
>
>
> On Mon, Mar 16, 2020 at 3:22 PM Evgenii Zhuravlev <
> e.zhuravlev...@gmail.com> wrote:
>
>> Hi,
>>
>> You should have one cache per table(query entity) and configure separate
>> CacheKeyConfigurations for each of the caches.
>>
>> Evgenii
>>
>> пн, 16 мар. 2020 г. в 11:42, narges saleh <snarges...@gmail.com>:
>>
>>> Hi All,
>>>
>>> I have a question that might be trivial.
>>> If I define my query entity for each in the XML configuration file and
>>> define the affinity key via CacheKeyConfiguration (again in the xml file),
>>> considering that here affinity key is defined at IgniteConfiguration level,
>>> how do I specify which cache keys (i.e., query entity key fields) will use
>>> the affinity key and which ones don't?
>>>
>>> Say I have these 4 tables
>>> Employee(company-id, employee-id)
>>> Contractor(company-id, contractor-id)
>>> Customer(company-id, customer-id)
>>> Company(company-id, address)
>>>
>>> How do I collocate employee, and contractors with companies but not the
>>> customers and companies? Can you provide the CacheKeyConfiguration and
>>> keyfields for each query entity?
>>>
>>> thanks.
>>>
>>

Reply via email to