You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@kylin.apache.org by 热爱大发挥 <38...@qq.com> on 2016/03/31 05:16:21 UTC

回复: error with TOP_N in kylin 1.5.0

does top-n  means :     select count(1) as c, saller_id from sales group by saller_id order by c desc  limit 10 ?  if so, why should I specify a  "order by column"?







------------------ 原始邮件 ------------------
发件人: "ShaoFeng Shi"<sh...@apache.org>; 
发送时间: 2016年3月31日(星期四) 中午11:04
收件人: "user"<us...@kylin.apache.org>; 
主题: Re: error with TOP_N in kylin 1.5.0



Hi, TopN measure need define two parameters, it seems you didn't specify the second one. The first parameter is the metric column (which will be used for sum() and sort); The second parameter is the entity ID, like "seller_id".  Please refer the doc: https://kylin.apache.org/docs15/tutorial/create_cube.html

2016-03-31 9:38 GMT+08:00 热爱大发挥 <38...@qq.com>:
env:hbase 0.986
hive 0.13.1
kylin 1.5.0


when I use TOP-N, exception occured


java.lang.IndexOutOfBoundsException: Index: 1, Size: 1
	at java.util.ArrayList.rangeCheck(ArrayList.java:635)
	at java.util.ArrayList.get(ArrayList.java:411)
	at org.apache.kylin.measure.topn.TopNMeasureType.getColumnsNeedDictionary(TopNMeasureType.java:170)
	at org.apache.kylin.cube.model.CubeDesc.getAllColumnsNeedDictionary(CubeDesc.java:975)
	at org.apache.kylin.cube.CubeManager.getAllDictColumnsOnFact(CubeManager.java:904)
	at org.apache.kylin.engine.mr.steps.FactDistinctColumnsJob.run(FactDistinctColumnsJob.java:80)
	at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
	at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:84)
	at org.apache.kylin.engine.mr.common.MapReduceExecutable.doWork(MapReduceExecutable.java:118)
	at org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutable.java:114)
	at org.apache.kylin.job.execution.DefaultChainedExecutable.doWork(DefaultChainedExecutable.java:50)
	at org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutable.java:114)
	at org.apache.kylin.job.impl.threadpool.DefaultScheduler$JobRunner.run(DefaultScheduler.java:124)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:745)






-- 
Best regards,

Shaofeng Shi

Re: error with TOP_N in kylin 1.5.0

Posted by ShaoFeng Shi <sh...@apache.org>.
There is a bug on UI, it should be "group by column", not "order by
column".

2016-03-31 11:16 GMT+08:00 热爱大发挥 <38...@qq.com>:

> does top-n  means :     select count(1) as c, saller_id from sales group
> by saller_id order by c desc  limit 10 ?
> if so, why should I specify a  "order by column"?
>
>
>
> ------------------ 原始邮件 ------------------
> *发件人:* "ShaoFeng Shi"<sh...@apache.org>;
> *发送时间:* 2016年3月31日(星期四) 中午11:04
> *收件人:* "user"<us...@kylin.apache.org>;
> *主题:* Re: error with TOP_N in kylin 1.5.0
>
> Hi, TopN measure need define two parameters, it seems you didn't specify
> the second one. The first parameter is the metric column (which will be
> used for sum() and sort); The second parameter is the entity ID, like
> "seller_id".  Please refer the doc:
> https://kylin.apache.org/docs15/tutorial/create_cube.html
>
> 2016-03-31 9:38 GMT+08:00 热爱大发挥 <38...@qq.com>:
>
>> env:
>> hbase 0.986
>> hive 0.13.1
>> kylin 1.5.0
>>
>> when I use TOP-N, exception occured
>>
>> java.lang.IndexOutOfBoundsException: Index: 1, Size: 1
>> at java.util.ArrayList.rangeCheck(ArrayList.java:635)
>> at java.util.ArrayList.get(ArrayList.java:411)
>> at
>> org.apache.kylin.measure.topn.TopNMeasureType.getColumnsNeedDictionary(TopNMeasureType.java:170)
>> at
>> org.apache.kylin.cube.model.CubeDesc.getAllColumnsNeedDictionary(CubeDesc.java:975)
>> at
>> org.apache.kylin.cube.CubeManager.getAllDictColumnsOnFact(CubeManager.java:904)
>> at
>> org.apache.kylin.engine.mr.steps.FactDistinctColumnsJob.run(FactDistinctColumnsJob.java:80)
>> at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
>> at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:84)
>> at
>> org.apache.kylin.engine.mr.common.MapReduceExecutable.doWork(MapReduceExecutable.java:118)
>> at
>> org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutable.java:114)
>> at
>> org.apache.kylin.job.execution.DefaultChainedExecutable.doWork(DefaultChainedExecutable.java:50)
>> at
>> org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutable.java:114)
>> at
>> org.apache.kylin.job.impl.threadpool.DefaultScheduler$JobRunner.run(DefaultScheduler.java:124)
>> at
>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>> at
>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>> at java.lang.Thread.run(Thread.java:745)
>>
>
>
>
> --
> Best regards,
>
> Shaofeng Shi
>
>


-- 
Best regards,

Shaofeng Shi