druid是干嘛的(druid是什么)

druid是干嘛的(druid是什么)svg xmlns http www w3 org 2000 svg style display none svg

大家好,我是讯享网,很高兴认识大家。



 <svg xmlns="http://www.w3.org/2000/svg" style="display: none;"> <path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"></path> </svg> 

讯享网

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服务介绍

小讯
上一篇 2025-05-10 10:41
下一篇 2025-05-17 11:39

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/187804.html