Apache Druid 中文翻译- Introduction 简介

什么是Druid ?

Apache Druid是一个实时分析数据库,旨在对大型数据集进行快速的切片和切分分析(“ OLAP ”查询)。Druid最常用作数据库,以支持对实时摄取,快速查询性能和高正常运行时间很重要的用例。因此,Druid通常用于为分析应用程序的GUI提供支持,或用作需要快速聚合的高并发API的后端。Druid最适合面向事件的数据。

Druid的常见应用领域包括:

  • 点击流分析(网络和移动分析)
  • 网络遥测分析(网络性能监控)
  • 服务器指标存储
  • 供应链分析(制造指标)
  • 应用程序性能指标
  • 数字营销/广告分析
  • 商业智能/ OLAP

Druid的核心架构结合了数据仓库,时序数据库和日志搜索系统的思想。它的的一些主要功能是:

  1. 列式存储格式。Druid使用面向列的存储,这意味着它仅需要加载特定查询所需的确切列。这极大地提高了仅命中几列的查询的速度。此外,每列都针对其特定数据类型进行了优化存储,从而支持快速扫描和聚合。
  2. 可扩展的分布式系统。Druid通常部署在数十到数百台服务器的集群中,并且可以提供每秒数百万条记录的接收速率,数万亿条记录的保留以及亚秒级到几秒的查询延迟。
  3. 大规模并行处理。Druid可以在整个集群中并行处理查询。
  4. 实时或批量摄取。Druid可以实时(摄取的数据可立即用于查询)或批量摄取数据。
  5. 自我修复,自我平衡,易于操作。作为操作员,要扩展或扩展集群,只需添加或删除服务器,集群就会在后台自动重新平衡自身,而不会造成任何停机。如果任何Druid服务器发生故障,系统将自动绕过损坏的机器,直到可以更换这些服务器为止。Druid设计为24/7全天候运行,而无需出于任何原因而导致计划内的停机,包括配置更改和软件更新。
  6. 云原生的容错架构,不会丢失数据。一旦Druid摄取了数据,就会在在深度存储(通常是云存储,HDFS或共享文件系统)中创建一个副本。即使全部的Druid服务器发生故障,也可以从深度存储中恢复您的数据。对于仅影响少数Druid服务器的有限故障,可以通过复制确保在系统恢复时仍然可以进行查询。
  7. 用于快速过滤的索引。Druid使用CONCISE或 Roaring压缩的位图索引来创建索引,以支持快速过滤和跨多列搜索。
  8. 基于时间的分区。Druid首先按时间对数据进行分区,然后可以根据其他字段进行分区。这意味着基于时间的查询将仅访问与查询时间范围匹配的分区。这将大大提高基于时间的数据的性能。
  9. 近似算法。德鲁伊包括用于近似计数区别,近似排名以及近似直方图和分位数计算的算法。这些算法提供有限的内存使用量,通常比精确计算要快得多。对于精度比速度更重要的情况,德鲁伊还提供了精确的计数区别和精确的排名。
  10. 摄取时自动汇总。Druid可选地在摄取时支持数据汇总。这种汇总会部分地预先聚合您的数据,并可以节省大量成本并提高性能。

When should I use Druid? 什么时候应该使用德鲁伊?

许多公司都将Druid用于各种不同的用例。 Powered by Apache Druid页面列出了一些公司的列表。

如果您的用例符合以下几个描述符,则Druid可能是一个不错的选择:

  • 插入率很高,但更新并不常见。
  • 您的大多数查询都是聚合查询和报告查询(“分组依据”查询)。您可能还具有搜索和扫描查询。
  • 您将查询延迟目标定为100毫秒到几秒钟。
  • 您的数据具有时间成分(Druid包括与时间特别相关的优化和设计选择)。
  • 您可能有多个表,但是每个查询仅命中一个大的分布式表。查询可能会击中多个较小的“查找”表。
  • 您具有高基数数据列(例如URL,用户ID),并且需要对其进行快速计数和排名。
  • 您想从Kafka,HDFS,平面文件或Amazon S3之类的对象存储中加载数据。

如果存在下面的情况,您可能会希望使用德鲁伊包括:

  • 您需要使用主键对现有记录进行低延迟更新。Druid支持流插入,但不支持流更新(使用后台批处理作业完成更新)。
  • 您正在构建一个脱机报告系统,其中查询延迟不是很重要。
  • 您想要进行“大”联接(将一个大事实表连接到另一个大事实表),并且可以花很长时间来完成这些查询。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值