Hello!

It's hard to say. Do you have persistence? Are you sure that cache store is
not the bottleneck?

I would start with gathering thread dumps from whole cluster when in stuck
state.

Regards,
-- 
Ilya Kasnacheev


ср, 27 февр. 2019 г. в 15:06, Justin Ji <[email protected]>:

> Dmitry  -
>
> I also encountered this problem.
>
> I used both persistence and indexing, when I loaded 20 million records, the
> loading speed became much slower than before, but the CPU of the ignite
> server is low.
>
> <
> http://apache-ignite-users.70518.x6.nabble.com/file/t2000/WX20190227-200059.png>
>
>
> Here is my cache configuration:
>
> CacheConfiguration<K, V> cacheCfg = new CacheConfiguration();
> cacheCfg.setName(cacheName);
> cacheCfg.setCacheMode(CacheMode.PARTITIONED);
> cacheCfg.setBackups(1);
> cacheCfg.setAtomicityMode(CacheAtomicityMode.ATOMIC);
>
> cacheCfg.setCacheStoreFactory(FactoryBuilder.factoryOf(DataPointCacheStore.class));
>         cacheCfg.setWriteThrough(true);
>         cacheCfg.setWriteBehindEnabled(true);
>         cacheCfg.setWriteBehindFlushThreadCount(2);
>         cacheCfg.setWriteBehindFlushFrequency(15 * 1000);
>         cacheCfg.setWriteBehindFlushSize(409600);
>         cacheCfg.setWriteBehindBatchSize(1024);
>         cacheCfg.setStoreKeepBinary(true);
>         cacheCfg.setQueryParallelism(16);
> cacheCfg.setRebalanceBatchSize(2 * 1024 * 1024);
>         cacheCfg.setRebalanceThrottle(100);
> CacheKeyConfiguration cacheKeyConfiguration = new
> CacheKeyConfiguration(DpKey.class);
>         cacheCfg.setKeyConfiguration(cacheKeyConfiguration);
>
> List<QueryEntity> entities = Lists.newArrayList();
>
>         QueryEntity entity = new QueryEntity(DpKey.class.getName(),
> DpCache.class.getName());
>         entity.setTableName(IgniteTableKey.T_DATA_POINT_NEW.getCode());
>
>         LinkedHashMap<String, String> map = new LinkedHashMap<>();
>         map.put("id", "java.lang.String");
>         map.put("gmtCreate", "java.lang.Long");
>         map.put("gmtModified", "java.lang.Long");
>         map.put("devId", "java.lang.String");
>         map.put("dpId", "java.lang.Integer");
>         map.put("code", "java.lang.String");
>         map.put("name", "java.lang.String");
>         map.put("customName", "java.lang.String");
>         map.put("mode", "java.lang.String");
>         map.put("type", "java.lang.String");
>         map.put("value", "java.lang.String");
>         map.put("rawValue", byte[].class.getName());
>         map.put("time", "java.lang.Long");
>         map.put("status", "java.lang.Boolean");
>         map.put("uuid", "java.lang.String");
>
>         entity.setFields(map);
>         QueryIndex devIdIdx = new QueryIndex("devId");
>         devIdIdx.setName("idx_devId");
>         devIdIdx.setInlineSize(128);
>         List<QueryIndex> indexes = Lists.newArrayList(devIdIdx);
>         entity.setIndexes(indexes);
>
>         entities.add(entity);
> cacheCfg.setQueryEntities(entities);
>
>
> Can you give me some advice on where to start solving these problems?
>
>
>
>
> --
> Sent from: http://apache-ignite-users.70518.x6.nabble.com/
>

Reply via email to