近期,Apache Kylin 5 周年在线庆典顺利结束,来自汽车之家的实时计算平台负责人 邸星星 老师为大家介绍了 Apache Kylin 在汽车之家的升级历程,以及在实时多维分析方面的实践,最后也展望了对 Kylin 4.0 版本的期待。

会议完整视频
Apache Kylin 在汽车之家的升级演进
面临千亿,乃至万亿数据量的情况下,要达到秒级或者亚秒级的查询响应。
需要满足相对较高的查询吞吐量以及较高的可用性,当时汽车之家的数据主要是基于离线数据来做多维分析。
Kylin 在汽车之家的升级历程

2016年初,汽车之家正式启用 Kylin 1.5 版本
此时共有10+ Cube,主要支持部门内的少量数据分析,同时用作技术验证。
2017年,内部正式上线 Kylin 1.6 版本,并逐步承接线上业务
累计有100+ Cube,2017年底使用 Kylin 支持了汽车之家的战略级商业化数据产品。
2018年,升级到 Kylin 2.2 版本 ,支持 Spark 引擎做构建,同时对 HBase 集群做了 T+1 备份
在极端情况下,如果 HBase 集群发生故障,可以把用户的查询请求路由到备用集群里来保障业务正常运行。
2019年,升级到 Kylin 2.6 版本,并在内部多个 BU 推广使用
Cube 数量达到了 400+ ,另外公司内部也研发了BI 产品,也可以支持 Kylin 作为它的查询引擎。
2020年,将 Kylin 升级到 3.1 版本,主要来做实时多维分析的应用

Kylin 在实时多维分析方面的应用

首先 Kylin 的 Receiver 节点和之前的 Job 以及 Query 节点都不太一样,因为它既负责实时的计算,又要负责查询,而且是查询本地磁盘上的数据,所以负担比较重。当面临越来越多实时业务的时候,可能需要维护一个比较大的 Receiver 集群,这样对我们来说的这个维护成本会是一个大问题。
另外, Receiver 本身不只是服务于某一个 Cube,一个 Receiver 进程里面可能会支持好几个 Cube 的计算,假如某一个 Cube 的数据量突然激增,或者某个 Cube 的数据有一些问题,就可能会影响到这个 Receiver 进程本身的稳定性,所以隔离方面其实也不是特别好。
最后说下弹性伸缩这块,如果单个 topic 的数据量激增的时候,要怎么去快速的做扩容,然后等它的访问量下去之后,是不是可以快速的做缩容?
之前的方式都是需要手动去做调整,维护成本就会相应增加。

对 Kylin 4.0 的展望
全栈化 Spark,脱离 Hadoop 组件做查询,这是云原生的基础;同时使用 Spark 引擎做查询还有一个额外的好处,就是之前用 Calcite 会有查询单点的问题,用 Spark 的话就可以很好地解决这个难点。
Kylin on Parquet,基于列式存储有很高的 IO 效率,也能一定程度上提供查询的稳定性,对比 HBase是一个有状态的存储,但是 Parquet 只是一个文件格式,所以查询的链路上也会更加轻量级。去 HBase 后也不再需要额外的运维成本来维护 HBase。
作者简介
本周活动推荐
大数据场景下,用户行为分析怎么做?
本周四(1月14日) 14:00-15:00
线上分享
议程
如何使用 Kyligence 实现大数据场景下用户行为分析
1)全路径转化效果追踪
2)海量数据场景下的漏斗转化分析
3)用户行为与标签联动分析
在线试用演示
Q & A
扫码报名

更多 Apache Kylin 4.0 相关推荐

点击“阅读原文”下载 Apache Kylin 4.0




