Seems you have big dictionary which couldn't be loaded into memory; Please
increase the JVM heap, or check whether has configured to use 'dict'
encoding for a high cardinality column. For high cardinality column, "dict"
encoding is not recommended.

Btw, the screen shot you provided is not the Cube's JSON. Cube JSON can be
found when you expand the cube's section, and then click the "JSON(Cube)"
tab.

2017-12-18 17:38 GMT+08:00 yujunliang <609417...@qq.com>:

> the cube's json is shown by the following picture.
> <http://apache-kylin.74782.x6.nabble.com/file/t671/a.png> when the cube
> merged,it failed because the  java.lang.OutOfMemoryError exception below.
>
>
> Error: java.lang.OutOfMemoryError: Java heap space at
> org.apache.kylin.dict.TrieDictionary.readFields(TrieDictionary.java:467)
> at
> org.apache.kylin.dict.DictionaryInfoSerializer.deserialize(
> DictionaryInfoSerializer.java:74)
> at
> org.apache.kylin.dict.DictionaryInfoSerializer.deserialize(
> DictionaryInfoSerializer.java:34)
> at
> org.apache.kylin.common.persistence.ResourceStore.
> getResource(ResourceStore.java:146)
> at org.apache.kylin.dict.DictionaryManager.load(
> DictionaryManager.java:421)
> at
> org.apache.kylin.dict.DictionaryManager$1.load(DictionaryManager.java:103)
> at
> org.apache.kylin.dict.DictionaryManager$1.load(DictionaryManager.java:100)
> at
> com.google.common.cache.LocalCache$LoadingValueReference.
> loadFuture(LocalCache.java:3568)
> at com.google.common.cache.LocalCache$Segment.loadSync(
> LocalCache.java:2350)
> at
> com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.
> java:2313)
> at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2228) at
> com.google.common.cache.LocalCache.get(LocalCache.java:3965) at
> com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3969) at
> com.google.common.cache.LocalCache$LocalManualCache.
> get(LocalCache.java:4829)
> at
> org.apache.kylin.dict.DictionaryManager.getDictionaryInfo(
> DictionaryManager.java:120)
> at org.apache.kylin.cube.CubeManager.getDictionary(CubeManager.java:248)
> at
> org.apache.kylin.cube.CubeSegment.getDictionary(CubeSegment.java:326) at
> org.apache.kylin.cube.kv.CubeDimEncMap.getDictionary(
> CubeDimEncMap.java:87)
> at org.apache.kylin.cube.kv.CubeDimEncMap.get(CubeDimEncMap.java:66) at
> org.apache.kylin.cube.kv.RowKeyColumnIO.getColumnLength(
> RowKeyColumnIO.java:43)
> at
> org.apache.kylin.cube.common.RowKeySplitter.split(RowKeySplitter.java:115)
> at
> org.apache.kylin.engine.mr.steps.MergeCuboidMapper.map(
> MergeCuboidMapper.java:173)
> at
> org.apache.kylin.engine.mr.steps.MergeCuboidMapper.map(
> MergeCuboidMapper.java:62)
> at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:146) at
> org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:787) at
> org.apache.hadoop.mapred.MapTask.run(MapTask.java:341) at
> org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:164) at
> java.security.AccessController.doPrivileged(Native Method) at
> javax.security.auth.Subject.doAs(Subject.java:422) at
> org.apache.hadoop.security.UserGroupInformation.doAs(
> UserGroupInformation.java:1698)
> at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:158)
>
>
> --
> Sent from: http://apache-kylin.74782.x6.nabble.com/
>



-- 
Best regards,

Shaofeng Shi 史少锋

Reply via email to