传统数仓和clickhouse对比
背景
传统数仓一般都是Hive+SparkSql作为代表,不过也包括Kylin等,而clickhouse是实时OLAP的代表,我们简单看下他们的对比
传统数仓和clickhouse对比
Hive+SparkSQL的传统数仓:
1.数据更新速度慢,由于传统数仓一般都是基于HDFS构建的,数据更新也就意味着把数据写入HDFS文件中,由于大部分表数据的结构化做的比较差,比如都是基于String表示,所以写入性能很差,意味着数据更新速度非常慢
2.数据查询速度,基于SparkSql进行数据查询虽然可以利用spark基于内存的特点提高查询速度,但是总体上说这个查询速度还是太慢,不能支持实时查询的要求,为了支持实时查询的需求,一般会引入Kylin,也就是提前预计算,但是提前预计算的问题在于维度爆炸导致的数据膨胀问题,而这些数据会导致存储的大量占用或者浪费。
基于clickhouse的实时分析
1.数据更新速度中等,在ck中我们可以通过批量插入数据的方式来达到比较好的数据插入速度,当然比起OLTP来说,更新速度还是不足,但是通过分批的方式,达到每秒几万的数据插入速度还是可以做到的。
2.数据查询速度很快,这是ck最擅长的地方,可以在秒级别计算出各种维度的数据聚合的分析结果,而不需要进行预计算,自然也不需要浪费存储