kylin和druid的java_基于 Druid 的 Apache Kylin 存储引擎实践

展开查看详情

1.基于Druid的Kylin存储引擎实践

美团点评

康凯森

2.⼤纲

• Kylin On HBase 问题

• Kylin 新存储引擎探索

•Kylin On Druid

3.Kylin 服务现状

973 Cube 380万 次查询/天

数据量 Cube存储 TP 50 TP 90

8.9万亿 971TB 200ms 1.2s

覆盖所有主要业务线

4.Kylin On HBase 问题

• 同⼀SQL

• 同⼀Cube

• 同⼀集群

唯⼀不同点:Kylin维度在HBase的Rowkey中位置不同

5. Kylin On HBase 问题

• 每次读取所有指标列:

Scan性能相⽐列存

相差10倍多

• 单⼀Rowkey索引:

前缀和后缀Filter

性能相差上千倍

6.Kylin On HBase 问题的可能解

• 列存:更⾼效的Scan

• 索引:更⾼效的Filter

7.列存的优点

• ⾼效IO:只读取必需的列

• ⾼效编码和压缩:每列数据类型⼀致,格式⼀致

• 向量化执⾏

8. 问题如何解:

⼀个更⾼效的存储引擎

9.Kylin 存储引擎模块

10.Kylin 新存储引擎思路⼀

基于Spark + File演进

11.Kylin 新存储引擎思路⼆

基于File Format演进新存储引擎

12. 第⼀步

探索⼀个适合Kylin的存储格式

13.Kylin 存储格式评测标准

14.Parquet File Format 2.3.1

• 列存

• Min,Max索引

• Dictionary 过滤

• ⽆ PageIndex

15.Kylin On Parquet POC

• 构建:单节点每分钟导⼊百万条数据

• 压缩:存储空间⽐HBase节省10%

• Scan 查询:部分列时是HBase的2~6倍;全部列时是HBase的80%

• Filter 查询:前缀查询明显不如HBase,后缀查询有⼀定优势

16.CarbonData File Format 1.0

• 列存

• MDK索引

• Min,Max索引

• 倒排索引

17.Why Not Kylin On Carbondata 1.0

• 没有OutputFormat

• 和 Spark 耦合较深

• 尚不成熟(2017-05)

18.Lucene 7.0

• 列存

• 倒排索引

• MMap

19.Kylin On Lucene POC

• 构建:导⼊速度是HBase的1/3

• 压缩:存储是HBase的4倍

• Scan查询:部分列时性能优于HBase

• Filter查询:过滤性能明显优于HBase, 不过点查询性能⽐HBase差

20.Druid Segment File Format

• 列式存储

• Bitmap倒排索引

• MMap

21.Druid Bitmap 倒排索引

22.Kylin On Druid POC

前缀过滤

后缀过滤

23.Why Kylin On Druid

• Parquet: 索引粒度较粗,Filter 性能不⾜

•CarbonData: 与Spark耦合较深,集成难度⼤

• Lucene: 存储膨胀率较⾼

24.Why Kylin On Druid

• Scan Filter 性能

• 开发效率

• 风险可控

25.⼤纲

• Kylin On HBase 问题

• Kylin 新存储引擎探索

•Kylin On Druid

26.Kylin 可插拔架构

27.How KOD:KOD架构

28.How KOD:Data Load

29.How KOD:Data Query

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值