saiku中的mondrian 聚合表的配置报错详解

阅读更多

saiku mondrian配置聚合表的目的是通过先生成要分析的数据,在实际分析时,直接从聚合表提取结果,省去实时分析的步骤,从而提高分析性能。

配置聚合表的方式:

 

 

 

 

 

......

 

聚合表的表结构定义如下:

create table agg_2_t_test_demo(

isroot string,

Osversion string,

count_userid bigint,

sum_crash_num bigint,

row_count  bigint

);

 

 

更新完schemal后,重新装载时会报如下错误:

 

20:02:50,112 ERROR [AggTableManager] Recognizer.checkFactCount: Candidate aggregate table 'agg_2_t_test_demo' for fact table 't_test_demo' has no fact count columns.

20:02:50,112 ERROR [AggTableManager] Recognizer.checkNosMeasures: Candidate aggregate table 'agg_2_t_test_demo' for fact table 't_test_demo' has no measure columns.

 

 

出错原因及解决方法:

1、    这里的column必须是fact_count,这个是解决has no fact count columns的错误

2、   

  

 

这两配置的column必须和对应的Measures的column或是name相同才行,因此改成如下:

  

  

 

 

 

   

 

因此表定义改成如下:

create table agg_2_t_test_demo(

isroot string,

Osversion string,

userid bigint,

crash_num bigint,

fact_count  bigint

);

 

改好后,重新装载schemal,saiku可以正常运行

 

 

注:

如果聚合表没有数据时,会自动检测出,并在日志中打出如下内容:

 Zero size Aggregate table 'agg_2_t_test_demo' for Fact Table 't_test_demo'

这里,只要在聚合表中生成统计的数据即可

 

你可能感兴趣的:(olap,saiku,mondrian,聚合表,no,measure,columns)