正常情况下,kylin需要进行读写分离,因为kylin的工作负载分为
1.计算cube。调用mapreduce 批量计算,mapreduce需要重复落盘操作,延时时间很长,需要不断的调用cpu与io。
2. 基于kylin数据源的在线实时查询计算,基于cube的计算结果,数据存储于hbase,都是查询操作,就要求相应快,延迟低了
当然假如cube的计算时间与实时查询时间能够做到完美的分离,我们不需要考虑cube计算带来的巨大负载。采用单hbase部署就可以了。
kylin 很用进行额外hbase配置,部署kylin时,hadoop的配置项指向运算的集群,hbase的配置项指向单独部署的hadoop集群。即保持hbase与hadoop的分离。