Druid简单介绍

标签:工具包   服务   segment   zook   过滤   store   建立   限制   rest   

什么是druid

  • druid是一个为OLAP查询需求而设计的开源大数据系统,druid提供低延时的数据插入,实时的数据查询
  • druid使用Java开发,基于Jetty提供http rest服务,也提供了Java/Python等语言的工具包
  • druid是一个集群系统,使用zookeeper做节点管理和事件监控

druid的特点

  • druid的核心是时间序列,把数据按照时间序列分批存储,十分适合用于对按时间进行统计分析的场景
  • druid把数据列分为三类:时间戳、维度列、指标列
  • druid不支持多表Join
  • druid中的数据一般是使用其他计算框架(Spark等)预计算好的低层次统计数据
  • druid执行其擅长的查询类型时,从数十亿条记录中过滤、汇聚只有亚秒级延迟
  • druid支持水平扩展,查询节点越多、所支持的查询数据量越大、响应越快
  • druid完美支持的查询类型比较简单,查询场景限制较多,一些常用的SQL(groupby等)语句在druid里运行速度一般
  • druid支持低延时的数据插入,数据实时可查,不支持行级别的数据更新

druid为什么快

  • druid在数据插入时按照时间序列将数据分为若干segment,支持低延时地按照时间序列上卷,所以按时间做聚合效率很高
  • druid数据按列存储,每个维度列都建立索引,所以按列过滤取值效率很高
  • druid用以查询的Broker和Historical支持多级缓存,每个segment启动一个线程并发执行查询,查询支持多Historical内部的线程级并发及Historical之间的进程间并发,Broker将各Historical的查询结果做合并

druid的高可用性

  1. MetaStore挂掉:无法感知新的Segment生成,不影响老数据
  2. Indexing Service挂掉:无法执行新的任务,新数据无法摄入,不影响查询
  3. Broker挂掉:本Broker节点不能查询,其他节点Broker继续服务,不影响数据摄入
  4. Historical挂掉:Coordinator Node重分配该节点上segment到其它节点
  5. Coordinator挂掉:Segment不会被加载和删除,选举新leader
  6. Zookeeper挂掉:无法执行新的任务,新数据进不来;Broker有缓存

 

-----------------------------------------------------------------------------------------------感谢到访!期待您的下次光临!

Druid简单介绍

标签:工具包   服务   segment   zook   过滤   store   建立   限制   rest   

原文地址:https://www.cnblogs.com/varchar-pig/p/14238675.html

版权声明:完美者 发表于 2021-01-08 10:28:10。
转载请注明:Druid简单介绍 | 完美导航

暂无评论

暂无评论...