当前位置:网站首页 > R语言数据分析 > 正文

druid是干嘛的(druid是什么)



1,列存储格式。
2,可扩展分布式系统,Druid通常部署在大数集群中,水平扩展能力强。
3,大规模并行处理。Druid可以跨整个集群并行处理一个查询。
4,实时或批量数据导入。Druid可以实时(摄取的数据可以立即用于查询)或成批地摄取数据。
5,自我修复,自我平衡,易于操作添加或删除服务器,集群将在后台自动重新平衡,而不需要停机。
6,不会丢失数据。一旦Druid接收了您的数据,一个副本就安全地存储在深存储中(通常是HDFS)。
7,支持索引。
8,时序数据库,基于时间分区。
9,预聚合。Druid在数据摄入时可以做一些聚合操作,节省存储空间,提高性能。







1,插入率非常高,但更新不太常见(最好不更新)。
2,大多数查询是聚合和报告查询(“分组依据”查询)。
3,查询延迟低,为100毫秒到几秒钟。
4,数据需要针对时间进行优化。
5,您可能有多个表,但每个查询只命中一个大的分布式表。查询可能会命中多个较小的“查找”表。
6,快速统计数据。




相当于关系型数据库中的表名。
每一个datasource都被时间划分为chunk(块),比如说按天划分(也有可能会被其它属性进一步划分)。每一个chunk中会包含一个或者多个segment(段)。
在这里插入图片描述

 
  

用于存储数据。
特点:
1,列式存储。每个列单独存储,读取数据时只需要读取需要的列不需要读取整条数据。
2,列分为三种类型
timestamp column (时间戳列)
单位:




 
  

dimension columns(纬度列)

单位:

 
  

默认单位是string,其它单位需要明确说明,格式:{“name”: “page”, “type”: “double”}。string类型的默认会创建bitmap,其它类型不能创建。

metric columns(度量列)
针对特定列进行预聚合运算

 
  

type:聚合类型
name:聚合结果列名
fieldName:针对的列

datasource_intervalStart_intervalEnd_version_partitionNum
dataSourceName_开始时间_截止时间_版本好_分区号

备注: segmentname反应到文件系统中是一个文件夹名字,没有分区的话就没有分区号,时间都是0时区,北京时间是东八区,比0时区早八小时。

 
  

对一个时间区间内所有的segments更新是原子操作,全部写成功后查询才会读取高版本数据。多个时间区间之间的更新操作不是原子操作,更新数据时最好不要跨区间。更新成功后低版本数据会很快被清理。

建议1:每个segment文件大小在300MB-700MB范围内。
建议2:每个segment文件建议包含的数据条数为500万条。

建议2 优先于建议1 ,指定数据条数能直接控制查询时一个线程处理的数据量。

查询数据的时候,历史数据节点中每个线程负责查询一个segment,如果segment太大不利于查询的并行度;如果segment太小,线程池中线程之间的调度会花费大量额外时间。

下一篇: Druid服务介绍

到此这篇druid是干嘛的(druid是什么)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • ueditor官网打不开(ueditorapi文档)2025-07-09 17:18:09
  • pycharm怎么删除虚拟环境(pycharm conda 虚拟环境)2025-07-09 17:18:09
  • Pathlib文档(pathlib mkdir)2025-07-09 17:18:09
  • store.steam.game(steam官网入口)2025-07-09 17:18:09
  • swagger3使用(swagger怎么使用)2025-07-09 17:18:09
  • 编译lib文件(编译libcurl)2025-07-09 17:18:09
  • uchar i,j;什么意思(uchar flag是什么意思)2025-07-09 17:18:09
  • spring视频课程(springship)2025-07-09 17:18:09
  • hprof文件分析内存泄露(hprof是什么文件可以删除吗)2025-07-09 17:18:09
  • rk3288开机启动app(开机启动app下载)2025-07-09 17:18:09
  • 全屏图片