#头条创作挑战#
Druid简单介绍和优缺点
一、什么是Apache Druid
Druid是一个分布式数据处理系统,支持实时、多维OLAP分析和列式存储。支持快速的实时数据读取和处理,以及实时灵活的多维数据分析和查询。数十个Druid分布式集群可以支持每秒百万级数据写入,并为亿级数据读取提供亚秒级到秒级的响应。此外,Druid支持基于时间戳的数据预聚合摄取和聚合分析,也可以用于时序数据处理和分析场景。
Druid有相应的GUI页面,适用于点击流分析、网络性能监控分析、实时在线OLAP分析等实时数据提取和高性能查询场景。 Druid官网地址:http://druid.apache.org/
: 请注意阿里巴巴有一个开源项目也称为Druid,这是一个数据库连接池项目。这里所说的Apache Druid与阿里巴巴的Druid没有任何关系。
二、Druid优缺点
德鲁伊有以下特点,这也可以认为是德鲁伊的一个优势。
列式存储Druid 使用面向列的存储,可以加快OLAP 分析需要读取列式分析的场景。同时数据压缩效果高,占用空间少。支持快速扫描和聚合查询。
可扩展的分布式架构Druid 可以部署在数十或数百台服务器的生产集群中,每秒可以执行数百万条数据写入,可以实现从不到1 秒到数万亿条记录的性能。询问。
并行计算支持Druid 可以在集群内并行运行查询。
支持实时或批量读取数据Druid可以实时查询实时获取的数据,也支持批量读取数据。
集群自动平衡,方便运维。当您扩容或缩容Druid 集群时,只需增加或减少相应机器的数量,Druid 集群就会自动平衡各个节点,无需任何停机。
预聚合或预计算数据Druid 可以按照特定的时间粒度对相同维度的数据进行预聚合和预计算。这不仅提高了查询速度,还减少了数据存储空间。
更快的位图索引过滤Druid 允许您通过位图构建索引来压缩数据并加快查询和过滤速度。
基于时间的分区Druid 首先根据时间对数据进行分区。这可以加快查询速度。例如,基于时间的查询仅查询与时间匹配的分区。
Druid的主要好处是支持流式和批量数据导入、亚秒级高并发查询以及存储索引优化。但是,也存在一些缺点,包括:
Druid的join功能有限,适合实时写入干净的数据而不需要更新数据。所以当你从Druid查询数据时,可以直接查询这张宽表。最新版本的Druid 0.21.1支持绑定。连接右侧的表在关联之前会自动保存到内存中,从而导致性能降低。
不支持多个时间维度。所有维度均为字符串类型,仅支持数据实时更新。无法使用批处理作业完成更新。不支持精确重复数据删除
原创文章,作者:小条,如若转载,请注明出处:https://www.sudun.com/ask/82373.html