Apache Druid性能测评

  1. 云栖社区>
  2. 博客>
  3. 正文

Apache Druid性能测评

北斗云 2019-08-05 18:44:23 浏览410
展开阅读全文

一.集群配置

二.角色分布

三.集群版本

四.性能测试

Ⅰ).数据时效性测试

a).测试案例

模拟生产由5000个agent、5000个URL和2类请求方式做为聚合字段的1亿条明细数据,来测试Druid集群在配置不同TaksCount数时,Druid聚合任务的执行时长

  • 明细数据:1亿条
  • 聚合组合:5000个agent 5000个URL 2类Method Type = 5千万
  • 创建Topic的partition等于配置TaksCount的个数
  • 执行任务,统计kafka磁盘占用和druid任务执行时长

b).测试数据

c).测试结果

  • 在相同数据量的情况下,增加TaksCount可以提高druid聚合任务的处理速度
  • 同时增加TaksCount会带来系统内存的线性增加

Ⅱ).Druid生成segment合理性测试

a).测试案例

模拟生产由5000个agent、5000个URL和2类请求方式做为聚合字段的1亿条明细数据,来测试Druid集群在配置不同TaksCount数和不同MaxRowsPerSegment时,Druid聚合任务生成segment大小的合理配置

  • 明细数据:1亿条
  • 聚合组合:5000个agent 5000个URL 2类Method Type = 5千万
  • 创建Topic的partition等于配置TaksCount的个数
  • 配置不同TaksCount数和不同MaxRowsPerSegment组合

b).测试数据


c).性能数据

System Summary

Memory

Network I/O

Disk Read

Disk Write

d).测试结果

  • 为提高查询响应,建议segment在300M~700M之间
  • 在源数据基础上需统计的dimensions字段一定的情况下,segment大小受MaxRowsPerSegment和TaksCount的共同影响
  • 可根据实际测试数据的信息量来选择合理的MaxRowsPerSegment和TaksCount配置

Ⅲ).冷热数据隔离测试

a).测试案例

模拟生产由5000个agent、5000个URL和2类请求方式做为聚合字段的1亿条明细数据,来测试Druid集群在配置不同TaksCount数和不同MaxRowsPerSegment时,Druid聚合任务生成segment的冷热数据隔离测试

  • 明细数据:1亿条
  • 聚合组合:5000个agent 5000个URL 2类Method Type = 5千万
  • 创建Topic的partition等于配置TaksCount的个数
  • 根据配置将数据存储分为冷热数据集群,然后依据数据查询场景,将数据加载至对应集群

b).测试数据

集群配置规则

数据加载规则

d).测试结果

  • 集群规模大于7个节点,使用冷热数据隔离可提高查询效率
  • druid.server.priority=100d的节点,查询热数据时,查询不会路由至冷数据节点

e).备注热数据节点配置

druid.server.tier=hot
druid.server.priority=100

网友评论

登录后评论
0/500
评论
北斗云
+ 关注